Jean-Luc Makiola a0c01d388c
All checks were successful
CI / ci (push) Successful in 1m9s
CI / e2e (push) Has been skipped
CI / deploy (push) Successful in 1m19s
fix: remove duplicate statements from migration 0004 and orphan migration file
Migration 0004 contained CREATE TABLE and ALTER TABLE statements already
applied in migrations 0002 and 0003, causing PGlite test DB initialization
to fail (311 test failures). Stripped to only the new dominant_color and
crop_* columns. Also removed orphan 0000_fuzzy_shiva.sql.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 21:07:18 +02:00
2026-04-09 15:18:36 +02:00
2026-03-14 20:07:01 +00:00

GearBox

A web app for managing gear collections (bikepacking, sim racing, etc.), tracking weight and price, and planning purchases through research threads.

Features

  • Organize gear into categories with custom icons
  • Track weight and price for every item
  • Create setups (packing lists) from your collection with automatic weight/cost totals
  • Research threads for comparing candidates before buying
  • Image uploads for items and candidates

Deployment

GearBox is deployed via Coolify as a Docker image with separate services for dependencies.

Required services:

  • PostgreSQL 16 — primary database
  • Garage (or any S3-compatible storage) — image uploads
  • Logto — OIDC authentication

GearBox image: gitea.jeanlucmakiola.de/makiolaj/gearbox:latest

See .env.example for required environment variables.

Updating

CI pushes a new Docker image on every release. Coolify auto-deploys when the image tag updates.

Database migrations run automatically on startup via entrypoint.sh.

Tech Stack

  • Runtime & Package Manager: Bun
  • Frontend: React 19, Vite, TanStack Router, TanStack Query, Tailwind CSS v4, Zustand
  • Backend: Hono, Drizzle ORM, PostgreSQL
  • Storage: S3-compatible (Garage, Cloudflare R2, AWS S3)
  • Auth: OIDC via Logto

Local Development

Prerequisites

  • Bun installed
  • PostgreSQL, Logto, and Garage running (via Coolify test instance or locally)

Setup

  1. Install dependencies:

    bun install
    
  2. Copy and configure environment:

    cp .env.example .env
    # Edit .env with your service URLs and credentials
    
  3. Start the development servers:

    bun run dev
    

    Starts both the Vite frontend (port 5173) and Hono backend (port 3000).

Open http://localhost:5173 in your browser.

Commands

  • bun run dev — Start dev servers (frontend + backend)
  • bun run build — Build production assets
  • bun test — Run tests
  • bun run lint — Lint with Biome
  • bun run db:generate — Generate Drizzle migrations after schema changes
Description
No description provided
Readme Apache-2.0 6.2 MiB
v1.4.3 Latest
2026-04-04 09:19:40 +00:00
Languages
TypeScript 73.1%
HTML 26.7%
Shell 0.1%