{"id":13529400,"url":"https://github.com/codeRIT/hackathon-manager","last_synced_at":"2025-04-01T16:31:25.130Z","repository":{"id":21350810,"uuid":"92438270","full_name":"codeRIT/hackathon-manager","owner":"codeRIT","description":"All-in-one platform for hackathon registration \u0026 logistics.","archived":false,"fork":false,"pushed_at":"2024-04-13T18:56:41.000Z","size":265517,"stargazers_count":29,"open_issues_count":66,"forks_count":24,"subscribers_count":7,"default_branch":"develop","last_synced_at":"2024-04-14T08:56:21.699Z","etag":null,"topics":["admissions","dashboard","hackathons","mymlh","registration","ruby-on-rails"],"latest_commit_sha":null,"homepage":"https://coderit.org/hackathon-manager/","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codeRIT.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-05-25T19:42:20.000Z","updated_at":"2024-04-18T18:50:56.894Z","dependencies_parsed_at":"2024-04-05T23:31:29.887Z","dependency_job_id":"415c0df9-103f-41a2-8ed8-0914fb329a1a","html_url":"https://github.com/codeRIT/hackathon-manager","commit_stats":null,"previous_names":[],"tags_count":113,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeRIT%2Fhackathon-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeRIT%2Fhackathon-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeRIT%2Fhackathon-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeRIT%2Fhackathon-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codeRIT","download_url":"https://codeload.github.com/codeRIT/hackathon-manager/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246670543,"owners_count":20815002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["admissions","dashboard","hackathons","mymlh","registration","ruby-on-rails"],"created_at":"2024-08-01T07:00:35.954Z","updated_at":"2025-04-01T16:31:23.837Z","avatar_url":"https://github.com/codeRIT.png","language":"Ruby","readme":"# HackathonManager\n\n[![Build Status](https://travis-ci.org/codeRIT/hackathon-manager.svg?branch=master)](https://travis-ci.org/codeRIT/hackathon-manager)\n[![Code Climate](https://codeclimate.com/github/codeRIT/hackathon-manager/badges/gpa.svg)](https://codeclimate.com/github/codeRIT/hackathon-manager)\n[![Test Coverage](https://codeclimate.com/github/codeRIT/hackathon-manager/badges/coverage.svg)](https://codeclimate.com/github/codeRIT/hackathon-manager/coverage)\n[![security](https://hakiri.io/github/codeRIT/hackathon-manager/master.svg)](https://hakiri.io/github/codeRIT/hackathon-manager/master)\n\n### 🚨 Read me!\nHackathonManager v3.0.0 is under **heavy** development. It is recommended you wait until that is released before using this application.\n\nHackathonManager will also be following the gitflow workflow with all commits going to the `develop` branch. When v3.0.0 is ready it will be available as a release along with a dedicated v3.0.0 branch.\n\n❤️ HackathonManager Contributors\n\n---\n\nAn all-in-one platform for managing hackathon registration \u0026 logistics, originally developed for [BrickHack](https://github.com/codeRIT/brickhack.io).\n\nRead more at **[coderit.org/hackathon-manager/](https://coderit.org/hackathon-manager/)**\n\n- **Hacker applications:** Enable hackers to apply to your hackathon while providing all relevant information (contact info, school, demographics, etc)\n- **MyMLH support:** Streamline the application process when users log in with [MyMLH](https://my.mlh.io/), a common platform for applying to any MLH hackathon. Basic info is pre-filled based on a common application, so hackers don't have to re-type it every time.\n- **Admissions \u0026 RSVPs**: Facilitate accepting hackers to your hackathon \u0026 enable them to RSVP\n- **Bus Lists:** Coordinate bus sign-ups during the RSVP process while communicating important information to riders \u0026 captains\n- **Email communication**: Ensure hackers get consistent, timely information throughout their application process, while enabling your organizing team to communicate important information at any time.\n- **Statistics \u0026 Visualization:** Surface key analytics about your admissions, distribution of applicants, progress towards attendance, etc.\n\n## Usage\n\nHackathonManager is a standalone web app separate from your regular marketing website/public homepage.\n\nA typical setup would be:\n\n- **brickhack.io** — Marketing site with event info, schedule, sponsors, etc and a button to apply\n- **apply.brickhack.io** — HackathonManager deployment to accept hacker applications + host management dashboard\n\nThis allows your public marketing site to operate however you want it (e.g. GitHub pages) while HackathonManager lives in an isolated, consistent environment.\n\nHackathonManager makes use of a few different third-party services \u0026 Ruby gems:\n\n- [Devise](https://github.com/plataformatec/devise) + [MyMLH](https://my.mlh.io/) (authentication \u0026 attendee identity)\n- [Sidekiq](https://github.com/mperham/sidekiq) (background jobs)\n- [SendGrid](https://sendgrid.com) (email)\n- [Amazon S3](https://aws.amazon.com/s3) (resume storage)\n- [Chartkick](http://chartkick.com) (management UI charts)\n- [Blazer](https://github.com/ankane/blazer) (custom SQL queries, analytics, and charts)\n- [Doorkeeper](https://github.com/doorkeeper-gem/doorkeeper) (authentication via OAuth for API usage)\n\n## Get Started\n\n**[Deploy HackathonManager for your hackathon \u0026raquo;](https://coderit.org/hackathon-manager/docs/deployment)**\n\n[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)\n\n## Documentation\n\nDocumentation is available at https://coderit.org/hackathon-manager/\n\nDocs are maintained as markdown files in the `docs/` folder, with the website configuration \u0026 tooling stored in `website/`.\n\nDoc \u0026 website changes are auto-built and deployed via [Travis CI](https://travis-ci.org/codeRIT/hackathon-manager) once merged into master.\n\n## Commits + Releases\n\nReleases are automatically generated by [semantic-release](https://github.com/semantic-release/semantic-release) using commit messages.\n\nCommit messages should follow the standard `type(scope): subject` format. For example:\n\n- `feat: Improve form typography`\n- `deploy(heroku): Ensure db:migrate is run after each deploy`\n- `fix: Support HTTPS in questionnaire portfolio URL`\n\nFor more information, see semantic-release's [how does it work](https://github.com/semantic-release/semantic-release#how-does-it-work).\n\n## Contributing\n\nGitHub issues and pull requests welcome!\n\nAll documentation is easily editable using the GitHub UI. Click the \"Edit\" button at the top of any documentation page to get started.\n\nIf there's a new feature you're looking to implement, **please** file an issue to open discussion on the feature before starting work or opening a pull request.\n\n## Local Development\n\n1. Setup Ruby + MySQL for local development\n\nIf you don't already have Ruby + MySQL set up, see [this guide by GoRails](https://gorails.com/setup) for pointers.\n\n- Select your computer's operating system \u0026 version\n- If given the choice, use `rbenv` -- this will ensure a clean, sustainable Ruby dev environment\n- SQLite and PostgreSQL steps are optional\n\n2. Clone the repo\n\n```bash\n$ git clone git@github.com:codeRIT/hackathon-manager\n$ cd hackathon-manager\n```\n\n3. Install dependencies\n\n```bash\n$ bundle install\n```\n\n4. Setup databse\n\n```bash\n$ bin/rails db:setup\n```\n\n5. Start up the server\n\n```bash\n$ bin/rails s  # short for bin/rails server\n```\n\n6. Visit http://localhost:3000/apply, create an account, and complete an application\n\n7. In another bash window, promote your user to a director\n\n```bash\n$ cd hackathon-manager\n$ bin/rails c  # short for bin/rails console\n# Wait for the console to start...\nLoading development environment (Rails 5.1.1)\nirb(main):001:0\u003e User.last.update_attribute(:role, :director)\n```\n\n8. Visit http://localhost:3000/manage and set up the hackathon as needed\n\n_See https://coderit.org/hackathon-manager/ for docs on regular hackathon setup_\n\n### Local Development Utilities\n\n- **Mail View** - Email templates can be previewed at http://localhost:3000/rails/mailers\n- **Mail Catcher** - When active, emails will be captured by MailCatcher instead of slipping into a black hole (no emails are ever sent in development). Visit [mailcatcher.me](http://mailcatcher.me/) and follow instructions under \"How\" to get setup.\n- **Guard** - Automatically runs tests based on the files you edit. `bundle exec guard`\n- **Coverage** - Test coverage can be manually generated via the `bin/rails coverage:run` command. Results are then made available in the `coverage/` directory.\n- **Sidekiq** - Run background jobs (such as emails) and view active \u0026 completed jobs. Sidekiq is automatically started with Docker - a dashboard is available at http://localhost:3000/sidekiq (_also available in production_).\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).\n","funding_links":[],"categories":["Platforms"],"sub_categories":["Inactive 🧊"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FcodeRIT%2Fhackathon-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FcodeRIT%2Fhackathon-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FcodeRIT%2Fhackathon-manager/lists"}