nodejs mongodb cursorrules prompt file tutorial
via PatrickJS/awesome-cursorrules
Node.js + MongoDB setup for multi-entry pool management with JWT auth and request/entry workflows.
What is nodejs mongodb cursorrules prompt file tutorial?
Establishes a Node.js/Express backend with MongoDB/Mongoose for a competitive pools application. Use this rule when building features around user requests, entry management, pick submissions, and scoring workflows with strict state transitions and per-entry tracking.
- Enforce 3-request and 3-entry limits per user per pool with separate tracking and numbering
- Manage request state transitions (pending → approved → entry created) with payment and admin approval requirements
- Implement pick submission and updates with deadline enforcement (game start or 1PM Sunday)
- Track scoring, win/loss outcomes, and per-entry ranking in pool standings
- Provide admin interface for request approval and entry management
- Enforce RESTful API design with JWT authentication, input validation, and error handling
Applies to
File patterns this rule matches.
Rule definition (reference)
Source of truth, from the repository.
Tech Stack:
Backend: Node.js with Express.js
Database: MongoDB with Mongoose ODM
Frontend: React.js (for admin panel, if required)
Authentication: JSON Web Tokens (JWT)
Version Control: Git
Deployment: Docker (optional)
Precision in User Requirements:
Strictly adhere to specified user flow and game rules.
Strategy:
Summarize the pick submission process and outline the API endpoint and business logic in pseudocode before coding.
Strategic Planning with Pseudocode:
Begin each feature with detailed pseudocode.
Example: Provide pseudocode for the weekly scoring process, detailing steps from game result input to entry status updates.
Code Quality:
Ensure secure, efficient code following RESTful API best practices.
Implement proper error handling and input validation.
User Flow:
Users browse available Pools
Submit up to 3 Requests per Pool
Complete payment for Requests
Admin approves/rejects Requests
Approved Requests become Entries
Entry Management:
Each user can have up to 3 Entries per Pool
Entries are numbered 1, 2, 3
Picks are made and tracked separately for each Entry
Pick Management:
Users make Picks for each Entry separately
Picks can be updated until deadline (game start or 1PM Sunday of the current week of the pick)
Scoring and Ranking:
Picks scored after games complete
Win: Entry moves to next week
Loss: Entry eliminated from Pool
Each Entry ranked separately in Pool standings
Results and Standings:
Users view Picks/scores for each Entry separately
Pool standings show all Entries (multiple per User possible)
Pool members can view all Picks after scoring
Key Implementation Points:
Limit Requests to 3 per User per Pool
Track Requests and Entries separately (numbered 1, 2, 3)
Implement payment status tracking in Request model
Create Entry only after admin approval and payment completion
Admin interface for managing and approving Requests
Implement state transitions (Request: pending -> approved -> Entry created)
Related rules
Senior full-stack TypeScript, React, Node.js guidance with clean architecture, testing, and WHY-oriented reasoning.
Quantitative factor research skills for designing, evaluating, and mining alpha factors in equities markets.
Android development with Jetpack Compose, clean architecture, and Material Design 3.
Angular development with Novo Elements UI library using standalone components.
Expert Angular 18 + TypeScript development with Jest, emphasizing clean code and performance.
Manage Kubernetes clusters, add-ons, stacks, and credentials via the Ankra CLI platform.