/monologue

Monologue is a basic blogging engine. It is a Rails mountable engine you can mount in your already existing Rails app, or a in a new one! Enjoy.

Primary LanguageRubyMIT LicenseMIT

Monologue

Gem Version Build Status Code Climate Coverage Status

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.

THIS GEM IS FORKED FROM jipiboily/monologue AND MODIFIED TO SUPPORT MONGODB

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.

Version

This README is for a future Monologue version, that will be 0.5.0 and be compatible with Rails 4.2.x and mongoid. See other branches for other versions (0-4-stable being the latest stable version).

Upgrade and changes

To learn how to upgrade, see UPGRADE.md file. If you want to learn what changed since the last versions, see CHANGELOG.md.

Questions? Problems? Documentation?

Some features

missing features

Installation

1. Add the gem to your Gemfile.

gem 'monologue'

And run bundle install to fetch the gem and update your 'Gemfile.lock'.

2. Route to Monologue

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.

3. Install Paperclip or carrierwave

a. Mongoid + Paperclip

In your Gemfile:

  gem 'mongoid-paperclip', :require => 'mongoid_paperclip'

Run ckeditor install generator for download the last ckeditor version:

  rails generate ckeditor:install --orm=mongoid --backend=paperclip
b. Mongoid + carrierwave

In your Gemfile:

  gem 'carrierwave-mongoid', :require => 'carrierwave/mongoid'

Run ckeditor install generator for download the last ckeditor version:

  rails generate ckeditor:install --orm=mongoid --backend=carrierwave

4. Create a user

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")

5. Configure Monologue.

This is all done in an initializer file, typically config/initializers/monologue.rb. More on this in the Wiki - Configuration.

6. Ready

Start your server and go to http://localhost:3000/monologue to log in the admin section.

Note to users

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.

Customization

See the Wiki - Customizations.

Copy views

copy views like devise rails g monologue:views or use scope: rails g monologue:views blog

Requirements

  • Rails 4.2.1 +
  • Database: Mongodb is supported but other databases might work too (you can checkout the original gem here ).

Authors

Contributing

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
  • Make your changes
  • Ensure specs pass by running bin/rspec spec
  • Submit your pull request

You will need to install this before running the test suite:

Thanks to

Zurb for the "social foundicons".