React is in Amsterdamse productteams geen bibliotheek meer die u “er even bij doet”. Het is de taal waarin schermen, data-grenzen en foutstaten worden onderhandeld. De React cursus van NLCodeCraft Frontend Academy traint u om componenten te bouwen die een lead frontend zou mergen: duidelijke props, voorspelbare state, geen verborgen side effects. Mark van Leeuwen weigert een todo-app als eindopdracht. U bouwt een scherm met laden, leeg, fout en succes — dezelfde vier staten die in productie bestaan.

Werkplek met React TypeScript componentcode en live dashboard-preview in de academy in Amsterdam
React in Amsterdam: het component op de linker monitor, de preview rechts, de review in het gesprek.

Wij starten bij wat u al kent. Beheerst u HTML en JavaScript, dan gaan wij in week één naar functionele componenten en props als contract. Beheerst u al hooks, dan gaan wij naar data-fetching, cachegrenzen en het verschil tussen UI-state en server-state. De instroom staat in de cursuskaart. Zonder JavaScript-fundament verwijzen wij u eerst naar het Frontend Lab.

Wat de cursus wél en niet is

Wél: componentontwerp, hooks als gereedschap met kosten, lijsten en keys, formulieren zonder magie, toegankelijke interactie, en een kleine ontwerpdiscipline zodat uw JSX leesbaar blijft. Niet: een encyclopedie van elk RFC, en niet “React 19 in één weekend”. Nieuwe API’s behandelen wij wanneer ze uw team raken, niet wanneer ze op Twitter staan.

Blok Uitkomst Reviewcriterium
Componenten & props Scherm opgeknipt in verantwoordelijkheden Geen god-component, props tekenen het contract
State & effects Voorspelbare updates, effects met reden Geen fetch-in-render, cleanup waar nodig
Data & fouten Laden/leeg/fout/succes als eerste klas staten Gebruiker ziet nooit een stille crash
Samenstelling Lijsten, slots, kleine patronen Hergebruik zonder copy-paste van businesslogica

Leermodules React

Week 1–2: JSX als HTML met discipline

Semantiek eerst. Div-soep is geen component. U leert waarom een button een button is, ook in React.

Week 3–4: State die u kunt tekenen

Lokale state, tillen naar boven, en het moment waarop context een last wordt in plaats van een cadeau.

Week 5–6: Data de deur wijzen

Fetching, abort, stale closures. U koppelt dit later aan TypeScript-types in de vervolgtrack.

Week 7–8: Scherm als product

Toegankelijke dialogs, focus, toetsenbord. Een mooie demo die alleen met de muis werkt, zakt de review.

TypeScript is in deze cursus aanwezig als annotatie zodra u het aankunt; de diepte zit in de TypeScript-track. Wie beide combineert, bouwt hetzelfde scherm twee keer: eerst werkend, daarna contractueel. Dat is trager in week drie en sneller in maand drie.

type LoadState<T> =
  | { status: "idle" }
  | { status: "loading" }
  | { status: "error"; message: string }
  | { status: "success"; data: T };

function Panel({ state }: { state: LoadState<User[]> }) {
  if (state.status === "loading") return <p>Gegevens worden geladen.</p>;
  if (state.status === "error") return <p role="alert">{state.message}</p>;
  if (state.status !== "success") return null;
  return <UserList users={state.data} />;
}

Huiswerk is een pull request, geen screenshot. U werkt in een academy-repo met branchbescherming. Mark van Leeuwen commentarieert alsof het een interne PR is: kort, specifiek, zonder emoji-regens. Wie de commentaarronde overslaat, rondt de module niet af — aanwezigheid is geen vakmanschap.

Veelgestelde vragen

Moet ik Redux kennen?

Nee. Wij beginnen met lokale state en een dunne data-laag. Redux of een query-library komt pas wanneer het probleem dat eist.

Behandelt u class components?

Alleen als u legacy moet lezen. Nieuwe code schrijven wij functioneel.

Kan ik met mijn werkproject instromen?

Na intake, als de code deelbaar is of u een gestript voorbeeld meeneemt.

Wat als ik al Next.js gebruik?

Dan volgt u React-fundamenten gericht op server/client-grenzen, of u start in de Next.js-module na een korte toets.

Leslocatie en bereik in Amsterdam

NLCodeCraft geeft klassikale en hybride frontend-opleidingen vanaf de Wibautstraat, op de Knowledge Mile tussen Amstel en Weesperplein. Cursisten komen uit de onderstaande stadsdelen; avondgroepen starten na kantoortijd zodat u vanuit Zuid, Noord of Oud-West kunt aansluiten zonder een extra reisdag in te plannen.

  • Centrum
  • De Pijp
  • Oud-West
  • Oost
  • Watergraafsmeer
  • Amsterdam-Noord
  • Zuid
  • Westerpark

NLCodeCraft Frontend Academy

Uw aanspreekpunt: Mark van Leeuwen

Wibautstraat 131
1091 GL Amsterdam

Telefoon: +31 20 244 3188

E-mail: [email protected]

OpenStreetMap: Wibautstraat 131, 1091 GL Amsterdam

React-intake aanvragen