Beginner Web Development Projects
Small, real projects with starter code, a step-by-step guide, a live preview and the full solution. Each one tells you exactly which lessons to revise first.
Beginner projects
Personal Profile Card
A clean, shareable profile card with a photo, name, bio, skills and social links.
Recipe Web Page
A well-structured, good-looking recipe page with an image, ingredients, steps and a facts table.
Tip Calculator
Split a bill between friends with live tip buttons. Your first real interactive app.
Digital Clock & Greeting
A live clock with date, a 12/24-hour toggle and a greeting that changes with the time of day.
Intermediate projects
To-Do List App
Add, complete, delete and filter tasks, saved in the browser so they survive a refresh.
Colour Palette Generator
Generate random harmonious palettes, lock favourites, copy HEX codes and press Space for new colours.
How every project works
- Choose a project
- Revise the linked lessons
- Build step by step
- Check your work in the live preview
- Compare with the solution
- Extend with a bonus challenge
Why build projects while you learn
Lessons teach you one idea at a time: how a list works, how flexbox lines things up, how an event listener fires. Real websites never use just one idea. A simple to-do list needs a form, some layout, an array of data, events, and a way to save everything. Projects are where those separate ideas finally meet, and that's usually the moment coding starts to make sense.
Building something also shows you what you don't know yet, which is just as useful. If you get stuck centring the profile card, you know the CSS flexbox lesson is worth another read. If the tip calculator shows NaN, the JavaScript numbers lesson has the answer. Every project lists the lessons it relies on, so you can revise exactly what you need and nothing more.
Finished projects are also something to show. A small, working app that you understand line by line says more about your skills than a list of courses you've completed.
How each project page works
Every project follows the same layout, so once you've done one, the rest feel familiar:
- What you'll build. A short description and the skills involved.
- Planning notes. How to think about the problem before writing code, and the key ideas you'll use.
- Requirements checklist. A clear list of what the finished project must do. Use it to check your own work.
- Starter code. A working starting point you can run straight away in the page.
- Step-by-step guide. Small steps, each with an explanation and code. Tick each step off as you go.
- Final solution. The complete code, hidden until you choose to look.
- Bonus challenges, common mistakes and FAQs. Ideas for taking it further, plus fixes for the problems beginners hit most often.
Which project should you start with?
If you've only learned HTML and CSS, start with the personal profile card. It's short, it looks good quickly, and it teaches the box model, rounded corners and flexbox. The recipe page comes next and focuses on semantic HTML, lists and tables.
Once you know a little JavaScript, the tip calculator is the best first interactive project. It reads input, does some maths and updates the page as you type. The digital clock practises timers and the Date object in under an hour.
The to-do list app and the colour palette generator are intermediate projects. Both keep their data in an array and redraw the page from it, which is the same pattern modern frameworks use. Save these for when you're comfortable with arrays, objects and events.
Tips for getting the most out of a project
Try each step before reading the code. Read the explanation, have a go yourself, then compare. You'll remember far more than if you copy and paste.
Break things on purpose. Delete a line, rename a variable or remove a CSS rule and see what happens. Understanding why something breaks is how you learn to fix it.
Use the requirements as a test list. Professional developers work from requirements too. Go through the checklist at the end and make sure every item really works, including the awkward cases like empty inputs.
Don't skip the bonus challenges. They have no step-by-step guide, which makes them the closest thing to building on your own. Even one bonus challenge per project builds confidence quickly.
What to build after these projects
Once you've finished the guided projects, the best next step is a project of your own. Pick something small that you'd actually use: a reading list, a workout timer, a quiz about your favourite film, or a simple page for a club or local business. Write down the requirements first, just like the checklists here, then build one requirement at a time. You'll get stuck more often than with a guided project, and that's the point. Working out how to get unstuck, using the lessons, the cheat sheets and the playground, is the skill that turns a learner into a developer. Keep each new project small enough to finish in a weekend. A finished small project teaches more than an ambitious one abandoned halfway.
Keep your projects and share them
Every project runs in the browser, so you can build it right on the page. To keep your work, copy the final code into files on your computer, or open the code playground and download it as a single HTML file. When you're ready to share, push the files to GitHub and publish them with GitHub Pages. The Git and GitHub courses walk you through both, one command at a time.