Personal productivity workspace — goals, actions, KPIs, do-list, notes, calendar, knowledge graph, and context-aware AI.
Stack: Vite + React (SPA) · Hono API · PostgreSQL · Prisma · Google OAuth · DeepSeek AI
- Customizable home overview
- Goals, actions, KPIs, and do-list (drag to reorder)
- Notes with auto-save
- Calendar and document uploads
- Knowledge graph visualization
- AI assistant with full user context, chat history, and personalization
- Global search
- Google sign-in
- Minimal, modern UI
npm installCopy .env.example to .env in the project root:
DATABASE_URL="postgresql://user:password@localhost:5432/personal_epistemology"
SESSION_SECRET="your-secret-at-least-16-chars"
GOOGLE_CLIENT_ID="..."
GOOGLE_CLIENT_SECRET="..."
DEEPSEEK_API_KEY="..."
APP_URL="http://localhost:3000"
CLIENT_URL="http://localhost:5173"Google OAuth redirect URI:
http://localhost:3000/api/auth/google/callback
npm run db:migrate # or: npm run db:pushnpm run dev- Frontend: http://localhost:5173 (proxied to API)
- API: http://localhost:3000
Set these on your VPS (same values for both URLs in production):
NODE_ENV=production
PORT=3000
DATABASE_URL=postgresql://user:pass@host:5432/personal_epistemology
SESSION_SECRET=<long-random-string>
GOOGLE_CLIENT_ID=...
GOOGLE_CLIENT_SECRET=...
DEEPSEEK_API_KEY=...
APP_URL=https://your-domain.com
CLIENT_URL=https://your-domain.com
COOKIE_SECURE=trueCOOKIE_SECURE=true is required when running behind nginx/HTTPS reverse proxy.
Google OAuth production redirect URI:
https://your-domain.com/api/auth/google/callback
The included nixpacks.toml will:
- Install dependencies
- Generate Prisma client + build client & server
- Run migrations on start
- Serve everything on one port
npm install
npm run build
npm run db:migrate:deploy
NODE_ENV=production npm startOr use deploy/start.sh.
See deploy/nginx.conf — proxy all traffic to port 3000. The Node server serves both the API and the React SPA.
GET /api/health
Returns { ok: true, db: "connected" } when healthy.
client/ Vite + React SPA
server/ Hono API + Prisma
prisma/ Schema + migrations
docs/ Screenshots and docs
deploy/ nginx config + start script
| Command | Description |
|---|---|
npm run dev |
Dev server (API + Vite) |
npm run build |
Production build |
npm start |
Start production server |
npm run db:migrate |
Dev migrations |
npm run db:migrate:deploy |
Production migrations |
npm run db:push |
Push schema (no migration files) |