Idea is a Bun monorepo for collecting and managing innovation ideas. It is built with Next.js, tRPC, Prisma, PostgreSQL, and Docker.
Docker is the recommended way to run the app.
docker compose up -d --buildThe app is exposed on APP_PORT from .env (8080 by default).
To avoid data-loss-like incidents after redeploy, keep these values stable across versions:
COMPOSE_PROJECT_NAMEPOSTGRES_VOLUME_NAMEDATABASE_URL(orDATABASE_NAME/DATABASE_USERNAME/DATABASE_PASSWORD)EXPECTED_DATABASE_NAME
docker-entrypoint.sh validates the active database name before running Prisma migrations.
bash scripts/deploy-prod.shWith local uncommitted changes on server:
bash scripts/deploy-prod.sh --stash-dirtybash <(curl -fsSL https://raw.githubusercontent.com/Priveetee/Idea/main/scripts/install-stack.sh)Isolated install example:
bash <(curl -fsSL https://raw.githubusercontent.com/Priveetee/Idea/main/scripts/install-stack.sh) -- --dir ~/idea --project-name idea-prod --app-port 8085 --db-port 5456- Next.js 16
- Bun 1.3
- tRPC 11
- Prisma 7
- PostgreSQL
- Better Auth
- Tailwind CSS
- Docker / Docker Compose
apps/web: Next.js application and dashboardpackages/db: Prisma schema, migrations, generated clientpackages/auth: authentication logic and env validationpackages/trpc: routers, procedures, and API contextpackages/ui: shared UI componentspackages/config: shared workspace configuration
cp .env.example .env
bun install
bun run -F @repo/db prisma generate
bun run -F @repo/db prisma migrate dev
bun devbun run check:ws
bun run typecheck
bun run buildMIT. See LICENSE.