I am writing this post about Octopress, and this is my second migration from Wordpress to Octopress. When I moved for the first time it was actually a transition to Jekyll and not Octopress, it was more of a experimentation, I installed it, generated the pages, pushed it and checked, it was all cool but it all seemed a little rough and I didn’t give it enough time to soak into and switched back immediately to WP. But when I came across Octopress, I realized it was a huge improvement on top of jekyll and read few reviews too and it turned out it suits me best for the needs.
The site you are curretly viewing doesn’t need a server to generate html or maintain database. It consist entirely of pre-baked pages, mean what-you-get is what-is-stored, you can fire it up directly in your browser from hard disk, you carry the entire working blog along with you and deploy it with zero effort anywhere, anytime that’s the coolest things about Octopress, it runs your blog on flat files as compared to Wordpess (and million other blogging tools/CMS) which stores you posts/contents in databases.
Now that doesn’t mean Wordpress is not cool, I have used it for quite a long time, but just that I think it’s intended toward a different set of users, and I feel maitaining such a huge CMS with a databse and it’s plugins and keeping them up-to-date is a little too much extra homework for a(my) blog, it just feels unnatural for a simple blog. While with Octopress the fact that I work with my blog like an application, I can work on it, commit it, make a draft and when it’s in presentable form then deploy it with one command, and can tar the entire(working) blog and carry it in my thumb drive and launch it off anywhere and it needs minimum requirement for hosting (just a bare minimum computer running all the time), give a real comfy feeling. Since it’s static there is no native support for comments but disqus rocks!
and while talking of being comfy, there is extra bonus which comes with Octopress, since html is pre-generated and no database is required you can host it for free (free as in freedom and also free as in free beer ;) ) on Github Pages or on Heroku, no bandwidth limit or anything, hurray! and of course you can deploy it if you have your own web hosting,
You can use exitwp to extract the posts from your Wordpess blog which would convert your XML to markdown format, which can be used with Octopress directly. You can extract everything apart from comments, if you used disqus or livefyre or some similar service then transferring comments shouldn’t be a problem at all, else you might have to just say good-bye to them.
Setting it up
Setting up Octopress is a piece of cake, if you are developer of any sort then it would take not more than 20 mins to get it up and running on your Github. Just run a little rake script and get the job done.
I’ll give a short pathway to get it up and running:
Fork the Octopress from here
git clone git://github.com/imathis/octopress.git octopress
Install ruby(if not already installed) You can use Rbenv or RVM to install ruby, I personally prefer the RVM way
curl -L https://get.rvm.io | bash -s stable --ruby rvm install 1.9.3 rvm use 1.9.3 rvm rubygems latest
Install dependencies for Octopress
// cd into octopress directory gem install bundler bundle install
This would complete the setup process, now you can add new posts with
rake new_post['Post title']
this would generate a markdown file in /source/_posts/Post-title.markdown you can add content to it, and install default theme and generate static html by running
rake install rake generate
now if you want to push your blog to Github make a repository USERNAME.github.com in your Github account and run
give the details and run
to push it to your github repository, and open USERNAME.github.com and voila!
Not only this, even if you want to use your custom domain for your blog, it’s just two step away.
- Make a file CNAME in site root, with your domain name as content i.e. mydomain.com
- Make a A record in your domain settings pointing to Github which is
22.214.171.124(at the time of writing, check here for latest details).
and one thing which you would start feeling and enjoying just as you start using Octopress is you would have a complete control over your blog, you decide it entirely, how it looks, what it does and which code goes where. It’s based on a very powerful blog engine, Jekyll.
Here is the final landing: <ul class="reasons">
Blogging is just a breeze now. I love you Octopress!