Sessionizer is a tool for managing session registration for unconferences. It was written for Minnebar, an unconference in Minnesota and one of the largest BarCamps in the world.
# clone the repo
git clone git@github.com:minnestar/sessionizer.git
cd sessionizer
# install correct ruby version
asdf install ruby # OR
rbenv install # OR
rvm install
# install bundler
gem install bundler
# install ruby gems
bundle install
# database setup
rails db:setup
# create timeslots
bundle exec rails app:create_timeslots
# create rooms
bundle exec rails app:create_rooms
If you run into issues setting up the database:
# create 'postgres' user
createuser -s -r postgres
# create 'sessionizer_development' database
createdb sessionizer_development
You're probably going to want to run all the rake tasks with bundle exec
e.g.
bundle exec rails
To run the application
$ rails s
Then you can access the app at http://127.0.0.1:3000.
For development, run rake app:make_believe
to hydrate the database with sample
data. It will reset the database, create an event, participants, timeslots,
sessions, and apply randomized participant interest. This does not run the
scheduling algorithm.
Locally:
$ bundle exec rake app:make_believe
The full test suite can be run with:
rails spec
heroku-18
stack.heroku addons:add memcached:5mb
heroku run rake db:migrate
heroku run rake db:seed
heroku config:add SESSIONIZER_ADMIN_USER=foo SESSIONIZER_ADMIN_PASSWORD=bar
/admin/events
or using the
console $ git push heroku master
See SCHEDULING.MD for details and instructions.
Minnestar is dedicated to providing a harassment-free experience for everyone. All conversations and discussions on GitHub (code, commit comments, issues, pull requests) must be respectful and harassment-free. By contributing to this project, you are agreeing to the Code of Conduct.
This project is open source under the MIT license. See LICENSE for details.