Imported from Peltori/pm (
AGENTS.md). Install upstream withnpx skills add Peltori/pm. Copyright stays with the author.
The Project Management MVP web app
Business Requirements
This project is building a Project Management App. Key features:
- A user can sign in
- When signed in, the user sees a Kanban board representing their project
- The Kanban board has fixed columns that can be renamed
- The cards on the Kanban board can be moved with drag and drop, and edited
- There is an AI chat feature in a sidebar; the AI is able to create / edit / move one or more cards
- There is an dark/light mode button to switch between light or dark mode
Limitations
For the MVP, there will only be a user sign in (hardcoded to 'user' and 'password') but the database will support multiple users for future.
For the MVP, there will only be 1 Kanban board per signed in user.
For the MVP, this runs in a Docker container. Deployment targets: Docker-based platforms (Render, Fly.io, Railway) or moving API routes to Next.js serverless functions for Vercel.
Technical Decisions
- NextJS frontend with tailwind css for styling and @dnd-kit for drag-and-drop
- Use pnpm for frontend dependency management
- Python FastAPI backend, including serving the static NextJS site at /
- Everything packaged into a Docker container
- Use "uv" as the package manager for python in the Docker container
- Use OpenRouter for the AI calls. An OPENROUTER_API_KEY is in .env in the project root
- Use
openrouter/freeas the model (auto-routes to available free models) - Use SQLLite local database for the database, creating a new db if it doesn't exist
- Start and Stop server scripts for Mac, PC, Linux in scripts/
Starting Point
A working MVP of the frontend has been built in the frontend/ directory. It is fully integrated with the Docker setup and backend API.
Color Scheme
- Accent Yellow:
#ecad0a- accent lines, highlights - Blue Primary:
#209dd7- links, key sections - Purple Secondary:
#753991- submit buttons, important actions - Dark Navy:
#032147- main headings - Gray Text:
#888888- supporting text, labels
Coding standards
- Use latest versions of libraries and idiomatic approaches as of today
- Keep it simple - NEVER over-engineer, ALWAYS simplify, NO unnecessary defensive programming. No extra features - focus on simplicity.
- Be concise. Keep README minimal. IMPORTANT: no emojis ever
- When hitting issues, always identify root cause before trying a fix. Do not guess. Prove with evidence, then fix the root cause.
Workflow
- Always prompt the user for approval before running any terminal/command-line commands
- Always ask the user about the branch name before creating a new branch
- Never push directly to main - always push to feature/bugfix/refactor/chore branches
- After every phase is complete, make a git commit and ask the user before pushing
Working documentation
All documents for planning and executing this project will be in the docs/ directory. Please review the docs/PLAN.md document before proceeding.