Ontdek de technische architectuur achter AI Educademy: Next.js 15 App Router, next-intl voor i18n, MDX-inhoudspijplijn, git-submodules, PWA-ondersteuning en Vercel-implementatie.
Het bouwen van AI Educademy presenteerde een unieke technische uitdaging: een platform creëren dat toegankelijk is voor leerlingen over de hele wereld, gemakkelijk te onderhouden en schaalbaar genoeg om miljoenen gebruikers te bedienen - en dat allemaal terwijl de codebase schoon en ontwikkelaarsvriendelijk blijft.
In deze diepgaande duik doorlopen we de architecturale beslissingen die ons platform hebben gevormd, van onze keuze voor Next.js 15 tot hoe we meertalige inhoud beheren met git-submodules. Of u nu een educatief platform, een documentatiesite of een applicatie met veel inhoud bouwt, u vindt hier praktische inzichten.
Toen we AI Educademy begonnen te bouwen, was Next.js 14 de standaard. Tegen de tijd dat we lanceerden, was Next.js 15 uitgebracht met aanzienlijke verbeteringen aan de App Router. We hebben de sprong gemaakt omdat verschillende factoren perfect aansluiten bij onze doelstellingen:
Standaard servercomponenten: de Next.js 15 App Router gebruikt standaard servercomponenten, wat betekent dat we gegevens rechtstreeks in onze componenten kunnen ophalen zonder extra API-routes voor eenvoudige bewerkingen. Dit vermindert de complexiteit en verbetert de prestaties out-of-the-box.
Incrementele Statische Regeneratie (ISR): Educatieve inhoud verandert niet voortdurend, maar verandert wel. Met ISR kunnen we pagina's vooraf renderen tijdens het bouwen en ze vervolgens volgens een schema opnieuw valideren. Dit betekent dat onze blogposts, tutorials en cursusmateriaal altijd actueel zijn, zonder de prestatieproblemen van on-demand weergave.
Ingebouwde optimalisatie: beeldoptimalisatie, het laden van lettertypen en het splitsen van code worden automatisch afgehandeld. We hoefden geen cycli te besteden aan het bouwen of configureren van deze functies: ze werken gewoon.
Op bestanden gebaseerde routering: de intuïtieve bestandsstructuur van de App Router maakt duidelijk waar pagina's en API-routes zich bevinden. Nieuwe bijdragers kunnen in de codebase springen en de structuur onmiddellijk begrijpen.
// Our routing structure is intuitive and scalable
app/
├── [locale]/
│ ├── page.tsx
│ ├── programs/
│ │ ├── page.tsx
│ │ └── [slug]/
│ │ └── page.tsx
│ └── blog/
│ ├── page.tsx
│ └── [slug]/
│ └── page.tsx
├── api/
└── layout.tsx
AI Educademy is gebouwd voor de mondiale gemeenschap. Het aanbieden van inhoud in meerdere talen is niet alleen leuk om te hebben; het is essentieel voor het vervullen van onze missie van gratis AI-onderwijs voor iedereen.
We hebben voor next-intl gekozen omdat deze:
/en/programs en /es/programas hebben met dezelfde paginacomponent)Hier ziet u hoe we onze i18n-installatie structureren:
// middleware.ts - Detects user locale and routes accordingly
import { createMiddleware } from 'next-intl/middleware';
export default createMiddleware({
locales: ['en', 'es', 'fr', 'de', 'zh'],
defaultLocale: 'en'
});
export const config = {
matcher: ['/((?!api|_next|.*\\..*).*)']
};
Onze vertaalbestanden zijn geordend op landinstelling en bevatten:
messages/
├── en/
│ ├── common.json
│ ├── programs.json
│ └── blog.json
├── es/
│ ├── common.json
│ └── ...
└── fr/
└── ...
Deze aanpak schaalt prachtig. Het toevoegen van een nieuwe taal betekent het toevoegen van een nieuwe map met JSON-bestanden - er zijn geen codewijzigingen vereist.
Hier wordt het interessant. We hadden een traditioneel headless CMS kunnen gebruiken, maar we kozen voor MDX omdat het ons het beste van twee werelden biedt: contentbeheer dat naast onze code versiebeheer heeft, en de mogelijkheid om interactieve React-componenten rechtstreeks in onze educatieve inhoud in te bedden.
Wanneer u een blogpost of tutorial over AI Educademy leest, leest u niet alleen statische HTML. Mogelijk heeft u interactie met:
Dit is allemaal mogelijk omdat we MDX gebruiken. Onze auteurs van inhoud kunnen in Markdown schrijven, maar ontwikkelaars kunnen aangepaste componenten doorgeven:
---
title: "Understanding Neural Networks"
---
# Understanding Neural Networks
<ConceptExplainer concept="neural-networks" />
Neural networks are inspired by how our brains work...
<InteractiveQuiz questionId="nn-101" />
## Real-World Applications
<CodeExample language="python" title="Simple Neural Network" />
Om MDX soepel te laten werken in Next.js 15, gebruiken we @next/mdx en configureren we dit in onze next.config.js:
// next.config.js
import createMDX from '@next/mdx';
const withMDX = createMDX({
options: {
remarkPlugins: [
// Our custom plugins for syntax highlighting, TOC generation, etc.
],
rehypePlugins: []
}
});
export default withMDX({
pageExtensions: ['ts', 'tsx', 'mdx']
});
Hier is een slimme architectonische beslissing: onze inhoud bevindt zich in afzonderlijke git-repository's, in de hoofdtoepassing opgenomen als git-submodules.
Waarom? Omdat het mogelijk maakt:
Onze directorystructuur ziet er als volgt uit:
ai-educademy/
├── content/ (git submodule)
│ ├── blog/
│ │ ├── en/
│ │ ├── es/
│ │ └── fr/
│ ├── programs/
│ │ └── [course content]
│ └── lab/
│ └── [interactive exercises]
├── app/
├── package.json
└── .gitmodules
Wanneer we inhoud moeten bijwerken, doen we het volgende:
# Pull latest content
git submodule update --remote
# Or content authors can PR directly to the content repo
Deze ontkoppeling heeft een grote verandering teweeggebracht in onze snelheid. Inhoud kan worden bijgewerkt zonder dat applicaties opnieuw moeten worden opgebouwd (dankzij ISR), en nieuwe programma's kunnen worden toegevoegd door niet-ingenieurs.
Onderwijs vindt plaats op alle apparaten, ook in omgevingen met een lage bandbreedte. We hebben AI Educademy gebouwd als een PWA, zodat leerlingen:
// next.config.js includes PWA configuration
import withPWA from 'next-pwa';
const withPWA = require('next-pwa')({
dest: 'public',
disable: process.env.NODE_ENV === 'development'
});
Onze servicemedewerkerstrategie is eenvoudig:
Wij implementeren op Vercel omdat de integratie met Next.js naadloos verloopt. Elke push naar onze hoofdvestiging activeert automatische builds en implementaties. Nog belangrijker:
Onze implementatiepijplijn ziet er als volgt uit:
Git Push → GitHub → Vercel Build → CDN Distribution → Global Users
Specifiek voor inhoudsupdates hebben we webhooks ingesteld, zodat wanneer onze inhoudssubmodule wordt bijgewerkt, Vercel de site automatisch opnieuw opbouwt met nieuwe inhoud.
Al deze architectuur werkt samen om een platform te creëren dat op topniveau presteert. Onze statistieken uit de echte wereld:
Dit zijn geen ijdelheidsstatistieken: snellere sites betekenen dat meer leerlingen toegang hebben tot onze inhoud, vooral die op mobiele netwerken of in regio's met een beperkte infrastructuur.
De gehele codebase is open source. Als je wilt zien hoe al deze onderdelen samenwerken, kun je de repository verkennen, verbeteringen bijdragen of deze gebruiken voor je eigen educatieve platform.
De architectuur die we hier hebben beschreven is niet bedrijfseigen: het is gebouwd op solide, algemeen aanvaarde open source-tools. De gemeenschap profiteert van onze lessen, en wij profiteren van bijdragen van de gemeenschap.
Of u nu een educatief platform of een applicatie met veel inhoud bouwt, overweeg het volgende:
AI Educademy vertegenwoordigt onze toewijding aan toegankelijke, performante en onderhoudbare technische infrastructuur voor het onderwijs. Als je geïnteresseerd bent in een van deze technologieën of een bijdrage wilt leveren, onze code is open source en wacht op jouw medewerking.
Wil je ons platform uitproberen? Bekijk onze programma's | Bezoek het Lab | Lees meer over onze missie
Probeer de eerste les van elke academy gratis en ontgrendel daarna elke resterende les, elk project en elk certificaat met Pro.
Staat van open source AI in 2026: de modellen, tools en communities die voorop lopen
Van HuggingFace tot Llama tot LeRobot: open source AI bloeit in 2026. Ontdek de topmodellen, tools en communities die toegankelijke AI voor iedereen vormgeven.
Waarom we AI Educademy hebben gebouwd
Het verhaal achter een gratis, open source AI-onderwijsplatform dat kunstmatige intelligentie leert in 11 talen – van absolute beginners tot gevorderden.