Guided Project
Black Swan Bistro
A guided restaurant-site build that grows from a single HTML page into a deployed multi-page project.
View ProjectUse JavaScript to structure real interface behaviour, not just isolated syntax exercises.
Build a stronger mental model for state, rendering, validation, events, debugging, and refactoring so you can turn interactive ideas into maintainable features. This sequence stays framework-free on purpose so the underlying logic is clear before abstractions arrive.
Use these guided, reference, and practice projects to connect the lessons to real site work.
Guided Project
A guided restaurant-site build that grows from a single HTML page into a deployed multi-page project.
View ProjectPractice Project
A second gallery project for practicing dynamic rendering and interaction logic.
View ProjectPractice Project
A second todo app focused on deeper array logic and filtering behaviour.
View ProjectPractice Project
Build a simple interface that changes visual state with JavaScript.
View ProjectPractice Project
Use inputs, functions, and conditional logic in a practical converter tool.
View ProjectPractice Project
Combine operators, functions, and UI controls in a practical calculator app.
View ProjectPractice Project
Build an interactive quiz that tracks answers and gives feedback.
View ProjectLearn how data, user actions, and interface updates fit together before a feature grows complicated.
Start tutorial →Turn arrays and objects into repeatable cards, lists, and empty states without duplicating markup.
Start tutorial →Build friendlier form flows with clearer rules, useful error messages, and confident submission behaviour.
Start tutorial →Move beyond one-off click handlers with event delegation, shared logic, and cleaner interface wiring.
Start tutorial →Model interface data with objects and collections so feature logic stays readable as it grows.
Start tutorial →Use DevTools, console traces, and calmer diagnosis habits to find why interactive features fail.
Start tutorial →Reduce repetition by extracting helpers, clarifying responsibilities, and organising small interface modules.
Start tutorial →Combine state, rendering, validation, debugging, and reuse in one bounded interactive feature.
Start tutorial →Cookie Settings