mirror of
https://github.com/miracle-box/hetu.git
synced 2026-05-15 09:32:17 +00:00
Account system for Minecraft servers.
|
|
||
|---|---|---|
| .devcontainer | ||
| .github/workflows | ||
| .vscode | ||
| apps | ||
| packages | ||
| .editorconfig | ||
| .gitignore | ||
| .npmrc | ||
| .prettierignore | ||
| .prettierrc | ||
| bun.lock | ||
| Dockerfile.package-backend | ||
| Dockerfile.package-web | ||
| eslint.config.js | ||
| package.json | ||
| README.md | ||
| tsconfig.lint.json | ||
| turbo.json | ||
Hetu Monorepo
Hetu is a account system for Minecraft servers.
This repository hosts the Hetu backend (Elysia + Drizzle) and web client (Next.js App Router) plus shared packages managed by Turborepo and Bun.
Workspaces
apps/backend: API server with routes undersrc/modules/**, config inconfig.*.yaml, and Drizzle migrations inmigrations/.apps/web: Next.js front-end (app/**) that shares UI and API helpers frompackages/*.packages/*: Shared UI kit, API client, lint/ts configs, etc.
Development
bun install
bun run dev # turbo dev across all workspaces
bun run lint # eslint + prettier
bun run typecheck # ts --noEmit checks
Use turbo run <task> --filter=@repo/<pkg> to target a single app/package.
Deployment Notes
- Build everything with
bun run build; CI should also runbun run lint+bun run typecheckto catch regressions. - Backend deployments must ship a matching
config.<env>.yaml, runbun run migration:runbefore starting, and expose the configured port/URL fromconfig.example.yamlvalues. - Web deployments rely on a
.env.production.local(or platform-specific env vars) that mirrorapps/web/.env.development.local; make sure API base URLs point at the deployed backend. - When using Dockerfiles (
Dockerfile.package-backend/Dockerfile.package-web), pass the correct build args/secrets and persist the Bun cache volume to avoid re-install storms.