Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Small Communities is an application built on Ruby on Rails to drive websites for small groups. The central concepts of the app are Members and Events with Speakers.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 app
Octocat-spinner-32 config
Octocat-spinner-32 db
Octocat-spinner-32 doc
Octocat-spinner-32 features
Octocat-spinner-32 lib
Octocat-spinner-32 public
Octocat-spinner-32 script
Octocat-spinner-32 spec
Octocat-spinner-32 test
Octocat-spinner-32 tmp
Octocat-spinner-32 vendor
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 .travis.yml
Octocat-spinner-32 Gemfile
Octocat-spinner-32 Gemfile.lock
Octocat-spinner-32 MIT-LICENSE
Octocat-spinner-32 Procfile
Octocat-spinner-32 README.md
Octocat-spinner-32 Rakefile
Octocat-spinner-32 config.ru
README.md

Welcome to Small Communities

Small Communities is an application built on Ruby on Rails to drive websites for small groups. The central concepts of the app are Members and Events with Speakers. An administrator backend is provided through the RailsAdmin gem.

Events are available directly as well as on an upcoming calendar and a listing of past events. Members can RSVP for events and non-members can purchase tickets. A Memberships page provides links for purchasing annual memberships.

Purchases are through (simple) PayPal Buy Now buttons and memberships by definition include admission to regular events.

There are also facilities for simple "static" pages, such as About and Contact.

Technical Overview

Small Communities uses Rails 3.1; Rails 2 support is precluded by use of certain framework methods and gems not available in Rails 2.

Core gems

Theming and Text Customization

In order to easily customize appearance to match a group's visual branding, Small Communities has a skin system.

Additionally, Small Communities uses Rails' I18N facilities to manage strings displayed so you may edit the provided English file and add other languages as useful.

Getting Started

Clone the SmallCommunities GitHub repo:

   git clone git://github.com/billsaysthis/SmallCommunities.git

One of the gems, linecache19 (used by ruby-debug), doesn't install properly through Bundler, not clear why. The workaround is to install it manually first, so this step is only necessary if linecache19 isn't already on your machine:

   gem install linecache19 --no-ri --no-rdoc

Change to the app directory and install the bundle:

   cd small_communities
   bundle install

Install plugins

   git submodule init
   git submodule update

Setup and create the database, run the migrations:

   edit config/database.yml
   rake db:create
   rake db:migrate

Edit the English locale file, or prepare the one for your language:

   edit config/locales/en.yml

Note: You may want to review the RailsAdmin and Devise locale files for your language.

Edit the Mailer and AppConfig initializers:

   edit config/initializers/sc_mailer.rb
   edit config/initializers/app_config.yml

Edit the seeds file and run the rake task:

   edit db/seeds.rb
   rake db:seed

Note: The About and Memberships page titles make use of the locale file

Confirm a valid install:

Start the Rails server and load the app in your browser:

   rails s
   http://localhost:3000

Customize Appearance and Finetune Settings

  • Customize your theme by editing the SCSS files in app/stylesheets
  • Review the basic settings in the Settings tab of the Admin backend
  • Edit/create your "static" pages in the Pages tab of the Admin backend

Contributing

Contributors

Note on Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests for it. This is important so I don't break it in a future version unintentionally.
  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
  • Send me a pull request. Bonus points for topic branches.

Copyright

Copyright (c) 2011 Bill Lazar, http://billlazar.com. See LICENSE for details.

Something went wrong with that request. Please try again.