6.0 KiB
Les 12: Introduction to Cursor
Hoofdstuk
Deel 3: AI Tooling & Prototyping (Les 10-12)
Beschrijving
Kennismaking met Cursor - de professionele AI code editor. Leer de core features en ontdek waarom dit de tool is voor serieuze AI-assisted development.
Te Behandelen
Groepsdiscussie (15 min)
Bespreek klassikaal de prototype ervaringen uit Les 11 - welke workflow patterns werkten goed? Wat ging fout en hoe loste je dat op?
Waarom Cursor?
Tot nu toe gebruikten we:
- OpenCode (gratis, goed voor leren)
- Claude Desktop (voor agents en projects)
Cursor is de volgende stap:
- Purpose-built voor AI-assisted coding
- Professionele editor (gebaseerd op VS Code)
- Superieure AI integratie
- Free tier beschikbaar (voldoende voor de cursus)
Free vs Pro
| Aspect | Free Tier | Pro ($20/maand) |
|---|---|---|
| Tab completion | ✅ | ✅ |
| CMD+K edits | Beperkt | Onbeperkt |
| Chat | Beperkt | Onbeperkt |
| Composer | Beperkt | Onbeperkt |
| Models | GPT-5, Claude | Alle modellen |
Voor deze cursus: Free tier is voldoende!
Installatie
- Ga naar cursor.sh
- Download voor jouw OS
- Installeer
- Open Cursor
- Sign in met GitHub
Eerste keer:
- Cursor vraagt om settings te importeren van VS Code (optioneel)
- Accept default keybindings
Core Features
1. Tab Completion
AI-powered autocomplete die hele blokken code voorspelt.
Hoe het werkt:
- Begin met typen
- Cursor suggereert code in grijs
- Druk Tab om te accepteren
- Druk Escape om te negeren
Tip: Schrijf een comment over wat je wilt, en Tab completion vult de code in.
// Function that calculates the total price with tax
// [Tab completion vult de functie in]
2. CMD+K (Inline Editing)
Selecteer code en vraag AI om het aan te passen.
Hoe het werkt:
- Selecteer code (of zet cursor op een regel)
- Druk CMD+K (Mac) of Ctrl+K (Windows)
- Typ je instructie
- Enter om te genereren
- Accept of Reject de wijziging
Voorbeelden:
- "Add error handling"
- "Convert to TypeScript"
- "Make this responsive"
- "Add loading state"
3. Chat (Sidebar)
Converseer met AI over je code.
Hoe het werkt:
- CMD+Shift+L opent Chat
- Stel je vraag
- AI heeft context van je open file
Voorbeelden:
- "Explain what this function does"
- "How can I optimize this?"
- "What's wrong with this code?"
4. @ Mentions
Refereer naar files, folders, of documentatie.
Syntax:
@filename.tsx- specifieke file@folder/- hele folder@Docs- officiële docs zoeken@Web- web zoeken
Voorbeeld:
@components/Button.tsx - How can I add a loading prop to this?
5. Composer Mode
Multi-file generatie in één keer.
Hoe het werkt:
- CMD+I opent Composer
- Beschrijf wat je wilt bouwen
- AI genereert meerdere files tegelijk
- Review en accept changes
Wanneer gebruiken:
- Nieuwe features met meerdere components
- Refactoring over meerdere files
- Boilerplate code genereren
Workflow Vergelijking
| Taak | OpenCode | Cursor |
|---|---|---|
| Snelle fix | Chat | CMD+K |
| Nieuwe component | Chat | Tab completion + CMD+K |
| Multi-file feature | Meerdere chats | Composer |
| Code uitleg | Chat | Chat + @ mentions |
| Refactoring | Chat | CMD+K of Composer |
Keyboard Shortcuts Cheat Sheet
| Actie | Mac | Windows |
|---|---|---|
| Tab completion accept | Tab | Tab |
| Inline edit | CMD+K | Ctrl+K |
| Open Chat | CMD+Shift+L | Ctrl+Shift+L |
| Open Composer | CMD+I | Ctrl+I |
| Accept suggestion | CMD+Y | Ctrl+Y |
| Reject suggestion | CMD+N | Ctrl+N |
Tools
- Cursor
- GitHub
Lesopdracht (2 uur)
Cursor Verkennen
Deel 1: Setup (20 min)
- Download en installeer Cursor
- Sign in met GitHub
- Open je Todo app project
- Verken de interface
Deel 2: Tab Completion (30 min)
Maak nieuwe file src/components/LoadingSpinner.tsx:
- Typ comment:
// Loading spinner component with size prop - Laat Tab completion de rest doen
- Itereer met meer comments
- Noteer: hoe goed is de completion?
Deel 3: CMD+K Oefenen (30 min)
Open je TodoList component:
- Selecteer de list rendering code
- CMD+K → "Add loading state with skeleton"
- Selecteer een button
- CMD+K → "Add disabled state while loading"
- Selecteer een function
- CMD+K → "Add try-catch with error toast"
Noteer wat werkt en wat niet.
Deel 4: Chat + @ Mentions (20 min)
- Open Chat (CMD+Shift+L)
- Vraag: "@TodoList.tsx What could I improve in this component?"
- Vraag: "@lib/supabase.ts How do I add real-time subscriptions?"
- Probeer @Docs voor Next.js documentatie
Deel 5: Composer Proberen (20 min)
- Open Composer (CMD+I)
- Vraag: "Create a Settings page with dark mode toggle and notification preferences. Use our existing component style."
- Review de gegenereerde files
- Accept of reject
Deliverable
- Screenshot van werkende Tab completion
- 3 voorbeelden van CMD+K edits
- Notities: wat werkt wel/niet goed
Huiswerk (2 uur)
Bouw Feature met Cursor
Deel 1: Feature Bouwen (1.5 uur)
Voeg "Due Dates" toe aan je Todo app:
- Elk todo kan een due date hebben
- Toon due date in de lijst
- Sorteer op due date
- Markeer overdue items in rood
Gebruik ALLE Cursor features:
- Tab completion voor nieuwe code
- CMD+K voor aanpassingen
- Chat voor vragen
- Composer voor multi-file changes
Deel 2: Reflectie (30 min)
Schrijf vergelijking (400 woorden):
- Cursor vs OpenCode: wat is beter?
- Welke feature gebruik je het meest?
- Is free tier voldoende?
- Ga je overstappen?
Deliverable
- Werkende Due Dates feature
- GitHub commit met de changes
- Reflectie (400 woorden)
Leerdoelen
Na deze les kan de student:
- Cursor installeren en configureren
- Tab completion effectief gebruiken
- CMD+K gebruiken voor inline edits
- Chat gebruiken met @ mentions voor context
- Composer mode gebruiken voor multi-file generatie
- Het verschil beoordelen tussen Cursor en OpenCode
- De juiste Cursor feature kiezen per taak