Public website & registration for WiCHacks @ RIT
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.travis
.vscode
app
bin
config
db
lib
log
public
test
tmp
vendor
.codeclimate.yml
.dockerignore
.editorconfig
.env.sample
.gitattributes
.gitignore
.haml-lint.yml
.hound.yml
.rubocop.yml
.ruby-version
.scss-lint.yml
.travis.yml
CHECKS
CONTRIBUTING.md
DOKKU_SCALE
Dockerfile
Gemfile
Gemfile.lock
Procfile
README.md
Rakefile
app.json
config.ru
docker-compose.dev.yml
docker-compose.yml
docker-entrypoint.sh
package.json

README.md

wichacks.io Build Status Code Climate Test Coverage security

The public facing site for WiCHacks.

  • Hacker applications: Users sign up/in using MyMLH, which includes standard hackathon application info. This pre-fills the WiCHacks application, so hackers don't have to duplicate information!
  • Acceptance, RSVPs: Manage applications & coordinate acceptance/waitlist/denials
  • Bus Lists: Coordinate bus sign-ups during the RSVP process while communicating important information to riders & captains
  • Email communication: Ensure hackers get consistent, timely information throughout their application process, while enabling the organizing team to communicate important information at any time.
  • Statistics & Visualization: Surface key information about the application base, distribution of applicants, progress towards attendance, etc.

Getting Started

  1. See CONTRIBUTING.md for details on cloning the repo.
  2. Download & install Docker
  3. Open/start Docker
  4. Once docker is started, build & bring up the website:
docker-compose up --build
  1. In a new terminal window, setup the database:
docker-compose run web rails db:setup
  1. You should now be able to access the website at http://localhost:3000 Windows users: be sure to accept the security pop-ups - they might be hidden! The website will not start until you accept them.

Admin Access

You'll want to make an account & promote yourself to an admin in order to access the entire website.

  1. Visit http://localhost:3000/users/sign_up
  2. Sign up for a regular account
  3. Promote yourself to an admin:
docker-compose run web rails c
# Wait for the console to start...
Loading development environment (Rails 5.1.1)
irb(main):001:0> User.last.update_attribute(:admin, true)
  1. You should now be able to visit http://localhost:3000/manage

Tooling

  • If you need to restart the Rails server:
docker-compose restart web
  • If you need to restart Sidekiq, the background job worker that handles emails:
docker-compose restart sidekiq
  • If you need to make changes to the Gemfile:
# 1. Make your changes to Gemfile
# 2. Run a `bundle install` to update the Gemfile.lock
docker-compose run web bundle install
# 3. Update the "web" and "sidekiq" docker images
docker-compose build web sidekiq
# 4. Start the new containers.
#    If `docker-compose up` isn't already running, exclude "-d"
docker-compose up -d web sidekiq

You can follow the same format for db and redis, though you shouldn't ever need to restart those.

Gotchas

  • If you try to docker-compose run web and get an error message along the lines of Could not find foogem-x.y.z in any of the sources, your local bundle is conflicting with Docker or you haven't run bundle install.
rm -rf .bundle
docker-compose up --build # This will rebuild the containers, install new dependencies, and start the website