One TypeScript codebase
Pages, UI, server logic and HTTP endpoints can share types and validation.
HTML gives meaning. CSS builds the layout. React manages interactive UI. Next.js connects routes, server logic, APIs and production delivery in one architecture.
Pages, UI, server logic and HTTP endpoints can share types and validation.
Render content on the server, then hydrate only the interactive browser parts.
Routing, layouts, loading, errors, metadata, images and deployment have a documented home.
Use a simple React SPA for a browser-only tool. Keep Unity for realtime 3D. Use Next.js when the product needs the web and server together.
A URL owns one page tree, such as /portfolio or /learn/fullstack.
Small reusable UI unit with inputs (props) and local behavior.
Configuration passed from a parent. Treat it as read-only.
Data that changes while the user interacts and causes the UI to render again.
HTML gives meaning and structure; CSS controls layout and appearance.
The web reacts to clicks, input, network responses and subscriptions—not a frame loop.
Shared content can live in TypeScript modules, JSON, a CMS, or SQL.
Browser JavaScript, server runtime, database and CDN are separate production targets.
0% locally completed
Understand the platform before the framework.
Build UI as a component tree with one-way data flow.
Connect pages, server code, APIs and persistent data.
Make the app safe, testable and observable.
Change a tab, inspect the responsibility, then interact with the same feature.
<article class="player-card">
<p class="eyebrow">PLAYER PROFILE</p>
<h2>Chaos Ronin</h2>
<dl>
<div><dt>Role</dt><dd>Unity → Fullstack</dd></div>
<div><dt>Current energy</dt><dd>80 / 100</dd></div>
</dl>
<button type="button">Use skill</button>
</article>HTML responsibility: structure and semantics.
The browser begins with a URL, navigation, click or form submission.
This button performs a real POST request. Open DevTools → Network to see headers, payload and response.
No request sent yet.
List projects, search, filter and open a detail route.
Separate authentication, session management and authorization.
Create, read, update and delete typed records through validated server code.
Add loading/error UI, accessibility checks, rate limits, logs and a rollback path.
Browser
├─ HTML document + CSS
├─ React Client Components (state/events)
└─ fetch('/api/projects')
└─ Next.js Route Handler
├─ validate input
├─ authenticate + authorize
└─ database / object storage
Next.js Server Components
├─ read trusted server data
├─ render initial UI
└─ pass serializable props to Client ComponentsUse tutorials for the first pass, then return to reference docs while building. Do not try to memorize the whole API.
HTML, CSS, JavaScript and browser fundamentals in a structured curriculum.
Open official source ↗HTTPRequests, responses, resources, headers and the client-server model.
Open official source ↗React architectureComponent decomposition, minimal state and one-way data flow.
Open official source ↗React stateHow to model, share and preserve state without creating bugs.
Open official source ↗TypeScriptTypes, narrowing, functions, objects, generics and the compiler.
Open official source ↗Next.js coreOfficial path for routing, layouts, navigation and framework conventions.
Open official source ↗Server/clientWhere code runs and when to add use client.
Open official source ↗DataServer fetching, databases, streaming, loading UI and Suspense.
Open official source ↗APIGET, POST and other HTTP handlers inside the app directory.
Open official source ↗SecurityThe most important web application risk categories and secure-design vocabulary.
Open official source ↗