Browse course resources, learn from practical guides, explore career opportunities, and take a short break with free coding games.
Note
The course browser is in place, but no course subjects or notes are published yet. Guides and job listings are also awaiting reviewed content. The two games are playable now. See Current content for details.
- About
- Features
- Current content
- Getting started
- Commands
- Project structure
- Contributing
- Security and privacy
- License and attributions
ProCoderJii is a learning hub for engineering students. The project brings course material, practical learning guides, career listings, and small browser games together in one Next.js website. It is built to make useful, reviewed resources easier to browse and to give contributors a clear path for adding them.
The repository is organized for community contributions: start with the guides below, open an issue to discuss a larger change, and submit a pull request when you are ready.
- Course browser: organize learning material by course, branch, and semester.
- Games: Pattern Sprint and Digit Recall are free to play at
/games. No login is required and scores are not saved between visits. - Guides and jobs: curated sections for practical guides and career opportunities. Only reviewed entries are shown.
- Optional video cards: show recent videos from a public YouTube channel feed when configured.
- Content validation: validate Markdown and MDX content and prevent unsafe HTML from being rendered.
- Responsive interface: browse the site on desktop and mobile.
There are currently no user accounts, database, admin panel, PDF downloads, or chatbot. The contact form opens the visitor's email app; the site does not store submissions.
| Section | Status |
|---|---|
| Course browser | Course, branch, and semester navigation is available; no subjects or notes are published yet. |
| Games | Pattern Sprint and Digit Recall are playable without an account. |
| Guides | No reviewed guides published yet. |
| Jobs | No reviewed listings published yet. |
| Videos | Optional; requires a public YouTube channel ID. |
Sample files under src/content are intentionally not registered as published notes. Please follow the content guide before adding learning material.
- Node.js 22.18 or newer for the full test suite (Node.js 24 is used in CI).
- npm.
- Google Chrome for browser tests. Microsoft Edge can be used with
E2E_CHANNEL=msedge.
Clone the repository and install its locked dependencies:
git clone https://github.com/Coding-Professional/procoderji.git
cd procoderji
npm ci
npm run devOpen http://localhost:3000. The site works without environment variables. To show recent videos locally, copy .env.example to .env.local and configure the public YouTube channel ID.
| Variable | Required | Purpose |
|---|---|---|
YOUTUBE_CHANNEL_ID |
No | Enables the latest-video section using the channel's public feed. |
NEXT_PUBLIC_SITE_URL |
No | Overrides the canonical site URL, such as for a staging deployment. |
See deployment documentation for hosting and environment details. Never commit secrets or personal credentials.
| Command | Purpose |
|---|---|
npm run dev |
Start the local development server. |
npm run lint |
Run ESLint. |
npm run typecheck |
Check TypeScript types. |
npm test |
Run unit and content validation tests. |
npm run build |
Create the production build. |
npm run launch-check |
Build and crawl the site, checking links and SEO metadata. |
npm run e2e |
Run browser checks in Chrome on desktop and mobile. |
Browser checks use temporary synthetic content and restore their fixtures when they exit. They refuse to run if src/data or src/content has local changes. The runner and fixtures are documented in e2e/run.mjs and the e2e/ directory.
src/app/ Routes and page layouts (Next.js App Router)
src/components/ Shared UI and page sections
src/content/ Markdown and MDX learning content
src/data/ Course, guide, and job catalogues
src/lib/ Content validation, rendering, SEO, and game logic
e2e/ Browser tests, fixtures, and production crawl checks
docs/ Architecture, content, security, and deployment guides
.github/ CI workflow, issue forms, and pull-request template
.agents/ Optional coding-agent instructions
.claude/ Pointers to canonical agent-tool documentation
seo/ Site-specific search and editorial planning notes
For the system overview, read Architecture. To add or update published notes, read the Content guide.
Contributions are welcome. Please read CONTRIBUTING.md before opening a pull request. For larger changes, open an issue first so the scope can be discussed. Bug reports and feature ideas can use the repository's issue forms.
Contributors are expected to follow the Code of Conduct. Submit original learning content or link to official sources; do not copy notes, job descriptions, papers, or images without permission.
Please report vulnerabilities using the private reporting instructions in SECURITY.md. The site's data handling is described in its privacy policy. For local setup and deployment, see docs/deployment.md.
The project is available under the MIT License. Optional coding-agent tools and their upstream license notices are documented in docs/agent-tools.md and THIRD_PARTY_NOTICES.md.
The private setting in package.json prevents publishing this app as an npm package; it does not control GitHub repository visibility.