Audience: Admins running the first intern/bootcamp cohort Goal: Create quests → interns choose and complete them → collect UX observations
If you don't have an admin account yet, you need to set the role directly in the database.
Option A — Promote an existing account:
UPDATE users SET role = 'admin' WHERE email = 'your@email.com';Run this in the Neon console at https://console.neon.tech → your project → SQL editor.
Option B — Register normally, then promote:
- Go to
/registerand create an adventurer account - Promote it via the SQL command above
After logging in as admin, you'll be taken to your dashboard. Navigate to /admin to reach the Admin Dashboard.
- Click "Create Quest" in the Phase 1 Quick Actions section
- Fill out the quest form (see field guide below)
- Click "Create Quest" — the quest is immediately live and visible to interns
- Click "Create Quest" in the top-right corner
- Fill out the form
- After saving, you'll be redirected back to
/admin/questswith the new quest in the list
| Field | What to enter | Example |
|---|---|---|
| Quest Title | Short, clear name for the task | "Build a REST API for user authentication" |
| Short Description | 2-3 sentences explaining what needs to be done | "Create a Node.js Express API with JWT auth, user registration, and login endpoints." |
| Detailed Requirements | Step-by-step acceptance criteria | "1. POST /register creates a user. 2. POST /login returns a JWT. 3. Protected route returns user profile." |
| Quest Type | Category of work | Commission (default for real projects) |
| Category | Tech area | Backend, Frontend, Fullstack, etc. |
| Difficulty | F = absolute beginner, S = expert | D or E for most interns |
| Required Skills | Comma-separated tech stack | "Node.js, Express, JWT, PostgreSQL" |
| Minimum Rank | Lock quest to experienced users | Leave as "Any Rank" for Phase 1 |
| Deadline | When work is due | Optional — useful for time-boxed sprints |
| Max Participants | How many interns can take this quest | Set to match your cohort size, or leave at 1 for solo quests |
| XP Reward | Points awarded on completion | 500 XP for small tasks, 1000+ for larger ones |
| Skill Points | Secondary reward | Optional — matches XP roughly (10 SP per 100 XP) |
| Payment (INR) | Cash reward | Leave at 0 for intern pilots |
Tips for good quest descriptions:
- Be explicit about what "done" looks like (acceptance criteria)
- Include links to relevant repos, docs, or designs in Detailed Requirements
- Avoid jargon — assume the intern knows the tech but not your internal processes
- If you expect a specific format (GitHub link, Notion doc, Figma file), say so
- A grid of all available quests
- Filters by difficulty, category, and skills
- Search by keyword
- Each card shows: title, difficulty rank, XP reward, skills, deadline
- "Log in at [your URL]/login with the credentials we sent you"
- "Go to 'Quest Board' in the sidebar"
- "Browse quests, click 'View Details' on one you're interested in"
- "Read the full description and requirements"
- "Click 'Accept Quest' to claim it — only one person can be accepted per slot"
- "Once the quest is yours, submit your work from the same page"
Intern accepts quest → status = "Assigned" (pending admin approval)
Admin accepts the applicant → status = "Started" (intern can now work)
Intern submits work → status = "Under Review"
Admin reviews → Approve / Request Rework / Reject
On approval → XP/SP awarded, intern levels up
- Find the quest in the list — it will show the applicant count
- Click "View" to open the company quest detail page
- Go to the Applicants tab:
- Accept pending applicants to let them start
- Once submitted, you'll see "Work Submitted — awaiting your review"
- Choose: Approve & Award XP / Request Rework / Reject
| Action | Use when |
|---|---|
| Approve & Award XP | Work meets all acceptance criteria |
| Request Rework | Work is close but needs specific changes — add feedback in notes |
| Reject | Work doesn't meet minimum bar and intern should start over |
After each session with interns, add notes while the memory is fresh.
- Find the quest
- Click the "Notes" button (sticky note icon)
- Existing notes appear in the dialog
- Type your observation and click "Save Note"
Capture anything that reveals UX friction or confusion:
- "Intern X didn't understand what 'detailed requirements' meant — consider a tooltip or example"
- "Two interns asked how to check if a quest was already taken"
- "Deadline field was confusing — they thought it was the deadline to apply, not to complete"
- "XP reward didn't mean anything to them yet — should explain the rank system first"
- "Quest description was clear but missing tech stack requirements — interns had to ask"
Notes are timestamped, author-attributed, and admin-only (interns never see them).
Notes are stored per quest. To collect all observations:
- Go to
/admin/quests - For each quest with notes, click "Notes" — copy the content
- Paste into your shared doc or spreadsheet
(A bulk export endpoint is on the Phase 2 roadmap)
After each pilot session, review notes with your team and classify:
- Confusing UI → schedule a UX fix
- Missing content → update quest descriptions or add tooltips
- Missing feature → add to Phase 2 backlog
- Works well → document as a pattern to replicate
When transitioning to Phase 2 (external organizations create their own quests):
- Remove the
adminrole requirement workaround — organizations should usecompanyaccounts - Add guided quest creation wizard (replaces the current form)
- Add tooltips to every form field
- Add "Preview Quest" button to show how the quest appears to adventurers
- Add email notifications when adventurers apply and when work is submitted
- Add progress tracking within a quest (milestone check-ins)
- Build analytics dashboard for organizations (applications per quest, time to completion)
- Incorporate observation notes into product roadmap decisions
- Make sure you're logged in and your account has
role = 'admin'in the DB - Navigate to
/admin— if you see the admin dashboard, your role is correct - Use the "Create Quest" button from
/admin, not from/dashboard/company
- Go to
/admin/questsand check quest statuses - Quests must have status
availableto appear on the board - The quest board at
/dashboard/questsfilters bystatus=availableby default
- The intern needs to go to
/dashboard/my-quests - Their assignment has status
assigned(pending your acceptance) - Go to
/admin/quests→ View quest → Applicants tab → Accept the intern
- The assignment must be in
submittedorreviewstatus - The adventurer must have clicked "Submit Quest" from their quest detail page
- Refresh the page if buttons aren't appearing after submission
- Run
npm run type-checklocally — fix all errors before pushing - Check
NEXTAUTH_URLis set to your production domain on Vercel - Check all 5 required env vars are set in Vercel project settings