fix: better order
This commit is contained in:
@@ -1,205 +1,178 @@
|
||||
# Les 18: Eindopdracht Intro, Planning & Advanced Topics
|
||||
|
||||
> 📋 **Lesmateriaal nog niet uitgewerkt**
|
||||
>
|
||||
> De volgende bestanden worden gegenereerd wanneer deze les wordt uitgewerkt:
|
||||
> - Les18-Slide-Overzicht.md
|
||||
> - Les18-Lesplan.md
|
||||
> - Les18-Bijlage-A-Lesopdracht.md
|
||||
> - Les18-Bijlage-B-Huiswerkopdracht.md
|
||||
# Les 18: Eindproject Werksessie
|
||||
|
||||
---
|
||||
|
||||
## Hoofdstuk
|
||||
**Hoofdstuk 3: Advanced** (Les 8-18)
|
||||
**Hoofdstuk 3: Advanced** (Les 10-18)
|
||||
|
||||
## Beschrijving
|
||||
Voorbereiden op eindproject - culminatie van alles geleerd.
|
||||
Werksessie voor het afronden van je eindproject. Geen nieuwe theorie - focus op bouwen, vragen stellen, en hulp krijgen.
|
||||
|
||||
---
|
||||
|
||||
## Te Behandelen
|
||||
## Opzet van de Les
|
||||
|
||||
### Eindopdracht Walkthrough
|
||||
- 10 project opties
|
||||
- Complexiteit niveaus
|
||||
- Vereiste features
|
||||
### Korte Standup (15 min)
|
||||
|
||||
### Requirements Deep Dive
|
||||
- Verplichte onderdelen
|
||||
- Bonus punten
|
||||
- Grading rubric
|
||||
**Elke student deelt (max 1 minuut):**
|
||||
1. Waar sta ik?
|
||||
2. Wat is mijn grootste blocker?
|
||||
3. Wat wil ik vandaag afronden?
|
||||
|
||||
### Timeline & Realistic Planning
|
||||
- 2 weken
|
||||
- Dagelijkse milestones
|
||||
### Werktijd (1u 45min)
|
||||
|
||||
### Hoe Juiste Project Kiezen
|
||||
**Studenten werken zelfstandig:**
|
||||
- Docent loopt rond
|
||||
- Vraag hulp wanneer nodig
|
||||
- Peer support aangemoedigd
|
||||
|
||||
Overweeg:
|
||||
- Interesse
|
||||
- Skills
|
||||
- Ambitie
|
||||
- Uniciteit
|
||||
|
||||
### Project Planning met Cursor
|
||||
AI als planning partner:
|
||||
- Break down user stories
|
||||
- Schat complexiteit
|
||||
- Prioriteer MVP
|
||||
- Maak timeline
|
||||
- Identificeer risico's
|
||||
|
||||
### Database Schema Design Workshop
|
||||
|
||||
**Interactieve sessie:**
|
||||
- Studenten stellen voor
|
||||
- Klas bekritiseert
|
||||
- AI suggereert
|
||||
- Leer van elkaar
|
||||
|
||||
**Veel Voorkomende Patterns:**
|
||||
- User management
|
||||
- Content ownership
|
||||
- Many-to-many
|
||||
- Soft deletes
|
||||
- Timestamps
|
||||
|
||||
**Gebruik Supabase skill voor schema generatie**
|
||||
|
||||
**RLS Policy Patterns**
|
||||
|
||||
### Geavanceerde Architecture Patterns
|
||||
- Feature-based folders
|
||||
- API route organisatie
|
||||
- State management strategieën
|
||||
- Component patterns
|
||||
|
||||
### Code Organisatie
|
||||
- Project structuur die schaalt
|
||||
- Documentatie die belangrijk is
|
||||
- Git workflow
|
||||
|
||||
### Accessibility Deep Dive
|
||||
|
||||
**WCAG Compliance:**
|
||||
- A (minimum)
|
||||
- AA (doel) ✓
|
||||
- AAA (excellent)
|
||||
|
||||
**Focus areas:**
|
||||
- Keyboard navigatie
|
||||
- Screen readers
|
||||
- Color contrast
|
||||
- Forms accessibility
|
||||
|
||||
### Final Polish Workshop
|
||||
- Code quality review met Cursor
|
||||
- Bug hunting
|
||||
- UI/UX polish
|
||||
- Performance check
|
||||
**Focus gebieden:**
|
||||
- Features afronden
|
||||
- Bugs fixen
|
||||
- Documentatie completeren
|
||||
- Presentatie skills
|
||||
- Deployment issues oplossen
|
||||
|
||||
---
|
||||
|
||||
## Veelvoorkomende Problemen
|
||||
|
||||
### AI Chat Werkt Niet
|
||||
|
||||
**Check:**
|
||||
1. API key correct in `.env.local`?
|
||||
2. API key ook in Vercel env vars?
|
||||
3. Correct model gekozen?
|
||||
4. API route syntax correct?
|
||||
|
||||
### Auth Werkt Niet in Productie
|
||||
|
||||
**Check:**
|
||||
1. Redirect URLs in Supabase toegevoegd?
|
||||
2. Beide URLs: met en zonder trailing slash?
|
||||
3. Wildcard (`**`) voor sub-routes?
|
||||
|
||||
### Deployment Faalt
|
||||
|
||||
**Check:**
|
||||
1. `npm run build` lokaal succesvol?
|
||||
2. Alle TypeScript errors gefixed?
|
||||
3. Alle env vars in Vercel?
|
||||
|
||||
### Supabase Data Toont Niet
|
||||
|
||||
**Check:**
|
||||
1. RLS policies correct?
|
||||
2. Correct env vars?
|
||||
3. Supabase client correct geïnitialiseerd?
|
||||
|
||||
---
|
||||
|
||||
## Documentatie Checklist
|
||||
|
||||
**PROMPT-LOG.md (minimaal 10 entries):**
|
||||
- [ ] Prompts die goed werkten
|
||||
- [ ] Prompts die NIET werkten (en wat je leerde)
|
||||
- [ ] Verschillende tools gebruikt
|
||||
|
||||
**AI-DECISIONS.md (minimaal 5 entries):**
|
||||
- [ ] Database schema beslissing
|
||||
- [ ] UI/UX keuzes
|
||||
- [ ] Technische trade-offs
|
||||
- [ ] Problemen en oplossingen
|
||||
|
||||
**README.md:**
|
||||
- [ ] Project beschrijving
|
||||
- [ ] Features lijst
|
||||
- [ ] Tech stack
|
||||
- [ ] Setup instructies
|
||||
- [ ] Productie URL
|
||||
|
||||
---
|
||||
|
||||
## Peer Review (optioneel)
|
||||
|
||||
**Als je klaar bent, help een klasgenoot:**
|
||||
1. Test hun app
|
||||
2. Geef feedback
|
||||
3. Help met bugs
|
||||
|
||||
---
|
||||
|
||||
## Afsluiting (laatste 10 min)
|
||||
|
||||
**Check-out:**
|
||||
- Wie is klaar?
|
||||
- Wie heeft nog vragen?
|
||||
- Deadline reminder
|
||||
|
||||
---
|
||||
|
||||
## Tools
|
||||
- Cursor
|
||||
- Supabase
|
||||
- Skills.sh
|
||||
- Planning tools
|
||||
- Alle geleerde tools
|
||||
- Elkaar!
|
||||
|
||||
---
|
||||
|
||||
## Lesopdracht (2 uur)
|
||||
|
||||
### Plan Je Eindopdracht
|
||||
### Werk aan je Eindproject
|
||||
|
||||
### Phase 1: Project Selectie (30 min)
|
||||
- Review alle 10 opties
|
||||
- Kies ÉÉN
|
||||
- Documenteer redenering
|
||||
**Dit is WERKTIJD.**
|
||||
|
||||
### Phase 2: Gedetailleerde Planning met AI (1 uur)
|
||||
Er is geen specifieke opdracht behalve: werk aan je eindproject.
|
||||
|
||||
**Gebruik Cursor + Claude Projects/Custom GPT**
|
||||
**Prioriteiten:**
|
||||
1. ❌ Wat werkt nog niet? → Fix het
|
||||
2. ✅ Wat werkt al? → Maak het af
|
||||
3. 📝 Documentatie → Vul aan
|
||||
|
||||
| Stap | Output |
|
||||
|------|--------|
|
||||
| Feature Breakdown | User stories lijst |
|
||||
| Database Schema Design | Schema met AI + Supabase skill |
|
||||
| Architecture Planning | Folder structuur, patterns |
|
||||
| Timeline | Dagelijkse milestones |
|
||||
**Vraag hulp:**
|
||||
- Als je langer dan 15 minuten vastloopt
|
||||
- Als je niet weet waar te beginnen
|
||||
- Als je feedback wilt op je aanpak
|
||||
|
||||
### Phase 3: Project Setup (30 min)
|
||||
|
||||
- GitHub repo aanmaken
|
||||
- Initialiseer Next.js
|
||||
- Install dependencies
|
||||
- Setup .cursorrules
|
||||
- README met plan
|
||||
- Supabase project (tables + RLS)
|
||||
- Install Skills
|
||||
- Deploy initiële versie
|
||||
- Commit
|
||||
**Aan het eind van de les:**
|
||||
- App werkt in productie
|
||||
- Of: je weet precies wat nog moet gebeuren
|
||||
|
||||
### Deliverable
|
||||
- Project Proposal Document
|
||||
- Initiële repo setup compleet
|
||||
- Voortgang op eindproject
|
||||
- Duidelijk beeld van wat nog moet
|
||||
|
||||
---
|
||||
|
||||
## Huiswerk (2 uur)
|
||||
## Huiswerk
|
||||
|
||||
### Start Bouwen Core Features
|
||||
### Rond Je Eindproject Af
|
||||
|
||||
### Week 1 Doelen
|
||||
- Auth compleet
|
||||
- Database schema
|
||||
- Core feature #1
|
||||
- Basis layout + navigatie
|
||||
**Dit is de laatste les. Alles wat nog moet, doe je zelfstandig.**
|
||||
|
||||
### Deze Week's Taken
|
||||
1. Supabase Auth setup
|
||||
2. Database implementatie
|
||||
3. Basis layout
|
||||
4. Eerste core feature
|
||||
**Checklist voor inleveren:**
|
||||
- [ ] App werkt op productie URL
|
||||
- [ ] Login/logout werkt
|
||||
- [ ] CRUD operaties werken
|
||||
- [ ] AI feature werkt
|
||||
- [ ] PROMPT-LOG.md heeft 10+ entries
|
||||
- [ ] AI-DECISIONS.md heeft 5+ entries
|
||||
- [ ] README is compleet
|
||||
- [ ] Code is opgeruimd
|
||||
|
||||
### Requirements
|
||||
- Gebruik Cursor + Composer + Skills extensief
|
||||
- Commit frequent
|
||||
- Test elke feature
|
||||
- Documenteer blockers
|
||||
**Tips:**
|
||||
- Test alles als "nieuwe gebruiker"
|
||||
- Vraag iemand anders om te testen
|
||||
- Check of alles in productie werkt (niet alleen lokaal)
|
||||
|
||||
### Deliverable
|
||||
- Progress update (250 woorden)
|
||||
- GitHub repo
|
||||
- Deployed preview URL
|
||||
|
||||
---
|
||||
|
||||
## 10 Eindopdracht Opties (Referentie)
|
||||
|
||||
1. Task Management App
|
||||
2. Personal Finance Tracker
|
||||
3. Recipe Collection App
|
||||
4. Fitness Tracker
|
||||
5. Event Planning Platform
|
||||
6. Learning Management System
|
||||
7. Portfolio Builder
|
||||
8. Job Application Tracker
|
||||
9. Travel Planner
|
||||
10. Habit Tracker
|
||||
|
||||
*(Details per optie in aparte eindopdracht document)*
|
||||
- Complete eindopdracht
|
||||
- Ingeleverd voor deadline
|
||||
|
||||
---
|
||||
|
||||
## Leerdoelen
|
||||
Na deze les kan de student:
|
||||
- Een geschikt eindproject kiezen
|
||||
- Gedetailleerd plannen met AI assistance
|
||||
- Database schema's ontwerpen met best practices
|
||||
- Geavanceerde architecture patterns toepassen
|
||||
- Accessibility requirements implementeren (WCAG AA)
|
||||
- Een project opzetten met alle geleerde tools en technieken
|
||||
- Zelfstandig problemen oplossen
|
||||
- Hulp vragen wanneer nodig
|
||||
- Een project afronden en inleveren
|
||||
- Documentatie completeren
|
||||
- Peer feedback geven en ontvangen
|
||||
|
||||
Reference in New Issue
Block a user