feat: implement project detail page with lifecycle, scoring, and moderation#28
feat: implement project detail page with lifecycle, scoring, and moderation#28Pranavkale11 wants to merge 1 commit intoNexGenStudioDev:masterfrom
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a new project detail page, including components for project overview, moderation, scoring, and activity tracking, along with a mock API for state management. The review identified several security and robustness issues: potential XSS vulnerabilities in URL rendering, a lack of deduplication for the tech stack input, potential runtime errors when formatting invalid dates, and a need for better handling of NaN values in the score clamping logic.
|
@Pranavkale11 please fix issue suggest by ai first |
|
@Pranavkale11 hii |
|
Hello @abhishek-nexgen-dev , |
|
@Pranavkale11 okay let me Review it once again |
|
@Pranavkale11 bro What's the update |
|
Hi @abhishek-nexgen-dev 👋 Sorry for the delay in updating the PR. The refactor and requested changes are now completed 🚀 |

#20
Project Detail Page (Full Lifecycle Support)
Implemented a production-ready project detail page that supports the complete lifecycle of a hackathon project, including submission, scoring, moderation, and evaluation tracking.
Features
Role-Based System
Participant → submit, edit, delete (draft only)
Judge → score assigned projects
Organizer/Admin → approve, reject, delete projects
Project View
Overview (description, tech stack, links)
Team details
Submission metadata
Attachments and resources
Submission Flow
Draft → Submitted transition
Validation before submission
Editing locked after submission
Scoring System (Judge)
Innovation, Technical, Design, Impact (0–10)
Auto-calculated total score
Feedback support
Prevents duplicate scoring
Editable before deadline
Moderation Panel
Approve / Reject / Delete project
Restricted to organizer/admin roles
Enforces lifecycle rules
Score Aggregation
Average score calculation
Multi-judge support
Timeline
Tracks key events:
Created
Edited
Submitted
Scored
Approved / Rejected
Key Fixes (Based on Review)
Enforced lifecycle rules:
Scoring only allowed after submission
Moderation only allowed after submission
Added API-level validation to prevent invalid actions
Fixed deleted project handling
Resolved minor UI issues (timeline rendering)
Testing
Test using:
/projects/project-nebula?role=participant
/projects/project-orbit?role=judge
/projects/project-orbit?role=organizer
/projects/project-orbit?role=admin
Note
There are pre-existing TypeScript/build issues in unrelated modules (auth/UI).
These were not modified in this PR.
Happy to address them in a separate PR if required.