feat: implement project detail page with lifecycle, scoring, and moderation#28
Open
Pranavkale11 wants to merge 1 commit intoNexGenStudioDev:masterfrom
Open
feat: implement project detail page with lifecycle, scoring, and moderation#28Pranavkale11 wants to merge 1 commit intoNexGenStudioDev:masterfrom
Pranavkale11 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.
Member
|
@Pranavkale11 please fix issue suggest by ai first |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#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.