Skip to content

hackclub/hackathons-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

890cd4d Β· Mar 22, 2025
Mar 6, 2025
Mar 19, 2025
Feb 4, 2025
Mar 18, 2025
Feb 20, 2025
Jan 21, 2025
Jul 10, 2023
Apr 22, 2024
Jul 10, 2023
Feb 15, 2025
Jul 10, 2023
Jul 10, 2023
Aug 18, 2023
Oct 17, 2023
Feb 4, 2025
Mar 8, 2025
Mar 8, 2025
Mar 18, 2025
Mar 22, 2025
Jul 5, 2024
Mar 8, 2025
Jul 10, 2023
Aug 16, 2023
Feb 16, 2025
Feb 27, 2025

Repository files navigation

Hackathons Backend

The thing that powers hackathons.hackclub.com!

  • πŸ“Ž Collecting and reviewing applications to list your hackathon
  • πŸ“§ Notifying subscribers of hackathons in their area
  • 🌍 Geocoding hackathon and subscription locations into coordinates
  • πŸ’Ύ Archiving hackathon websites for posterity
  • πŸ—“οΈ Provides a JSON API for the front-end
πŸ“ Application Form πŸ“¬ Subscription Email
Screenshot of Hackathons application form Screenshot of Hackathons subscription email

Contributing

This app is built with πŸ›€οΈ Ruby on Rails (running on the edge) using 🐘 PostgreSQL for the database and πŸ’Ύ Solid Queue for running background jobs.

Getting Started

  1. Make sure you have Docker and Ruby 3.4.2 installed.

  2. Clone the repo

    git clone https://github.com/hackclub/hackathons-backend.git
    cd hackathons-backend
  3. Install dependencies

    bundle install
  4. Start Postgres

    docker compose up --detach
  5. Setup the database and run the server

    rails db:prepare
    rails server

The application will now be running at localhost:3000!

Additional Dependencies

Postgres will need to be installed in order for the pg gem to be compiled.

Additionally, Active Storage depends on vips to process images. You'll want this dependency installed on your machine. For Macs, run:

brew install vips

Solid Queue

Solid Queue is used to process background jobs in production. In development, we use the good old default Active Job Async queue adapter.

To check up on jobs, visit /admin/jobs on the production site. You must be logged in as an admin to access this page.


Application performance monitoring sponsored by AppSignal .