PROJECT INDEX / 004
Build your portfolio
one project at a time.
Each brief defines a useful outcome, a suggested stack and a sequence of milestones. Adapt the scope to your level.
PROJECT / 01FOUNDATION
Personal command-line toolkit
Create a small terminal application that solves a real repetitive task: organize files, convert data or manage a personal checklist.
Python · argparse · JSON
DELIVERABLEA documented CLI with commands, helpful errors and saved local data.
View milestones +
- Define one problem and its command interface
- Implement input validation and core logic
- Persist data as JSON and handle missing files
- Write a README and usage examples
PROJECT / 02FOUNDATION
Responsive developer portfolio
Build a clean, accessible portfolio that explains who you are, what you make and how people can reach you.
HTML · CSS · JavaScript
DELIVERABLEA responsive multi-section website ready to deploy as a static site.
View milestones +
- Plan content hierarchy and page sections
- Build responsive layouts and navigation
- Add project cards and accessible interactions
- Test keyboard, mobile and performance behavior
PROJECT / 03INTERMEDIATE
Public API explorer
Build a browser interface that queries a public API, handles loading and failure states, and presents structured results.
TypeScript · Fetch API · REST
DELIVERABLEA robust client-side application with search, filters and clear error states.
View milestones +
- Choose a public API and inspect its contract
- Model response data with TypeScript types
- Implement request, loading and error states
- Add filtering and document API limitations
PROJECT / 04INTERMEDIATE
Learning progress tracker
Create a small learning dashboard with course units, completion states and locally persisted progress.
Next.js · React · Local storage
DELIVERABLEA functional learning tracker with accessible progress indicators.
View milestones +
- Define course, lesson and progress data models
- Build a reusable lesson list and detail view
- Persist completion state safely in the browser
- Test refresh, empty state and mobile behavior
BUILD PRINCIPLEDo not copy a finished solution. Define the problem, make a small version work, test it, then explain the decisions you made. A finished and understood small project is more valuable than an unfinished oversized one.