Account system for Minecraft servers.
Find a file
ExMikuPro39 f80f25ea18
refactor(backend): refactor
refactor: 26/03 features
2026-05-10 00:54:19 +08:00
.devcontainer chore: fix devcontainer minio init 2025-09-21 21:21:36 +08:00
.github/workflows ci: fix ci build 2025-02-22 20:40:59 +08:00
.vscode chore: use ts-go for typechecking 2025-08-16 21:19:34 +08:00
apps refactor(backend): refactor 04/26 2026-04-26 03:23:25 +08:00
packages refactor(backend): refactor 04/26 2026-04-26 03:23:25 +08:00
.editorconfig chore: cleaner editorconfig 2024-08-28 23:58:29 +08:00
.gitignore build: add cached lint task for packages 2025-02-27 14:01:20 +08:00
.npmrc feat(create-turbo): create basic 2024-07-16 02:30:00 +08:00
.prettierignore chore: ignore generated files for formatter and linter 2025-11-19 23:19:24 +08:00
.prettierrc chore(ui): add some required deps 2025-03-23 15:38:34 +08:00
bun.lock refactor(backend): use effect in backend 2026-03-07 03:12:48 +08:00
Dockerfile.package-backend chore: bump dependency versions 2025-05-21 01:19:33 +08:00
Dockerfile.package-web chore: bump dependency versions 2025-05-21 01:19:33 +08:00
eslint.config.js chore: ignore generated files for formatter and linter 2025-11-19 23:19:24 +08:00
package.json chore: bump deps 2025-11-22 23:09:43 +08:00
README.md docs(readme): add readme 2026-03-05 23:58:22 +08:00
tsconfig.lint.json feat(eslint-config): migrate to single tsconfig for import-x-resolver 2025-05-21 02:37:36 +08:00
turbo.json chore: use ts-go for typechecking 2025-08-16 21:19:34 +08:00

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 under src/modules/**, config in config.*.yaml, and Drizzle migrations in migrations/.
  • apps/web: Next.js front-end (app/**) that shares UI and API helpers from packages/*.
  • 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 run bun run lint + bun run typecheck to catch regressions.
  • Backend deployments must ship a matching config.<env>.yaml, run bun run migration:run before starting, and expose the configured port/URL from config.example.yaml values.
  • Web deployments rely on a .env.production.local (or platform-specific env vars) that mirror apps/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.