About this project
GatherPack is a self-hosted web application intended to centralize the management of a group of people. It was originally created to address the operational challenges faced by a FIRST Robotics Competition team, where information about meeting attendance, fundraising progress, finances, and travel logistics was scattered across spreadsheets, sticky notes, and individual memory. The application consolidates these operational details into a single, accessible web platform for team members and organizers.
The project has evolved over nearly a decade to support larger and more complex organizational needs, offering a more flexible and robust tool for groups seeking to improve their internal coordination. It is designed to be self-hosted, providing organizations with control over their data and infrastructure.
**Key Capabilities (as evidenced by the README):**
* **Centralized Group Management:** Tracks attendance, fundraising, finances, and travel/event logistics in one place.
* **Self-Hosting:** Designed to be run on your own infrastructure. It provides a `docker-compose.production.yml` file for a full production instance, including the application, a background job worker, and PostgreSQL. It explicitly states that no Redis or other services are required.
* **Containerized Deployment:** Official container images are published to `ghcr.io/gatherpack/gatherpack` for both `amd64` and `arm64` architectures on every release. Documentation covers deploying with Komodo, setting up TLS and reverse proxies, backups, and using an external PostgreSQL server.
* **Technology Stack:** The application is built with Ruby and Node.js, uses Yarn for package management, and relies on Docker for containerization. The development setup involves cloning the repository and running `bin/setup` and `docker-compose up`.
* **Configurable Settings:** Includes a settings system managed via a `lib/settings.rb` file, allowing for the definition of various configuration parameters with types, defaults, and descriptions.
**Getting Started (Development):**
Requires Ruby, Node, Yarn, and Docker.
1. Clone the repository: `git clone git@github.com:GatherPack/gatherpack.git`
2. Navigate to the directory: `cd gatherpack`
3. Run the setup script: `bin/setup`
4. Start the development environment: `docker-compose up` and `bin/dev`
**Self-Hosting (Production):**
1. Copy the example environment file and configure the required values: `cp .env.production.example .env`
2. Start the production stack: `docker compose -f docker-compose.production.yml up -d`
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.