# Run Instructions ## Project Description Minmon is a student-friendly web dashboard for managing private servers, their hosted services, related domains, and server notes. It focuses on CRUD operations plus simple DNS monitoring, not deployment automation. ## Main Features - Admin login with better-auth - Dashboard summary for servers, services, domains, DNS status, and inactive services - Server CRUD - Service CRUD - Domain CRUD - DNS A-record check with match/mismatch/unresolved result - Server note/documentation CRUD - Sample seed data for demo use ## Local Setup 1. Install dependencies ```bash bun install ``` 2. Prepare environment file at `apps/server/.env` Example values: ```env DATABASE_URL=postgresql://postgres:postgres@localhost:5432/minmon BETTER_AUTH_SECRET=your-32-char-or-longer-secret-value-here BETTER_AUTH_URL=http://localhost:3000 CORS_ORIGIN=http://localhost:5173 NODE_ENV=development ``` 3. Start PostgreSQL if needed ```bash bun run db:start ``` 4. Apply schema ```bash bun run db:push ``` 5. Seed sample data ```bash bun run --filter @minmon/db db:seed ``` Seeded admin login: - Email: `admin@minmon.local` - Password: `admin12345` 6. Run the apps ```bash bun run dev ``` 7. Open the app - Web: `http://localhost:5173` - API: `http://localhost:3000` ## Helpful Commands ```bash bun run check-types bun run db:push bun run db:studio bun run --filter web check-types bun run --filter server check-types ``` ## Notes - Full workspace typecheck may still fail because of a pre-existing `apps/desktop` typing issue for `three`. - The dashboard app itself, server app, DB push, and DB seed are verified.