Ruby Based Blogging Engine - ruby-on-rails

What Rack enabled blogging engines exist? I want to deploy a free blog to heroku and need more customizabilty than the free hosting of Wordpress.com or Blogerty provide.
Also in another note, has anyone tried to port Wordpress to Ruby?

In any special order:
== Rack based
toto
ruby-slippers based on toto
== Jekyll based
Jekyll itself
Octopress blogging in jekyll
spinto jekyll cms
prose jekyll cms
== Rails based
typo one of the oldest in active, with more features but more complex
enki for hackers, basic code
simplelog just main features
mephisto not developed anymore
radiant generic CMS
== Rails engines
refinerycms generic CMS
refinerycms-blog blog engine that integrates with refinerycms
blogit
ComfortableMexicanSofa generic CMS
comfy-blog blog engine that integrates with ComfortableMexicanSofa
Monologue: minimalistic blog engine with very few dependencies.
squeaky
hitchens
kublog
jabe
locomotivecms generic cms
BrowserCMS generic CMS
== Integrate jekyll with Rails
bloggy

If you're a fan of git, you might try Jekyll. It is a static site generator which allows you to do some templating. You don't need a database which makes running it on Heroku even easier.

It's been awhile since I looked into this, but I believe the two major Ruby blog applications are still Mephisto and Typo. They've both been around awhile and appear to still be maintained.
As Heroku has a read-only file system, you may need to do some tweaking to get them to work. Here's a blog post on getting Typo running on Heroku.
You may also want to take a look at Radiant, which is more of a traditional CMS system, but can be used for blogging. There's actually a tutorial on the Heroku blog about getting it up and running on their platform.
Finally, if you want something a bit more lightweight but with full CSS control you may want to take a look at Scanty. It might require you go get your hands dirty, but seems to run great on Heroku. In fact, it's written by one of the founders.

If you want a nice, hackable pure ruby & rack blog: RubySlippers
It used git to manage versioning of your posts and publishing as well. It is built to get a free blog going on heroku in record time!
~end shameless plug

I recently created a platform called Stipes.
It's based on Sinatra and it is very light in terms of required resources.
I installed it on a Raspberry PI recently, for internal, single-user, usage and it works very well. I'm still working on it and any support is welcomed.

If you are not into installing a fully fledged blogging engine, Bloggity may fit your needs, in fact you can use to add a blog to whatever app you may have.

Related

How to manage static content in a rails app

I'm running a rails app for interactive learning for kids. We also have quite a few static pages like, landing pages, team pages, case studies etc. This is also deployed in the same rails app.
I would like a easy way for my team to manage the content without depending on the tech team. I can build an admin interface to edit these pages, but I don't want to recreate a CMS. I checked out Jekyll but the markdown syntax makes some tech novices uneasy.
Someone suggested using weebly/ wordpress and host it in a subdomain. I don't want to go overboard and add an additional layer of maintenance to the app.
I've a mongoid project and would appreciate any mongoid gems.
RefineryCMS is a popular content management solution for Rails apps. You can add it to your existing Rails app, as described in the guide. RefineryCMS is targeted at the end user experience, you don't need extensive technological knowledge to use it.
There's an online demo of the CMS which you can find here. You don't have to edit the pages using Markdown, it has a WYSIWYG (What You See Is What You Get) editor as well.
If you're looking for another CMS, you can find other solutions quite easily with the Ruby Toolbox.

Blog backend for non developers Rails

I need a very simple, backend visual representation of creating a blog post. Since the blog writers are not developers, I need something that can make blog posting easy. I know RedCloth is available but I'm looking for something more simple, but not a CMS since it infects my app and mutates it like no other.
I would recommend the ActiveAdmin gem.
Here is a free (very helpful) RailsCast that goes through the configuration and features of the gem.
ActiveAdmin should have no problem suiting your needs.
Check out the Comfy Blog project.
https://github.com/comfy/comfy-blog
ComfyBlog is an simple blog management engine for Rails 3.1 apps. It also integrates with ComfortableMexicanSofa CMS Engine. The nice thing about this project is that it doesn't interfere with your existing controllers, and "it's just Rails".

Ruby on Rails 3.1 Blog Engines

