GithubHelp home page GithubHelp logo

cba's Introduction

CBA - Community Base Application Template

Issues

Known issues maintained in Github-Issues

Quickstart

I highly recommend to use RVM!

Requirements for CBA:

  • A running MongoDB Server
  • A rvm gemset for Rails Rails 3.1.0/3.1.1

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 [email protected]

   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'](http://github.com/tobi/delayed_job) 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](http://github.com/iboard/CBA/tree/master/app/workers for example))
2 Enqueue new Jobs like shown in `app/model/user.rb`, method `async_notify_on_creation` ([Source](http://gist.github.com/841907))

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](http://cba.iboard.cc/postings/4dbebb9adaf9853b3000001a)
  * Visit [Demo Page](http://cba.iboard.cc/p/pagecomponent_and_pagetemplat$)


License
------

See: [Freedom](http://cba.iboard.cc/p/freedom)

Links
----

See: [Link-page](http://cba.iboard.cc/p/links)

cba's People

Contributors

iboard avatar karlhochfilzer avatar l4u avatar runsnbunsn avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.