Skip to content

Latest commit

 

History

History
102 lines (60 loc) · 2.48 KB

README.rdoc

File metadata and controls

102 lines (60 loc) · 2.48 KB

Kublog

Kublog is a complete yet simple way to have a Product Blog that integrates with your apps user base. It includes social sharing, atom feeds and moderated comments.

Built for Rails 3.1, Kublog is a complete stack, fully configurable solution.

Currently in alpha and under continuous development, hackers welcome.

Features

  • Publish posts with the most basic and simple wysiwyg

  • Attach multiple images to your content

  • Share your posts on your Product’s Twitter Page and Facebook Fan Page

  • E-mail personalized versions of your posts to your users

  • Optional background processing with Delayed Job

  • Moderated comments from apps users, apps admins, and visitors

  • Atom feed for main blog and individual post categories

What you need

  • Ruby 1.9.x

  • Rails 3.1

  • Bundler

Install

Require in your Gemfile

gem 'kublog', '0.0.1'

Migrate the Kublog posts into your database

rake kublog:install:migrations

Mount Kublog on your routes file

mount Kublog::Engine => "/blog(.:format)"

How to Use

On your user model:

include Kublog::Author
include Kublog::Notifiable

User Integration

Kublog User Integration depends on two functioning methods living on Kublog::ApplicationController

  • current_user

  • is_admin?

Basic User Management

If you are currently storing your users on session and have the method admin? for your user class, things should just work.

Devise

Replace this line

include UserIntegration::Common

With this line

include UserIntegration::Devise

Uber custom user integration

Override current_user, is_admin? methods for Kublog::ApplicationController

Override admin? for your Kublog::Author class

TODO: Better docs

Custom Integration, Social Networks and Image Uploading

Take a look at this example configuration:

Kublog.setup do |config|

  config.blog_name = 'Rutanet'
  config.default_url_options = {:host => 'www.rutanet.com'}
  config.notification_processing = :immediate # or :delayed_job

  config.user_kinds = %w(shipper carrier logistics)

  config.image_storage = :file # or :s3

  config.twitter do |twitter|
    twitter.consumer_key = 'xxx'
    twitter.consumer_secret = 'xxx'
    twitter.oauth_token = 'xxx'
    twitter.oauth_token_secret = 'xxx'
  end

  config.facebook_page_token = 'xxx'

end

TODO: More docs

Will include much more documentation as development continues, please be patient.