I see a lot of people asking about Blog Engines, but most of the questions & answers are rather old. Or if they aren't old most of the projects are old. I'm wondering if anyone knows of any Blog Engines that currently support Rails 3.1 or are at least being actively developed to support Rails 3.1.
I would also be interested in seeing any sample applications or blog posts written for Rails 3.1 Blogs. I am going to be adding a blog to one of my websites, and would prefer to simply use a Rails Engine or sample code if there are any good ones out there. I hate reinventing the wheel. Looking for something simple, and not too opinionated so I can modify easily to suit my own needs.
you might want to check out Refinery http://refinerycms.com/engines
doesn't look like they are 3.1 yet, but probably soon
https://github.com/resolve/refinerycms-blog
Your best bet would probably be to use Typo.
Typo is currently using rails 3.0.9. Rails 3.1.0 is still a release candidate so I don't know of any blogging apps using it right now. If you must use rails 3.1.0 then you may have luck grabbing the gem for 3.1.0.rc4 (the newest version) and using typo anyway. Chances are everything will still work.
Hope this helps.
Perhaps Enki is a good fit, currently at Rails 3.0 but there is a github branch with Rails 3.1 support.
http://www.enkiblog.com/
Interestingly BrowserCMS was recently made to be a mountable engine: https://github.com/browsermedia/browsercms/commit/6098699fed2e3dbd65815ac3a5ce0dd6acc103d2
Seem to have a bit of time and experience behind them. More akin to Concrete5 with an inline front end / in context editing facility for users, which can be a real plus.
Im looking into this now and Im getting to conclusion that the best way to do this would be mounting a rack-app(like sinatra) into your rails app, there's various basic sinatra blogs in github to start or copy, not to mention this is fully customizable and I guess very light-weight.. engines will likely have dependencies and may also break when updating gems, a rack app won`t
I wasn't able to find any satisfying solution with engines
other stuff I found:
mounting a rails app inside a rails app: http://blog.dynamic50.com/2010/02/22/rails-3-0-mount-multiple-apps-as-engines/ feels a bit weird(heavy?), but you could mount a fully featured app like enki...
http://planscope.io/blog/2012/03/08/mounting-a-blog-within-a-rails-3-application/ this blogpost talks about using Toto, it seems pretty nice, easy and simple... but the project is not being maintained and it doesn't seem to be able to support a lot of features...
I dunno about using git to post, it makes it really simple but I dunno if I'd like having non-code stuff in my commits
Monologue https://github.com/jipiboily/monologue . From their web:
It is a barebone blog engine for Rails. It is built as a Rails engine and with a focus on keeping very few dependencies to ease it's use in your project. You can also use monologue-markdown which will replace the default editor with a simple Markdown editor.
Seems like pretty active development also.

Rails Ruby Gems vs Pure Development When Generating A Rich Blog

Some ruby gems like jekyll, toto and webby offer out of the box blog-type integration into your ruby app. Another way of developing a rich web blog-type application is to build and model the application yourself using pure ruby and rails practices. (e.g creating an Article and User model). The first offers out of the box features the 2nd option offers more customization and control.
In people's experience on Stack Overflow, which would be the best route and what would people consider when making the decision to use a gem out of the box versus going alone?
All of the gems you mentioned take static, markdown/textile/etc files and turn them into HTML websites. They take different approaches to it, with jekyll spitting out the finished website for hosting, toto doing the converting and routing on request, and webby doing the same as jekyll mostly.
If you're using Rails, it's important to note that none of these will integrate into your application well. They're built to more-or-less operate on their own.
Generally speaking, if a gem has the functionality you need, use it. They are not equivalent to plugins you find for Wordpress and Drupal where they are typically low-quality, buggy, poorly documented, etc. More often than not, gems simply add a couple modules that you can integrate into your application how you like.
On the other hand, a basic blog is pretty quick and simple in Rails, especially considering you've got a handy walkthrough guide straight from the Rails documentation on how to do it.
If you're new to Rails and want tight integration with your app, it's probably best to bake your own blog features.
This will take some time to do, but its worth it to learn how things really work.
If you're more seasoned, just look at the gem's API and documentation and decide if it does what you want it to do and if you're comfortable with how to integrate it. If so, it'll save you time.
One other consideration: who will be using the blog? Is it for internal use, and programmers will be the ones updating it? If that's the case, then you can make it very easy by not worrying about a lot of aesthetic polish in the back-end. Conversely, if you're making an app that includes a blogging component for the general public you might want it to feel more polished. In this case a gem might save you a lot of time.
It depends on your application.

When Rails require mod_rails, what about Django, TurboGears, Symfony, CakePHP? Can they deploy using mod_python and mod_php?

When Rails applications seem hard to deploy (or used to be), what about Django, TurboGears, Symfony, CakePHP -- can they be simply deployed using mod_python or mod_php? Actually, won't it need something like a mod_django so that the code can run in a "Django" environment? (Just like Rails' script/console or Rails 3's rails console)
Django applications can certainly be deployed with minimum fuss using mod_python.
That said, experienced people will tell you to use the more lightweight and efficient mod_wsgi instead of mod_python. This too can be done with minimum effort. I have done it on multiple occasions and app deployment was always the least of my worries.
Update
#Rebus has it right:
mod_python is not being actively developed anymore, use mod_wsgi
There are a number of ways to deploy a Django site. See the Django Docs or the Django book. As mentioned mod_python is dead and mod_wsgi is the recommended method. Another method which has been making more noise lately is gunicorn. You can see Eric Holscher's blog post about how easy the deployment can be with it.
For CakePHP if you have a standard PHP installation, you probably, at most, only need to load mod_rewrite. This module is often included in the build, though.

Resources