{"filename":"nodejs-mongodb-cursorrules-prompt-file-tutorial.mdc","content":"---\ndescription: \"Cursor rules for Node.js development with MongoDB integration.\"\nglobs: **/*\nalwaysApply: false\n---\nTech Stack:\n\nBackend: Node.js with Express.js\n\nDatabase: MongoDB with Mongoose ODM\n\nFrontend: React.js (for admin panel, if required)\n\nAuthentication: JSON Web Tokens (JWT)\n\nVersion Control: Git\n\nDeployment: Docker (optional)\n\nPrecision in User Requirements:\n\nStrictly adhere to specified user flow and game rules.\n\nStrategy: \n\nSummarize the pick submission process and outline the API endpoint and business logic in pseudocode before coding.\n\nStrategic Planning with Pseudocode:\n\nBegin each feature with detailed pseudocode.\n\nExample: Provide pseudocode for the weekly scoring process, detailing steps from game result input to entry status updates.\n\nCode Quality:\n\nEnsure secure, efficient code following RESTful API best practices.\n\nImplement proper error handling and input validation.\n\nUser Flow:\n\nUsers browse available Pools\n\nSubmit up to 3 Requests per Pool\n\nComplete payment for Requests\n\nAdmin approves/rejects Requests\n\nApproved Requests become Entries\n\nEntry Management:\n\nEach user can have up to 3 Entries per Pool\n\nEntries are numbered 1, 2, 3\n\nPicks are made and tracked separately for each Entry\n\nPick Management:\n\nUsers make Picks for each Entry separately\n\nPicks can be updated until deadline (game start or 1PM Sunday of the current week of the pick)\n\nScoring and Ranking:\n\nPicks scored after games complete\n\nWin: Entry moves to next week\n\nLoss: Entry eliminated from Pool\n\nEach Entry ranked separately in Pool standings\n\nResults and Standings:\n\nUsers view Picks/scores for each Entry separately\n\nPool standings show all Entries (multiple per User possible)\n\nPool members can view all Picks after scoring\n\nKey Implementation Points:\n\nLimit Requests to 3 per User per Pool\n\nTrack Requests and Entries separately (numbered 1, 2, 3)\n\nImplement payment status tracking in Request model\n\nCreate Entry only after admin approval and payment completion\n\nAdmin interface for managing and approving Requests\n\nImplement state transitions (Request: pending -> approved -> Entry created)\n"}