THIS README IS FOR THE MASTER BRANCH AND REFLECTS THE WORK CURRENTLY EXISTING ON THE MASTER BRANCH. IF YOU ARE WISHING TO USE A NON-MASTER BRANCH OF MONOLOGUE, PLEASE CONSULT THAT BRANCH'S README AND NOT THIS ONE.
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.
ButterCMS is an API-based CMS and blogging platform built for developers:
This README is for the latest version of Monologue (0-5-stable being the latest stable version).
To learn how to upgrade, see UPGRADE.md file. If you want to learn what changed since the last versions, see CHANGELOG.md.
- Mailing list for questions
- Issues and bugs
- Wiki
- IRC channel (on Freenode): #monologue.
-
Rails mountable engine (fully namespaced and mountable in an already existing app)
-
tested
-
back to basics: few features
-
tags (or categories)
-
RSS
-
multiple users
-
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
-
more in the CHANGELOG
-
Available extensions
- see roadmap!
gem 'monologue'
And run bundle install
to fetch the gem and update your 'Gemfile.lock'.
Add this to your route file (config/routes.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"
For example, if you decide to mount it at /blog
, the admin section will be available at /blog/monologue
.
Here we decide to use monologue as default route mounting it at /
, it means that the admin section will directly
be available at /monologue
.
Run these commands:
- $
bin/rake monologue:install:migrations
- $
bin/rake db:create
(only if this is a new project) - $
bin/rake db:migrate
Open your development console with bin/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, typically config/initializers/monologue.rb
. More on this in the Wiki - Configuration.
Start your server and go to http://localhost:3000/monologue to log in the admin section.
Monologue is using its own tables. If you want to use your own tables with monologue (for example the User table) this might help you to monkey patch.
See the Wiki - Customizations.
copy views like devise rails g monologue:views
or use scope: rails g monologue:views blog
- Rails 4.2.1 +
- Database: MySQL & Postgres are supported but other databases might work too.
- Jean-Philippe Boily, @jipiboily
- Michael Sevestre, @msevestre
In the spirit of free software, everyone is encouraged to help improve this project.
Here are some ways you can contribute:
- by using prerelease versions
- by reporting bugs
- by suggesting new features
- by writing or editing documentation
- by writing specifications
- by writing code (no patch is too small: fix typos, add comments, clean up inconsistent whitespace)
- by refactoring code
- by resolving issues
- by reviewing patches
Starting point:
- Fork the repo
- Clone your repo
- Run
bundle install
- Run
bundle exec rake db:migrate
- Run
bundle exec rake db:setup
- Make your changes
- Ensure specs pass by running
bundle exec rspec spec
- Submit your pull request
You will need to install this before running the test suite:
Zurb for the "social foundicons".