Lab Student
A hands-on workshop where you fork this repo, open a Codespace, and across four labs: configure Copilot, implement a feature, and deploy to GitHub Pages. By the end of the day you have a live personal dashboard showing your AI experiment results.
An AI Experiment Log — a web app that tracks your experiments with AI coding tools. Each entry records the tool you used, what you tried, what happened, and your verdict. The app includes:
- A scrollable log of all experiments
- A dashboard with verdict breakdown and tool comparison charts
- A form to add new entries
- An API that reads/writes a JSON data file
The repo ships three backend implementations (Node, Python, .NET) so you can pick the language you are most comfortable with.
├── .devcontainer/ # Codespace configuration (Node 22, Python 3.13, .NET 10)
├── .github/
│ ├── ISSUE_TEMPLATE/ # Feature request template
│ └── workflows/ # CI and deploy workflows (workflow_dispatch)
├── data/
│ └── experiments.json # Shared data file (2 starter entries)
├── frontend/ # SPA (HTML + JS + CSS, Chart.js)
├── node/ # Express API on port 3000
├── python/ # Flask API on port 5000
├── dotnet/ # ASP.NET Core API on port 5001
└── labs/ # Lab instructions (0–3)
- Click Fork at the top of this repo
- In your fork, click Code → Codespaces → Create codespace on main
- Wait for the container to build (installs all three language dependencies)
Node (port 3000):
cd node
npm install
npm startPython (port 5000):
cd python
pip install -r requirements.txt
python -m flask run --port 5000.NET (port 5001):
cd dotnet
dotnet runOnce the API is running, click the globe icon next to the forwarded port in the Ports tab. You should see the app with two starter entries and a "Summary not yet available" message on the dashboard.
Note: The frontend defaults to
http://localhost:3000. If you are using Python or .NET, update theAPI_BASEvariable infrontend/app.jsto match your port.
This workshop is designed to work with the Copilot free tier (2,000 completions + 50 premium requests/month). All Core labs are completable using inline completions only — zero premium requests required.
Want unlimited chat for today? GitHub offers a 30-day free Copilot Pro trial.
| Lab | Topic | Time |
|---|---|---|
| Lab 0 | Codespaces — fork, launch, run | 55 min |
| Lab 1 | Copilot config — instructions & prompt files | 55 min |
| Lab 2 | Feature — implement the summary endpoint (core sprint) | 30 min |
| Lab 3 | CI — workflow structure & triggers | 60 min |
| Lab 4 | Deploy — GitHub Pages & Marketplace actions | 45 min |
Each lab has Core (everyone completes) and Challenge (stretch goal) tiers, each available in Guided (step-by-step) or Self-directed (goal only) mode.
Test frameworks are pre-installed but no test files exist yet — writing your first test is a Lab 2 challenge.
# Node (Jest)
cd node && npm test
# Python (pytest)
cd python && pytest
# .NET (xUnit)
cd dotnet/Api.Tests && dotnet test