nlevesque fee2155a18 Drop bundled PocketBase: app-only deployment via POCKETBASE_URL
The external PocketBase instance is referenced by the POCKETBASE_URL env
variable (compose and Dockerfile build packs both supported). The schema
export stays at pb_schema.json as a reference for provisioning.
2026-07-28 14:13:10 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00
2026-07-28 08:58:44 +02:00

PokeShare

A French-language Pokémon TCG collection tracker and sharing app. Users search cards from the TCGdex catalog, track their personal collection with Cardmarket price valuations, and share collections with friends.

Stack

Commands

Command Action
bun install Install dependencies
bun run dev Start dev server at localhost:4321
bun run build Build the production site to ./dist/
bun run preview Preview the production build locally

Production runs as a standalone Node server (node dist/server/entry.mjs), Node >= 22.12.

Environment variables

Variable Description Default
POCKETBASE_URL URL of the PocketBase backend (auth + data) https://pokeshare.namarusaja.me

Read at runtime (process.env), so the same Docker image can be deployed against different PocketBase instances. For local dev, copy .env.example to .env. HOST and PORT are also honored by the standalone server.

Docker

Single container (external PocketBase):

docker build -t pokeshare .
docker run -p 4321:4321 -e POCKETBASE_URL=https://pb.example.com pokeshare

Full stack (app + PocketBase)

docker-compose.yml runs just the app; it expects an external PocketBase instance referenced by POCKETBASE_URL (see above). A schema export of the expected collections is kept at pb_schema.json for reference when setting up a new PocketBase instance (admin UI → Settings → Import collections).

POCKETBASE_URL=https://pb.example.com docker compose up --build
  • The app listens on 4321; expose it on your domain (Coolify: expose the app service, or use the plain Dockerfile build pack).
  • Accounts are managed from the PocketBase admin UI (/_/).

Structure

  • src/pages/ — routes (/, /search, /mycards, /card/[id], /series/[id], /sets/[id], /friends, /profile) and JSON API endpoints under src/pages/api/
  • src/middleware.ts — per-request PocketBase client + pb_auth cookie auth
  • src/lib/ — TCGdex cache, collection pricing helpers, type theming
  • src/layouts/, src/components/ — base layout and nav
S
Description
No description provided
Readme
562 KiB
Languages
Astro 77%
TypeScript 20.8%
CSS 1.3%
Dockerfile 0.5%
JavaScript 0.4%