Added a "View Project Workspace" button on the Job Detail page for recruiters to easily access active projects and view milestone submissions.
Before: Recruiters viewing their job details couldn't easily navigate to the active project to see milestone submissions.
After: Recruiters now see a prominent button that takes them directly to the project workspace where they can:
- View milestone submissions
- Download uploaded files
- Review freelancer work
- Approve or request revisions
- Release payments
-
Navigate to Job Detail Page
- Go to "My Jobs" from dashboard
- Click on any active job
-
See Project Status
- If job has an active project, a new card appears:
┌─────────────────────────────────────┐ │ ✓ Project In Progress │ │ │ │ View milestone submissions and │ │ manage project progress │ │ │ │ [View Project Workspace] │ └─────────────────────────────────────┘ -
Click "View Project Workspace"
- Instantly navigates to project workspace
- See all milestones and their statuses
- View submitted work with files and links
-
Review Submissions
- See description, files, and links
- Download files
- Approve or request revision
- Release payment
Job Detail Page
↓
[View Project Workspace] button
↓
Project Workspace Page
↓
See Milestone Submissions
↓
- Description
- Uploaded Files (downloadable)
- Links (clickable)
- Approve/Revise buttons
┌──────────────────────────────────────────────┐
│ Job Title: Web Design Project │
│ Status: active │
│ Payment: 3.00 SOL │
├──────────────────────────────────────────────┤
│ [Job Description and Details] │
├──────────────────────────────────────────────┤
│ ✓ Project In Progress │
│ │
│ View milestone submissions and │
│ manage project progress │
│ │
│ ┌──────────────────────────────────────┐ │
│ │ View Project Workspace │ │
│ └──────────────────────────────────────┘ │
└──────────────────────────────────────────────┘
┌──────────────────────────────────────────────┐
│ Project: Web Design Project │
│ Freelancer: John Doe │
├──────────────────────────────────────────────┤
│ Stage 1: Initial Work [submitted] │
│ │
│ ✓ Submitted Work │
│ "Completed initial wireframes..." │
│ │
│ Uploaded Files: │
│ 📥 wireframes.pdf │
│ 📥 mockups.png │
│ │
│ Links: │
│ 🔗 https://github.com/user/project │
│ │
│ Submitted 2 hours ago │
│ │
│ [✓ Approve & Release Payment] │
│ [✗ Request Revision] │
└──────────────────────────────────────────────┘
-
State Management (
JobDetail.tsx)- Added
activeProjectIdstate - Fetches active project for the job
- Added
-
API Call
- Calls
apiClient.projects.getMyProjects() - Finds project matching job ID and status 'active'
- Calls
-
UI Component
- New card with "View Project Workspace" button
- Only shows for:
- Recruiters (userRole === "recruiter")
- Job owner (job.recruiter_id === user.id)
- Active projects (activeProjectId exists)
-
Navigation
- Button navigates to
/projects/${activeProjectId} - Opens project workspace with all milestone details
- Button navigates to
| Condition | Shows Button? |
|---|---|
| Recruiter viewing own job | ✅ Yes (if project active) |
| Recruiter viewing other's job | ❌ No |
| Freelancer viewing job | ❌ No |
| Job has no active project | ❌ No |
| Job status is "open" | ❌ No |
| Job status is "active" with project | ✅ Yes |
- ✅ Quick access to project workspace
- ✅ No need to search through dashboard
- ✅ Direct link from job to active project
- ✅ Clear indication that project is in progress
- ✅ Easy milestone review workflow
- ✅ Better UX and navigation
- ✅ Reduced clicks to reach project
- ✅ Clear visual feedback
- ✅ Consistent with platform design
Scenario: Recruiter wants to review milestone submission
Old Way:
- Go to Job Detail page
- Go back to Dashboard
- Find "Active Projects" section
- Scroll to find the project
- Click project
- View milestone
New Way:
- Go to Job Detail page
- Click "View Project Workspace"
- View milestone ✅
Saved: 4 steps and ~30 seconds!
Recruiters can now easily access active projects directly from the Job Detail page with a single click. The "View Project Workspace" button appears automatically when:
- Job has an active project
- User is the recruiter who posted the job
This provides seamless navigation to view milestone submissions, uploaded files, and manage project progress! 🎉