It'll 'keep things understandable and maintainable', they said.
Well there's no such thing as a free lunch, right? To build this blog, I used a gem called Blogo. I had researched several solutions, and settled on blogo due to:
- The ease of initial setup
- Useful tagging system
- Relatively few external dependencies
I don't want to come off as though I'm disparaging Blogo: it's a great tool for getting a blog up and running quickly! The installation took minutes, and aside from a small (and documented) issue with using blogo's WYSIWYG editor, ckeditor, there was little to no troubleshooting. The blog itself is beautiful, and the functionality is great! It's been a blast using it so far.
The issue that I ran into is that Blogo was in it's front end dependencies. Blogo uses a framework by Yahoo called pure. Since I used ZURB's Foundation, I ran into issues with the page loading different depending on whether it was loading inside the Blogo engine, or my own,
Since Blogo is an engine with its own layout, that layout loaded instead of the application layout that the rest of my application used. To make matters worse, the layout required its own CSS, separate from the rest of the application. Coupled with Turbolinks, the Rails navigation engine, the browser would actually load Blogo's stylesheets and force them on the rest of the application if a Blogo view was loaded before a view that used the application layout.
Obviously, this wasn't ideal for a web application that needed a blog to live inside its already defined design.
In the end, I'm having to rewrite Blogo's existing views and stylesheets to conform to the framework and styleguide I had been using already (SUIT CSS and Foundation). It's a shame to spend so much time rewriting the front end of Blogo, but it's a small price to pay for the backend functionality that Blogo provided me. Thanks Blogo!