A self-hosted skydive logbook.
SkyBook is a lightning-fast, self-hosted web application for skydivers to log, search, and analyze their jump history from any device.
- Single Binary Deployment: The entire application (Go backend + built Vue SPA frontend) compiles into a single executable.
- Zero Dependencies: Uses an embedded SQLite database. No external database servers needed.
- Mobile-First Design: The responsive Vue 3 frontend works flawlessly on mobile devices and desktops alike.
- Instant Search & Filter: Find any jump by dropzone, aircraft, jump type, or free-text search.
- Smart Autocomplete: Dropzones, aircraft, and events autocomplete based on your jumping history.
- Dark Mode: Aviation-inspired dark theme optimized for readability in the sun or at the bonfire.
- Multi-user Ready: Designed with a multi-tenant foundation (single-user anonymous mode by default in v1).
The easiest way to run SkyBook is via Docker:
docker run -d \
--name skybook \
-p 8080:8080 \
-v skybook-data:/data \
ghcr.io/root-gg/skybook:latestThen open http://localhost:8080 in your browser.
Note: Pre-compiled binaries will be available in the GitHub Releases page soon.
SkyBook is configured via a TOML file (skybook.cfg) or environment variables.
By default, the application looks for skybook.cfg in the current directory. You can override this using the --config flag or the SKYBOOK_CONFIG environment variable.
All settings can be overridden using environment variables prefixed with SKYBOOK_ (e.g., SKYBOOK_DATABASE_PATH).
For a complete list of configuration options, check the default skybook.cfg file.
SkyBook uses make to orchestrate builds. You need Go 1.22+ and Node.js 20+.
# Clone the repository
git clone https://github.com/root-gg/skybook.git
cd skybook
# Build the frontend (webapp) and backend (server)
make all
# The compiled binary will be in the server directory
./server/skybookFor active development, you can run the Vite development server and the Go backend concurrently:
make devThis starts:
- The Go backend on
http://localhost:8080 - The Vite dev server on
http://localhost:5173(with hot-module reloading, automatically proxying/apirequests to the Go backend)
Run tests formatting and linting:
make lint
make test # Backend unit tests
make test-frontend # Frontend unit tests (Vitest)
make test-e2e # E2E UI tests (Playwright)Backend:
- Go (Golang)
gorilla/muxfor routinggormwith SQLite driver for the database
Frontend:
- Vue 3 (Composition API)
- Vite
- Tailwind CSS 4
- Pinia (State Management)
For deeper technical context, system design, and AI agent workflows, see:
- ARCHITECTURE.md - System architecture and data models
- AGENTS.md - Context and workflows for AI Coding Assistants working on this repo
This project is licensed under the MIT License - see the LICENSE file for details.
