Giter VIP home page Giter VIP logo

wichacks.io's Introduction

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

wichacks.io's People

Contributors

sman591 avatar ldidonato avatar lindseyferretti avatar moonj-kr avatar axb9332 avatar svaswani avatar

Watchers

Stephen Cioffi 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.