~tim/onebody

private member portal for churches, built with Ruby on Rails
Fix link to family
Fix some geocoding issues
Include os name in package version

refs

master
browse log
3.8.0
release notes

clone

read-only
https://git.sr.ht/~tim/onebody
read/write
git@git.sr.ht:~tim/onebody

You can also use your local clone with git send-email.

OneBody

OneBody is open-source, web-based social networking, email list, online directory, and lightweight document management software for churches.

This software has been in production use at churches for over ten years. Every feature is built by actual church members to meet the need of their own church.

Contributing to the Project

We ❤️ contributors! Just check out all these people who have helped make OneBody awesome!

To help fix a bug, first make sure it has a logged issue (if not, create one), then:

  1. Fork this repo on GitHub and clone your fork to your computer.
  2. Set up the software on your computer by following the directions in the next section.
  3. Fix the bug!
  4. Submit a Pull Request to get your bug fix merged!

FAQs for Contributors

Development Setup Using Vagrant

If you're a developer and want to get everything running locally, this is the easiest way.

Operating System: Windows, Mac, or Linux

  1. Install VirtualBox. It's free and it runs on Windows, Mac, and Linux.
  2. Install Vagrant on your host machine.
  3. Install Git.
  4. Clone the repository to your host machine: git clone git://github.com/seven1m/onebody.git (If you forked the project, clone from your own fork.)
  5. In your terminal, change to the project directory: cd onebody
  6. Run vagrant: vagrant up

Now visit the site running in development mode at http://localhost:8080.

You can use your favorite text editor to make changes inside the onebody directory. Changes should show in your browser after refreshing.

Check out Using Vagrant on the wiki for further help and tips.

Manual Development Setup on Mac or Linux

  1. Install Ruby 2.3.3 (we recommend you use rbenv or RVM).
  2. Install MySQL.
  3. Install Git.
  4. Install ImageMagick.
  5. Install Node.js.
  6. git clone git://github.com/seven1m/onebody.git && cd onebody
  7. mysql -uroot -e "grant all on onebody_dev.* to onebody@localhost identified by 'onebody';"
  8. mysql -uroot -e "grant all on onebody_test.* to onebody@localhost identified by 'onebody';"
  9. cp config/database.yml{.mysql-example,}
  10. gem install bundler
  11. bundle install (If you get an error installing eventmachine, you might need to do this)
  12. npm install
  13. cp config/secrets.yml{.example,} && vim config/secrets.yml and add a random secret token to both the development and test sections (you can use rake secret to generate a new random secret).
  14. rake db:create db:schema:load db:seed
  15. rails server

Now visit the site running in development mode at http://localhost:3000.

Manual Development Setup on Windows

  1. Download the Ruby 2.3 package from http://railsinstaller.org and install.
  2. Download MariaDB stable from https://downloads.mariadb.org and install. Take note of what you enter for the root password.
  3. Download Git from https://git-scm.com/download/win and install.
  4. Download ImageMagick from http://imagemagick.org/script/binary-releases.php#windows and install.
  5. Download Node.js from https://nodejs.org/en/download/ and install.
  6. Open the Git Bash program, then run...
  7. git clone git://github.com/seven1m/onebody.git && cd onebody
  8. mysql -uroot -pROOT_PASSWORD -e "grant all on onebody_dev.* to onebody@localhost identified by 'onebody';"
  9. mysql -uroot -pROOT_PASSWORD -e "grant all on onebody_test.* to onebody@localhost identified by 'onebody';"
  10. cp config/database.yml{.mysql-example,}
  11. gem install bundler
  12. bundle install
  13. npm install
  14. cp config/secrets.yml{.example,} && vim config/secrets.yml and add a random secret token to both the development and test sections (you can use rake secret to generate a new random secret).
  15. rake db:create db:schema:load db:seed
  16. rails server

Now visit the site running in development mode at http://localhost:3000.

Tests

To run tests:

rspec

If you don't have a test database yet, create it like you did the dev database:

RAILS_ENV=test rake db:create db:schema:load

Get Help

Copyright (c) Tim Morgan

THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM AS IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

This software is license under the GNU Affero General Public License, version 3. See LICENSE provided with this program for the entire text.

Design

Design is a derivative of AdminLTE, copyright (c) almasaeed2010, available here, licensed under MIT license. See LICENSE.