Root File Conventions
Semua project Wajib memiliki:
-
.gitignore
-
README.md
-
LICENSE (opsional)
-
Makefile (atau just-task, taskfile)
Monorepo Structure
Untuk project berskala besar yang terdiri dari multiple packages (sebagai contoh, lihat repositori masmuss/trak):
-
apps
-
bot/ # Telegram/Discord bot service
-
web/ # Web frontend (Next.js/Astro)
-
-
packages
-
database/ # Drizzle schemas, migrations
-
services/ # Shared business logic & services
-
shared/ # Shared types, constants, utilities
-
-
pnpm-workspace.yaml # Workspace config
-
turbo.json # Turborepo config
-
package.json
README Wajib Berisi
- Judul dan deskripsi singkat
- Prerequisites (runtime, tools)
- Cara install (
pnpm install,go mod download, dll) - Cara jalanin (
pnpm dev,go run ., dll) - Testing (
pnpm test,go test ./..., dll) - Environment variables (copy
.env.example) - Database setup jika ada
- Deployment (jika relevant)