Negotiation Practice Platform for Students
An automated weekly negotiation practice platform, built in six hours to handle student pairing, submissions, peer grading, and accountability.
- Role
- Negotiation teacher and solo product builder
- Audience
- Students at The Negotiation Project Amsterdam
- Outcome
- Built in six hours and automated the full weekly practice cycle
- Stack
- Astro · React · Supabase · Tailwind CSS
| Rank | Student | Final | Tech | Result | Conv | Penalty |
|---|---|---|---|---|---|---|
| 1 | Sophie Bakker 🏆 | 4.68 | 4.80 | 4.50 | 4.70 | 0 |
| 2 | Marco de Vries 🥈 | 4.35 | 4.30 | 4.50 | 4.20 | 0 |
| 3 | Anna Kowalski 🥉 | 4.22 | 4.00 | 4.20 | 4.50 | 0 |
| 4 | James Chen | 3.89 | 3.70 | 4.10 | 3.90 | 0 |
| 5 | Fatima Al-Rashid | 3.51 | 3.90 | 3.50 | 3.70 | -0.2 |
| 6 | Lucas Schmidt | 3.05 | 3.20 | 3.60 | 3.50 | -0.4 |
I teach negotiation at The Negotiation Project Amsterdam. In six hours, I built a platform that pairs students, collects recordings, runs peer grading, and manages weekly participation without manual administration.
The cases let students practise techniques from class: setting a clear negotiation agenda and pursuing goals based on the other side’s needs. The result is more deliberate practice outside class without creating another grading bottleneck.
The Problem
My students needed more reps. Negotiations are a skill that improves with deliberate practice, but organizing practice sessions is a logistical nightmare:
Pairing students manually every week is time-consuming. Tracking submissions (did they do it?) is tedious. Grading creates a bottleneck on my time.
I needed a system that runs itself.
The Solution
I built an automated weekly negotiation practice platform.
Weekly Flow
Every Monday, the system opens a new case. Students are randomly paired.
| Monday | Case opens. Pairs announced. |
|---|---|
| Mon-Sat | Students negotiate and record. |
| Saturday 23:59 | Submission deadline. |
| Sunday | Peer grading. |
If you don’t submit, you’re out for next week. This creates accountability.
Dashboard
Students log in to see their current case, partner, and submit their recording.
Peer Grading
On Sunday, students grade each other on Technique, Result, and Conviction (1-5 each). This removes grading from my plate and teaches students to evaluate negotiations critically.
Leaderboard
To make it engaging, there’s a leaderboard. Students see their total score and compete.
This gamification creates motivation without extra effort from me.
| Rank | Student | Final | Tech | Result | Conv | Penalty |
|---|---|---|---|---|---|---|
| 1 | Sophie Bakker 🏆 | 4.68 | 4.80 | 4.50 | 4.70 | 0 |
| 2 | Marco de Vries 🥈 | 4.35 | 4.30 | 4.50 | 4.20 | 0 |
| 3 | Anna Kowalski 🥉 | 4.22 | 4.00 | 4.20 | 4.50 | 0 |
| 4 | James Chen | 3.89 | 3.70 | 4.10 | 3.90 | 0 |
| 5 | Fatima Al-Rashid | 3.51 | 3.90 | 3.50 | 3.70 | -0.2 |
| 6 | Lucas Schmidt | 3.05 | 3.20 | 3.60 | 3.50 | -0.4 |
Opt-in Participation
Students can toggle whether they participate next week. If they don’t confirm, they don’t get paired. Simple.
Tech Stack
Astro + React frontend, Supabase for auth and database, Tailwind CSS for styling, hosted on Vercel.
Supabase was the key decision. It handles authentication (personal passwords for students) and the database in one place, so I did not need to build that infrastructure from scratch.
The system runs itself. I just add new cases each Sunday.