Your private pub.dev,
self-hosted in one container.
CLUB is a self-hosted package repository for Dart and Flutter teams. It speaks the same protocol as pub.dev, so the commands your team already knows work unchanged — only the packages stay inside your infrastructure.
A Pub Spec v2 server, one binary.
CLUB is a Dart application that ships as a single Docker image. It serves the pub API, the web UI, and the admin dashboard from one process. Storage, search, and identity are all modular.
- 01
Publish and install
Your team publishes private packages with dart pub publish and pulls them with dart pub get. Same commands, same workflow — just a repository you own.
drop-in · no workflow changes - 02
Teams and access
Organize packages under publishers your team owns. Admins manage membership, members publish and read. Named API tokens let CI runs publish without sharing credentials — revoke any token in a click.
publishers · roles · api tokens - 03
Yours to run
Deploy anywhere Docker runs — your cloud, your datacenter, even a laptop. Packages stay on hardware you control, under the security and compliance policies you already have in place.
self-hosted · your infrastructure
Everything you'd build yourself, already built.
A complete, from-scratch implementation of the pub protocol — not a wrapper around pub.dev.
- Protocol
Full Pub Spec v2
Every endpoint pub.dev exposes, implemented byte-for-byte. Your existing tooling, unchanged.
- Auth
Private by default
Bcrypt passwords, SHA-256 hashed API tokens, JWT sessions. No anonymous endpoints except /health.
- Teams
Publishers & roles
Org-level publishers with admin/member roles, per-package uploaders, invite links.
- Search
Instant search
Find packages by name or description as you type. Works out of the box and scales as your registry grows.
- Storage
Pluggable backends
SQLite for metadata. Filesystem or S3-compatible for package tarballs.
- Operations
One container
A single Docker image. No Node.js at runtime. Dart server serves the SvelteKit build as static files.
- Interface
Familiar web UI
pub.dev-style browsing, package READMEs, version history, publisher pages. Dark + light theme.
- Tooling
CLI + Dart SDK
club CLI for login, tokens, publishing, admin. club_api Dart package for programmatic access.
- Runtime
- Docker · Dart
- Metadata
- SQLite
- Artifacts
- FS · S3 · GCS
Read. Run. Publish.
Three entry points into CLUB. Pick whichever matches where you are — the docs cover the rest.
- Read
The documentation
Full reference for the server, CLI, SDK, and the HTTP API. Start with the overview, then pick your path.
Browse docs - Run
Quick start with Docker
One command to start a server on your laptop. Works with the bundled admin account; production notes included.
Read the quick start - Publish
Your first package
A step-by-step walkthrough — point dart pub at your CLUB server, tag a version, publish, consume from CI.
Open the tutorial