Monologue is a basic mountable blogging engine in Rails built to be easily mounted in an already existing Rails app, but it can also be used alone.
-
Rails mountable engine (fully named spaced and mountable in an already existing app)
-
tested
-
back to basics: few features
-
it has post revisions (no UI to choose published revision yet, but it keeps your modification history)
-
tags (or categories)
-
RSS
-
support for Google Analytics and Gaug.es tags
-
few external dependencies (no Devise or Sorcery, etc…) so we don't face problem integrating with existing Rails app.(Rails mountable engines: dependency nightmare?)
-
comments are handled by disqus
-
enforcing Rails cache for better performance (only support file store for now). Read this to enable it.
-
more in the CHANGELOG
-
bonus: there is a
[monologue-markdown](https://github.com/jipiboily/monologue-markdown)
extension
- UI for posts revisions and to manage user
- see roadmap!
gem "monologue"
And run bundle install
to fetch the gem and update your 'Gemfile.lock'.
Add this to your route file (config/route.rb
)
# This line mounts Monologue's routes at the root of your application.
# This means, any requests to URLs such as /my-post, will go to Monologue::PostsController.
# If you would like to change where this engine is mounted, simply change the :at option to something different.
#
# We ask that you don't use the :as option here, as Monologue relies on it being the default of "monologue"
mount Monologue::Engine, at: '/' # or whatever path, be it "/blog" or "/monologue"
Run these commands:
- $
bundle exec rake monologue:install:migrations
- $
bundle exec rake db:create
(only if this is a new project) - $
bundle exec rake db:migrate
Open your development console with rails c
, then:
Monologue::User.create(name: "monologue", email:"monologue@example.com", password:"my-password", password_confirmation: "my-password")
This is all done in an initializer file, say config/initializers/monologue.rb
. More on this in the Wiki - Configuration.
Start your server and head on http://localhost:3000/monologue to log in the admin section.
Additionnal step: turn caching off in config/environments/production.rb
:
config.action_controller.perform_caching = false
See the Wiki - Customizations.
- Rails 3.1 +
- Database: MySQL & Postgres are supported but other databases might work too.
Fork it, then pull request. Please add tests for your feature or bug fix.
You will need to install this before running the test suite:
Zurb for the "social foundicons".