ProCoderJii is building a student learning and placement-practice product. Free practice and browser-saved progress work without a production service account. Optional account synchronization is a separate capability; paid billing is future work.
| You want to... | Read |
|---|---|
| Understand the product and current content | Project README |
| Review student value, scaling, and future monetization | Product roadmap |
| Review repository readiness and remaining owner decisions | Repository audit |
| Make your first contribution | Contributing |
| Ask a question or choose a reporting channel | Support |
| Triage issues, review changes, or handle dependency updates | Maintainer guide |
| Run the app and choose checks | Development |
| Understand routes, content, and feature boundaries | Architecture |
| Add original notes, guides, or career listings | Content guide |
| Run the .NET API, Google sign-in, and account persistence | Backend setup |
| Configure production hosting and the site domain | Deployment |
| Run the API and choose a database with Docker | Containers |
| Configure the selected hosted PostgreSQL database | Neon setup |
| Report a vulnerability privately | Security policy |
| Review implementation security notes | Security notes |
| Understand optional coding-agent tools | Agent tools |
Architecture decisions describe a problem, the chosen boundary, and its consequences. Start with ADR 0001: student-product boundaries, then ADR 0002: student portfolios (proposed), and ADR 0003: containers and database options. Add a new decision record when a change affects persistence, account requirements, payment handling, or other feature boundaries; update the architecture guide when the implementation changes.
The project roadmap records product direction. Check the linked issues and pull requests for current implementation status. A roadmap item is a proposal until its behavior is implemented and documented.
Keep setup instructions reproducible and distinguish available behavior from planned features. Link to the canonical guide rather than copying setup steps into several files. When you change a route, environment variable, data model, or command, update its guide in the same pull request.
Deployment instructions may include dated observations and owner-specific operations. Recheck those observations before acting on them; local development does not require DNS or production hosting changes.