Skip to content
Community Base Application Template
Ruby JavaScript CoffeeScript
Failed to load latest commit information.
app
config Removed secret from repository Jun 28, 2013
db Fix template.css Jan 28, 2012
features Upgrade to Rails 3.2.2 Authentication with omniauth >=1.0.2 Jun 18, 2012
lib embed_youtube_playlist and pages_controller - index Jul 12, 2012
public
script Cucumber works but tests has to be rewritten for CBA Jan 12, 2011
spec
test Upgrade to Rails 3.2.2 Authentication with omniauth >=1.0.2 Jun 18, 2012
vendor Fix image Dec 5, 2011
yard Upgrade to Rails 3.2.2 Authentication with omniauth >=1.0.2 Jun 18, 2012
.autotest Removed/Remarked google-search Apr 23, 2011
.gitignore Removed secret from repository Jun 28, 2013
Gemfile Removed secret from repository Jun 28, 2013
README.md
Rakefile Initial commit w/o tests Jan 11, 2011
TODO.md Prepared and green for merging into WWEDU projects Aug 11, 2011
config.ru Updated to Rails 3.0.9 Jun 21, 2011
cucumber.yml Cucumber format for textmate-bundle Aug 5, 2011
install.rb Fix install.rb and update README.md Aug 26, 2011

README.md

CBA - Community Base Application Template

Juni 28, 2013 - Extracted secret-token from config/initializers/application.rb to the file config/inititalizers/_secret.token which is not included in the repository.

If you use this project after June 28th, 2013 please create the token-file with your own secret.

Issues

Known issues maintained in Github-Issues

Quickstart

I highly recommend you use RVM!

Requirements for CBA:

  • A running MongoDB Server
  • A rvm gemset for Ruby 1.9.2-p290 with Rails 3.2.2

This README is a bit outdated

This README needs to be reviewed. If something will not work as documented here, don't hesitate to contact me at @nickendell or andreas@altendorfer.at

   curl -o install_cba.rb \
   https://raw.github.com/iboard/CBA/master/install.rb
   ruby install_cba.rb

This will install a fully functional web-application, with user-authentication (incl. omniAuth) on a document oriented, non-SQL, MongoDB/MongoID database. Just ready to be extended by your 'real' application code. As a benefit, CBA will offer two MVCs Page and Blog.

Note: Project's README should be identical to README.textile on Github -- I try hard to keep both versions in synchronized state, but check out the Github-version too.

CBA is forked from Rails3-Mongoid-Devise by fortuity, extended by Andi Altendorfer with

  • OmniAuth
  • Paperclip
  • CanCan
  • jQuery

CBA's own implementations

  • Models/MVC
    • User
    • Blog
    • Posting
    • Page
  • Features:
    • Comments and Attachments for all models
    • i18n enabled (en/de)
    • installation.rb (See: Posting)
    • Configuration in application.yml

Installation

  • See: Posting 'installation.rb'
  • CBA is in heavy development age, so please read CBA Blog from bottom to top. There are some latest news, not mentioned in this README.

Delayed Jobs

There is a rake-task to start the background jobs

  rake delayed_jobs:work

Unfortunatley DelayedJobs by 'tobi' doesn't work with MongoId. So I did this my own way. To define new background-workers follow this steps:

1 Define a worker in app/workers (See new_sign_up_notifier.rb) 2 Enqueue new Jobs like shown in app/model/user.rb, method async_notify_on_creation (Source)

Resource 'Page'

Since nearly any website needs some kind of 'semi-static pages' and we need some kind of object to test the application, there is a resource Page with the following features

  • Consists of a title and a body
  • The body is rendered with RedCloth
  • The MongoId of /page/MONGO_ID in the browser-address will be replaced by /p/title_of_the_page with JS.

Testing with Spork

To run autotests you have to start the spork-server and then run autotest command

  1. AUTOFEATURE=true bundle exec spark
  2. AUTOFEATURE=true bundle exec autotest

To run your unit-tests using spork do

  1. bundle exec spork TestUnit --port 8988
  2. testdrb -I test test/unit/*rb

Start all at once with thor-task

You can use thor application:run_autotests to start the spork-server and autotest. The shortest way to jump into continuos testing

Layout and Templates

  • Edit application.css or 'your_name_given_at_install'.css
  • Edit views/layout/application.html or views/layout/'your_name_given_at_install'.html.erb
  • Read Posting
  • Visit Demo Page

License

See: Freedom

Links

See: Link-page

Something went wrong with that request. Please try again.