Keeping Up with Ghost 0.5

Wat je gaat creëren

Op 11 augustus bracht de open source blogging-upstart Ghost een belangrijke incrementele update uit, Ghost 0.5 MSR1 (Ghost begon als een Kickstarter-project in 2013 door oprichters John O'Nolan en Hannah Wolfe en is sindsdien snel gegroeid). Het is beschikbaar als een opensource-download of u als een managed blogging-service op Ghost.org. In tegenstelling tot WordPress, geschreven in PHP, is Ghost geschreven in Node.js.

Ik ben een oude WordPress-gebruiker en het platform is weliswaar traag en omslachtig. WordPress heeft recent 160 miljoen dollar aan durfkapitaal opgehaald, dus ik verwacht dat het platform met grotere sprongen zal groeien; Ik wilde Ghost echter graag proberen als een nieuw, lichtgewicht alternatief. 

Ik heb ook de laatste tijd veel geschreven op Medium.com, wat sommigen een platisher noemen. Terwijl Medium een ​​mooi responsief ontwerp en een aantal geweldige schrijffuncties biedt, biedt het niet zoveel controle en draagbaarheid als ik zou willen. Ghost streeft ernaar de eenvoudige, geavanceerde schrijfomgeving van Medium aan te bieden in een door de gebruiker gehost open source-pakket. Er is al een op medium geïnspireerd thema voor Ghost dat ik in deze tutorial zal demonstreren (en er zijn er zeker veel voor WordPress). 

Ghost levert in veel opzichten - maar zoals heerlijke koekjes die in de oven worden gebakken, heeft het iets meer tijd nodig. Laten we eerst eens kijken naar wat er nieuw is in Ghost 0.5 MSR1.

Wat is er nieuw in Ghost 0.5 MSR1

Er zijn drie belangrijke wijzigingen in de nieuwste release:

Ten eerste staat Ghost nu meerdere gebruikers toe, zodat je meer dan één auteur op je blog kunt hebben. Vanzelfsprekend is dit een kritische inhaalfunctie voor andere blog-apps zoals WordPress. Het opent ook Ghost voor een breder scala aan mogelijke toepassingen.

Ten tweede en het meest interessante is dat Ghost nu een openbare JSON-API biedt: "Elke functie in Ghost is beschikbaar voor externe ontwikkelaars, niet alleen voor een subset, alles." Onlangs, blogde evangelist Dave Winer schreef over het belang van het schrijven van open platforms, de Ghost API is een belangrijke stap in het creëren van meer open, draagbare platforms voor schrijvers.

Ten derde werd de administratieve interface van Ghost volledig herschreven in Ember.js: "Ghost is nu een volledig functionele JavaScript-toepassing aan de kant van de klant. Alles wat u in de browser doet, gebeurt in realtime. We kunnen nu beginnen met het bouwen van een gebruiker -interfacecomponenten die eruitzien en aanvoelen als wat u zou verwachten van een desktop (of mobiel) besturingssysteem. " Je kunt meer te weten komen over Ember in Tuts 'Resources om je op snelheid te brengen in Ember.js.

En er is een lange lijst met incrementele functieverbeteringen:

  • Het Ghost-standaardthema Casper 1.0 heeft een "enorme update gekregen met prachtige nieuwe gebruikersprofielpagina's, full-bleed homepage coverafbeeldingen, geherstructureerde navigatie, verbeterde mobiele stijlen en een enorme verbetering van typografie". Er zijn ook nieuwe verbeteringen aan de theming API voor ontwikkelaars.
  • Het installatiescherm is verbeterd
  • OAuth-ondersteuning is toegevoegd voor veilige verificatie
  • Systeem-e-mails worden nu geleverd met een nieuw ontworpen HTML-e-mailsjabloon
  • Privacy-documentatie wordt nu gedetailleerd verstrekt voor elke functie in de software.

Ook is het ontwikkelingsteam van Ghost overgestapt naar een releasecyclus van 2-4 weken die een snellere incrementele ontwikkeling van het platform mogelijk moet maken.

Aan de slag met Ghost

Als je Ghost snel wilt uitproberen, kun je je aanmelden voor een gratis proefaccount op Ghost.org. Als je Ghost zelf wilt installeren, heeft Digital Ocean een vooraf gemaakte afbeelding waarmee je binnen enkele minuten aan de slag kunt.

Notitie: Ghost werkt standaard als op nginx. Als u gewend bent aan de flexibiliteit en het gemak van het beheer van Apache-sites, is er een nieuwe complexiteit om Ghost in uw bestaande omgevingen te integreren. Ik heb ervoor gekozen om Ghost uit te voeren op een nieuwe cloud-serverinstantie.

Ga naar de pagina van uw websitebeheer om Ghost te configureren. wijs uw browser naar http://yourdomain.com/ghost:

Meteen zag ik de snelheid van de nieuwe beheerdersinterface. Het nieuwe op Ember gebaseerde dashboard maakt van WordPress een erg langzame hond. Dit is wat je ziet als je het Ghost Dashboard betreedt:

Als u Ghost volledig wilt configureren, moet u zich aanmelden bij uw droplet met het rootwachtwoord dat door Digital Ocean naar u is verzonden (ervan uitgaande dat u zichzelf host).

ssh [email protected]

Bewerk de Config.js bestand en pas de URL-instelling aan uw aangepaste domeinnaam aan:

nano /var/www/ghost/config.js

Start ghost opnieuw op als een Ubuntu-service:

service spook opnieuw opstarten

Voor het configureren van uw e-maildiensten heeft Ghost hier een handige gids. Ik gebruik de SMTP-services van Mailgun. Er is zelfs een Configratiehelper voor Mailgun Ghost:

Ik heb mijn e-mailservice handmatig geconfigureerd:

mail: transport: 'SMTP', opties: service: 'Mailgun', auth: user: '[email protected]', pass: '25ip4bzyjwo1'

Nogmaals, je moet Ghost opnieuw opstarten om de wijzigingen te activeren. Als je typfouten maakt (zoals ik deed), zul je merken dat Ghost opnieuw wordt opgestart, maar dat je blog een onvriendelijke nginx-fout laat zien.

Hier is een voorbeeld van de nieuwe HTML-e-mailsjabloon in 0.5 MSR1:

De instellingen van de Geest zijn vrij eenvoudig en duidelijk:

Een aangepast thema installeren

Voor deze tutorial installeer ik het Ghostium-thema, een medium-achtig thema voor Ghost, door Oswaldo Acauan. Om het te installeren, login via SSH en volg deze stappen (installatie-instructies zijn ook hier beschikbaar):

apt-get install git cd / var / www / ghost / content / themes git clone https://github.com/oswaldoacauan/ghostium/ "ghostium"

Om Ghostium te configureren, moeten we het stuurbibliotheekconfiguratiebestand bewerken:

cd / var / www / ghost / content / themes / ghostium / partials / custom nano config.hbs

Ik heb instellingen voor Google Analytics en Disqus toegevoegd. Nogmaals, in vergelijking met WordPress-thema's vindt themaconfiguratie plaats in de console, niet in de beheerdersinterface:

En u moet de navigatiebalk aanpassen navigation.hbs en metatags in meta.hbs.

Ga vervolgens naar de instellingenpagina Ghost-dashboard en wijzig uw thema over:

Telkens wanneer u deze themaconfiguratiebestanden wijzigt, moet u de Ghost-service opnieuw starten om ze te zien.

De uiteindelijke resultaten zijn echter behoorlijk opvallend. Dit is mijn startpagina met het Ghostium-thema. Het is schoon, responsief en elegant, precies zoals ik had gehoopt.

Vroege vertoningen

Er is veel te waarderen over Ghost 0.5 MSR1. Het nieuwe Ember-toedieningssysteem reageert verfrissend en snel. Ik wou dat mijn WordPress Dashboard zoiets als dit was. 

Met de nieuwste release is Ghost een platform dat bijna klaar is voor grote aanpassingen en uitbreidingen, maar het is nog niet klaar. De API is een grote stap vooruit, maar de documentatie is nog niet gepubliceerd. Evenzo is het plugin-framework (Ghost Apps genaamd) nog in ontwikkeling. Op dit moment is het bouwen van thema's alles wat u kunt doen, tenzij u de codebase rechtstreeks wilt hacken. Dit is waarschijnlijk het meest geschikt voor ontwikkelaars die een bijdrage willen leveren aan de open-sourceinspanning van Ghost.

Je vindt de Ghost Developer Documentation hier en hun ontwikkelaarsblog.

Het potentieel voor Ghost dat vooruitgaat, ziet er goed uit. Zou ik vandaag overstappen? Misschien voor een klein project zoals ik hierboven heb getoond - maar niet voor een serieuze site, nog niet. Misschien volgend jaar. Ghost is absoluut een platform dat het bekijken waard is.

What's Next voor Ghost?

Lees hier meer over de ontwikkelingsroute van Ghost. Het maakt gebruik van een openbaar Trello-bord om problemen met het ontwikkelteam te beheren. Nu het team is overgegaan op een vrijgavecyclus van 2-4 weken, komen er snel veranderingen. Een recente blik op aankomende functies omvat het genereren van de sitemap, ondersteuning voor Open Graph-tags op Facebook, verbeterde RSS-ondersteuning, automatisch opgeslagen concepten en aangepaste permalinks. 

Terwijl Ghost snel volwassen wordt, bevindt het zich ook nog steeds in de inhaalmodus; dit zijn allemaal functies die WordPress vandaag al of niet via plug-ins heeft.

Ghost heeft een enorm potentieel en het is goed om goed ontworpen alternatieven voor WordPress te hebben. Ik hoop dat je Ghost het kunt proberen. 

Aarzel niet om correcties, vragen of opmerkingen hieronder te plaatsen. Ik zou vooral geïnteresseerd zijn in alternatieve benaderingen. Je kunt me ook bereiken via Twitter @reifman of mij rechtstreeks een e-mail sturen.

Gerelateerde Links

Hier zijn een aantal verwante Ghost-zelfstudies waarin je mogelijk geïnteresseerd bent, allemaal beschikbaar op Tuts +:

  • Ghost - Een nieuw blogplatform
  • Ghost begrijpen: fasen van ontwerp
  • Een Ghost-thema bouwen vanuit Scratch