From Medium to Ghost 2.0
Ghost has advanced so much this year. At this point, I highly recommend it to everybody writing a technical blog. It is time to stop fiddling with Medium and jump over.
Ghost has advanced so much this year. At this point, I highly recommend it to everybody writing a technical blog. It is time to stop fiddling with Medium and jump over.
Advantages over Medium
At least in these areas that matters to me
- HTML tag – Embed any JavaScript anywhere on the page. Very useful to show off any interactive coding or D3 snippet.
- Beautiful Code Card – No more pasting code to Gist, then embed
- Integrates with Unsplash – Instant Beautiful Featured Image
- No ads or nagging to log in or download native apps
t = "your new blog!"
print( "Welcome to {}".format(t) )
Advantages over Wordpress
- Much faster than Wordpress for a simple blog
- Excellent Medium-like interface while supporting much more customizations.
- Very easy to install, and the default setup is production-ready with TLS
- Integrates with Facebook, Twitter out of the box
Install Ghost
Ghost bundled a very well though-out CLI for a smooth installation. The easiest route, however, is to use the 1-click Digital Ocean installer.
https://marketplace.digitalocean.com/apps/ghost
First time starting up the droplet, it will kick off the CLI to finalize installation. Just follow the prompt, which ask only two questions. Then everything is ready, including Nginx setup and SSL certificates via LetsEncrypt. Nice!
The whole secure-by-default process literally takes 10 minutes to setup. That is excellent.
If you prefer GCP, there's a click to deploy here.
Migrate Medium Posts to Ghost
Use this tool here. Follow the steps in README. All boils down to download the existing blog as a zip file from Medium, run the python script, upload the new zip file to Ghost.
https://github.com/ageitgey/medium_to_ghost
Customizations
Miscellaneous things we could do right after set up
- Try some code cards with syntax highlight
- Setup Google Analytics
- Look at other Integrations
- Setup CDN with CloudFlare – Make sure to use Strict, not Flex. The blog is already TLS enabled. Using Flex will cause a redirect loop from http->https
Oddities
- Imported featured image in Medium show up twice. Once in Featured Image and also as the first image of a post.
- To Activate the code card. Type
```<language>
then press <enter>. Took me a while to realize thatenter
is important. - Despite an excellent code support, it does not come with syntax highlight. Although provide a great integration with prism.js in particular.