§ masterplan.md
Campus Skill Swap
A playful marketplace where students trade skills instead of money: one hour of Python help for one hour of graphic design.
01
App overview and objectives
A campus marketplace where the currency is time, not money: one hour of Python tutoring buys one hour of graphic design. The objective is to make peer learning liquid inside a single institution.
02
The problem worth solving
Students are simultaneously rich in one skill and poor in another, and cash makes peer help awkward. A time-credit system removes the money conversation and turns idle expertise into a circulating resource.
03
Target audience
- Primary — Undergraduates who want help with coursework and skills outside their department.
- Secondary — Clubs and departments that want to formalise peer mentoring.
04
Roles and permissions
- Visitor — read-only public pages, can sign up.
- Member — owns their own records, cannot see other users' data.
05
Core features
- Skill listings with level, format (online/in person) and availability
- Time-credit wallet — earn an hour by teaching, spend an hour by learning
- Matching and booking with a shared calendar and reminders
- Session confirmation by both sides before credits transfer
- Reputation from reviews plus a visible reliability score
- Leaderboard and badges for top contributors each month
Deliberately later
- Group workshops for multiple credits
- Department-sponsored credit grants
- Cross-campus federation
06
Technical stack
React front end, Postgres with strict transactional rules for the credit ledger, institutional email verification for sign-up.
Why: A currency needs an auditable ledger — credits must move in database transactions, never as a mutable balance field.
Alternatives: A chat group with a spreadsheet (zero cost, collapses past 50 users) or a full marketplace with money (regulatory burden, kills the culture).
07
Conceptual data model
User — profile, department, batch, skills offered, skills wanted
Listing — user, skill, level, format, availability windows
Booking — listing, learner, slot, status, both-side confirmations
LedgerEntry — from user, to user, hours, booking, created_at
Review — booking, rating, comment, tags
08
Integrations
- Institutional email verification
- Calendar invitations
- Push or email reminders
09
UI design principles
- Rounded shapes, bright accent colours, springy micro-animations on every tap.
- Reward progress visually — confetti, badges, character reactions.
- Copy is short, warm and second-person; never corporate.
10
Security considerations
- Verified campus email required, so the network stays closed and accountable.
- Report and block flows on every profile; safety guidelines shown before the first in-person booking.
- Ledger is append-only; balances are computed, never edited directly.
11
Development phases
Phase 1 — Prove the core
- — Skill listings with level, format (online/in person) and availability
- — Time-credit wallet — earn an hour by teaching, spend an hour by learning
- — Matching and booking with a shared calendar and reminders
- — Static content and design system in place
- — Basic analytics
Phase 2 — Make it real
- — Session confirmation by both sides before credits transfer
- — Reputation from reviews plus a visible reliability score
- — Leaderboard and badges for top contributors each month
- — Accounts, sign-in and password reset
- — Empty, loading and error states everywhere
Phase 3 — Polish and launch
- — Performance, accessibility and SEO pass
- — Legal pages, contact route and 404 handling
- — Wire up: Institutional email verification
- — Wire up: Calendar invitations
Phase 4 — Grow
- — Group workshops for multiple credits
- — Department-sponsored credit grants
- — Cross-campus federation
12
Challenges and solutions
Risk — Credit inflation and hoarding
Solution — Credits expire after a semester and new users get a small starting grant.
Risk — No-shows
Solution — Reliability score, automatic reminders, and a penalty for repeated no-shows.
Risk — Cold start with too few listings
Solution — Launch inside one department with seeded tutors before opening campus-wide.
13
Future expansion
- Alumni participation
- Skill certification with faculty endorsement
- Job-board integration
14
Page list (13 pages)
- 01 PUBLIC Browse Skills — Search and filter who can teach what, when.
- 02 APP (signed in) My Swaps — Upcoming and past sessions plus the credit wallet.
- 03 PUBLIC Schedule — Booking flow and calendar view.
- 04 PUBLIC Leaderboard — Monthly top teachers and badges.
- 05 PUBLIC Guidelines — Safety, conduct and how credits work.
- 06 AUTH Sign up — Create an account with email or a social provider.
- 07 AUTH Log in — Return to the account, with error and lockout states.
- 08 AUTH Reset password — Request a reset link and set a new password.
- 09 APP (signed in) Account settings — Profile, email, password, language and delete account.
- 10 PUBLIC Contact — Contact form plus real address, phone and email.
- 11 LEGAL & SYSTEM Privacy policy — What data is collected, why, and how to remove it.
- 12 LEGAL & SYSTEM Terms of service — Rules of use, liability and account termination.
- 13 LEGAL & SYSTEM 404 not found — Friendly dead end with search and links back.
15
Page map
PUBLIC AUTH APP (signed in) LEGAL & SYSTEM ──────────────── ───────────────── ─────────────────── ─────────────────── ├─ Browse Skills ├─ Sign up ├─ My Swaps ├─ Privacy policy ├─ Schedule ├─ Log in └─ Account settings ├─ Terms of service ├─ Leaderboard └─ Reset password └─ 404 not found ├─ Guidelines └─ Contact key flows: Browse Skills ──▶ Schedule Schedule ──▶ My Swaps My Swaps ──▶ Leaderboard Guidelines ──▶ Browse Skills
