Skip to content
Roadmap Frontend

Frontend Development

Master HTML, CSS, JavaScript, TypeScript, React, and modern frontend engineering. 14 phases from web foundations to interview preparation.

Your Progress

Complete all 14 phases to master this track

0 / 14
Phases
0 / 187
Topics
0%
Complete

Master frontend development — 14 phases from HTML/CSS/JavaScript fundamentals to React, TypeScript, testing, and performance optimization.

1

Phase 1: Web Foundations

Current

Understand the fundamentals of how the web works: client-server model, HTTP, browsers, and networking basics.

beginner Phase 1

Understand the client-server model, DNS, HTTP, and how browsers render pages.

30m
0 problems
beginner Phase 1

Learn how computers communicate over networks using packets, protocols, and IP addresses.

30m
0 problems
beginner Phase 1

Understand how browsers parse HTML, CSS, and JavaScript to render web pages.

30m
0 problems
beginner Phase 1

Master the HyperText Transfer Protocol: methods, headers, status codes, and request lifecycle.

45m
0 problems
beginner Phase 1

Understand TLS/SSL, certificates, encryption, and why HTTPS is essential for security.

30m
0 problems
beginner Phase 1

Learn how domain names are resolved to IP addresses through DNS hierarchy.

30m
0 problems
beginner Phase 1

Understand URL structure: protocol, domain, path, query parameters, and fragments.

30m
0 problems
beginner Phase 1

Master the HTTP request-response cycle including methods, headers, and body formats.

30m
0 problems
beginner Phase 1

Compare GET, POST, PUT, PATCH, DELETE, HEAD, and OPTIONS methods.

30m
0 problems
beginner Phase 1

Know 2xx, 3xx, 4xx, and 5xx status codes and when to use each.

30m
0 problems
beginner Phase 1

Master request and response headers for caching, content type, CORS, and security.

45m
0 problems
beginner Phase 1

Understand how cookies work, their properties, and security considerations.

30m
0 problems
beginner Phase 1

Learn session management, server-side sessions, and session-based authentication.

30m
0 problems
beginner Phase 1

Use localStorage for client-side data persistence with key-value pairs.

30m
0 problems
beginner Phase 1

Compare sessionStorage with localStorage and understand their different lifecycles.

30m
0 problems
beginner Phase 1

Master Cross-Origin Resource Sharing: preflight requests, headers, and security implications.

45m
0 problems
2

Phase 2: HTML

Master HTML fundamentals, semantic elements, forms, accessibility, and SEO best practices.

beginner Phase 2

Master HTML elements, attributes, nesting, and document structure.

45m
0 problems
beginner Phase 2

Use semantic elements like header, nav, main, article, section for meaningful markup.

30m
0 problems
beginner Phase 2

Build forms with input types, validation attributes, and form submission handling.

1h
0 problems
beginner Phase 2

Master all HTML input types: text, email, password, number, date, file, and more.

30m
0 problems
beginner Phase 2

Use built-in HTML5 validation with patterns, required fields, and custom constraints.

30m
0 problems
beginner Phase 2

Create accessible tables with thead, tbody, caption, and proper scope attributes.

30m
0 problems
beginner Phase 2

Master anchor elements, relative vs absolute URLs, and navigation patterns.

30m
0 problems
beginner Phase 2

Use img, picture, and figure elements with srcset for responsive images.

30m
0 problems
beginner Phase 2

Embed media with audio and video elements, including accessibility considerations.

30m
0 problems
beginner Phase 2

Build accessible HTML with ARIA roles, alt text, and semantic structure.

45m
0 problems
beginner Phase 2

Optimize HTML for search engines with meta tags, headings, and structured data.

30m
0 problems
beginner Phase 2

Understand how HTML becomes the Document Object Model in the browser.

30m
0 problems
3

Phase 3: CSS

Master CSS fundamentals, layout systems, responsive design, animations, and architecture patterns.

beginner Phase 3

Master CSS syntax, selectors, properties, and the cascade.

45m
0 problems
beginner Phase 3

Use element, class, ID, attribute, pseudo-class, and pseudo-element selectors.

45m
0 problems
beginner Phase 3

Understand margin, padding, border, content, and box-sizing: border-box.

30m
0 problems
beginner Phase 3

Compare block, inline, inline-block, none, flex, and grid display values.

30m
0 problems
beginner Phase 3

Master static, relative, absolute, fixed, and sticky positioning.

45m
0 problems
beginner Phase 3

Build one-dimensional layouts with flex containers, items, and alignment properties.

1h
0 problems
beginner Phase 3

Create two-dimensional layouts with grid template areas, columns, rows, and gaps.

1h
0 problems
beginner Phase 3

Build layouts that adapt to any screen size using modern CSS techniques.

45m
0 problems
beginner Phase 3

Apply styles based on device characteristics like width, height, and orientation.

30m
0 problems
beginner Phase 3

Compare px, em, rem, vw, vh, %, and other units for different use cases.

30m
0 problems
beginner Phase 3

Master font properties, line height, letter spacing, and web font loading.

30m
0 problems
beginner Phase 3

Use hex, RGB, HSL, opacity, and CSS custom properties for color management.

30m
0 problems
beginner Phase 3

Animate property changes with transition timing, duration, and delay.

30m
0 problems
intermediate Phase 3

Create keyframe animations with @keyframes, animation properties, and performance tips.

45m
0 problems
intermediate Phase 3

Organize CSS with BEM, CSS modules, and scalable architecture patterns.

45m
0 problems
intermediate Phase 3

Practice CSS layout challenges, centering techniques, and optimization questions.

1h
0 problems
4

Phase 4: JavaScript Fundamentals

Master JavaScript basics: variables, data types, operators, control flow, functions, and modules.

beginner Phase 4

Master variables, operators, control flow, and basic syntax.

45m
0 problems
beginner Phase 4

Compare var, let, and const declarations, scoping rules, and best practices.

30m
0 problems
beginner Phase 4

Understand primitives (string, number, boolean, null, undefined, symbol, bigint) and objects.

45m
0 problems
beginner Phase 4

Understand implicit and explicit type conversion and comparison operators.

30m
0 problems
beginner Phase 4

Master arithmetic, comparison, logical, bitwise, and nullish operators.

30m
0 problems
beginner Phase 4

Use if/else, switch, ternary, and short-circuit evaluation effectively.

30m
0 problems
beginner Phase 4

Master for, while, do-while, for...of, for...in, and break/continue.

30m
0 problems
beginner Phase 4

Define functions, understand scope, closures, and first-class functions.

1h
0 problems
beginner Phase 4

Use concise arrow function syntax and understand lexical this binding.

30m
0 problems
beginner Phase 4

Understand global, function, and block scope with lexical scoping rules.

45m
0 problems
beginner Phase 4

Learn how variable and function declarations are hoisted to the top of their scope.

30m
0 problems
intermediate Phase 4

Master closures for data privacy, function factories, and memory management.

45m
0 problems
intermediate Phase 4

Understand how this binding works in different execution contexts.

45m
0 problems
beginner Phase 4

Create objects, work with properties, methods, and object manipulation.

1h
0 problems
beginner Phase 4

Master array methods: push, pop, map, filter, reduce, find, and more.

1h
0 problems
beginner Phase 4

Extract values from arrays and objects with destructuring assignment syntax.

30m
0 problems
beginner Phase 4

Use spread operator for copying/expanding and rest for parameter gathering.

30m
0 problems
beginner Phase 4

Export and import code with ES modules for modular architecture.

30m
0 problems
5

Phase 5: Advanced JavaScript

Master the event loop, promises, async/await, prototypes, and memory management in JavaScript.

intermediate Phase 5

Understand how JavaScript creates and manages execution contexts.

45m
0 problems
intermediate Phase 5

Learn how the call stack manages function execution order.

30m
0 problems
intermediate Phase 5

Master the event loop: call stack, web APIs, callback queue, and microtask queue.

1h
0 problems
intermediate Phase 5

Understand Promise callbacks and microtask queue priority over macrotasks.

30m
0 problems
intermediate Phase 5

Learn setTimeout, setInterval, and how macrotasks are scheduled.

30m
0 problems
intermediate Phase 5

Create and chain Promises, handle errors, and use Promise.all/race/allSettled.

1h
0 problems
intermediate Phase 5

Write asynchronous code with async/await syntax and error handling.

45m
0 problems
intermediate Phase 5

Make HTTP requests with fetch, handle responses, and work with JSON data.

45m
0 problems
intermediate Phase 5

Use try/catch/finally, custom errors, and error propagation strategies.

30m
0 problems
intermediate Phase 5

Implement debounce to limit function execution frequency during rapid events.

30m
0 problems
intermediate Phase 5

Implement throttle to ensure function runs at most once per time interval.

30m
0 problems
intermediate Phase 5

Understand how events propagate from target to root in the DOM.

30m
0 problems
intermediate Phase 5

Learn the capture phase of event propagation and when to use it.

30m
0 problems
intermediate Phase 5

Use event bubbling to handle events efficiently on parent elements.

30m
0 problems
intermediate Phase 5

Understand prototype-based inheritance and the prototype chain.

45m
0 problems
intermediate Phase 5

Learn how property lookup works through the prototype chain.

30m
0 problems
intermediate Phase 5

Use ES6 class syntax for object-oriented programming patterns.

45m
0 problems
intermediate Phase 5

Understand how JavaScript manages memory with mark-and-sweep GC.

30m
0 problems
intermediate Phase 5

Prevent memory leaks by understanding references, closures, and event cleanup.

45m
0 problems
7

Phase 7: TypeScript

Master TypeScript fundamentals, type system, generics, and integration with React.

8

Phase 8: React

Master React components, hooks, state management, rendering optimization, and performance patterns.

beginner Phase 8

Understand React's component model, declarative UI, and virtual DOM benefits.

30m
0 problems
beginner Phase 8

Create functional and class components with proper structure and composition.

45m
0 problems
beginner Phase 8

Write JSX syntax, embed expressions, and understand JSX compilation.

30m
0 problems
beginner Phase 8

Pass data between components with props, default values, and prop types.

45m
0 problems
beginner Phase 8

Manage component state with useState, understand state updates, and immutability.

45m
0 problems
beginner Phase 8

Handle user events in React with synthetic events and event handler patterns.

30m
0 problems
beginner Phase 8

Render different UI based on conditions with &&, ternary, and early returns.

30m
0 problems
beginner Phase 8

Render arrays of data with map and handle dynamic lists efficiently.

30m
0 problems
beginner Phase 8

Use keys correctly for list rendering and understand reconciliation.

30m
0 problems
beginner Phase 8

Build controlled and uncontrolled forms with proper state management.

45m
0 problems
beginner Phase 8

Manage form inputs with React state for full control over form data.

30m
0 problems
beginner Phase 8

Master the useState hook for local component state management.

45m
0 problems
intermediate Phase 8

Handle side effects with useEffect, dependencies, and cleanup functions.

1h
0 problems
intermediate Phase 8

Use useRef for DOM references, mutable values, and avoiding re-renders.

30m
0 problems
intermediate Phase 8

Optimize expensive computations with useMemo for performance.

30m
0 problems
intermediate Phase 8

Stabilize function references with useCallback for child component optimization.

30m
0 problems
intermediate Phase 8

Extract reusable logic into custom hooks for cleaner component code.

45m
0 problems
intermediate Phase 8

Share state across components without prop drilling using React Context.

45m
0 problems
intermediate Phase 8

Design flexible UIs with composition patterns, render props, and children.

45m
0 problems
intermediate Phase 8

Understand mounting, updating, and unmounting phases in functional components.

30m
0 problems
intermediate Phase 8

Master the rendering process: state changes, reconciliation, and batching.

45m
0 problems
intermediate Phase 8

Optimize React apps with memo, lazy loading, code splitting, and profiling.

1h
0 problems
9

Phase 9: Frontend Architecture

Design scalable frontend architectures with state management, API layers, authentication, and real-time updates.

intermediate Phase 9

Design scalable component hierarchies with clear responsibilities.

45m
0 problems
intermediate Phase 9

Compare local state, context, Redux, and other state management solutions.

1h
0 problems
intermediate Phase 9

Understand the difference and use appropriate tools for each.

45m
0 problems
intermediate Phase 9

Design clean API abstraction layers for data fetching and mutation.

45m
0 problems
intermediate Phase 9

Implement JWT, OAuth, and session-based authentication in SPAs.

1h
0 problems
intermediate Phase 9

Control access with role-based and permission-based authorization patterns.

45m
0 problems
intermediate Phase 9

Design global error boundaries and error recovery strategies.

45m
0 problems
intermediate Phase 9

Implement skeleton screens, spinners, and optimistic UI patterns.

30m
0 problems
intermediate Phase 9

Build offset and cursor-based pagination with proper state management.

45m
0 problems
intermediate Phase 9

Implement infinite scrolling with intersection observers and virtual lists.

45m
0 problems
intermediate Phase 9

Build search interfaces with debouncing, indexing, and result ranking.

45m
0 problems
intermediate Phase 9

Implement client-side and server-side filtering with URL state synchronization.

45m
0 problems
intermediate Phase 9

Build sortable tables and lists with multi-column sort support.

30m
0 problems
intermediate Phase 9

Update UI immediately before server confirmation for better UX.

30m
0 problems
intermediate Phase 9

Cache API responses with stale-while-revalidate and cache invalidation.

45m
0 problems
intermediate Phase 9

Design scalable forms with validation, state management, and submission handling.

45m
0 problems
intermediate Phase 9

Handle file uploads with drag-and-drop, progress tracking, and preview.

45m
0 problems
intermediate Phase 9

Implement WebSockets, SSE, and polling for live data updates.

1h
0 problems
10

Phase 10: Web Performance

Optimize web applications for speed: Core Web Vitals, code splitting, caching, and rendering strategies.

intermediate Phase 10

Measure LCP, INP, CLS, and understand Google's performance metrics.

45m
0 problems
intermediate Phase 10

Optimize LCP by improving server response, resource loading, and rendering.

30m
0 problems
intermediate Phase 10

Minimize INP by optimizing event handlers and main thread work.

30m
0 problems
intermediate Phase 10

Prevent CLS with dimension attributes, font loading, and dynamic content.

30m
0 problems
intermediate Phase 10

Split bundles with dynamic imports for faster initial page loads.

45m
0 problems
intermediate Phase 10

Defer non-critical resources with lazy loading for images, components, and routes.

30m
0 problems
intermediate Phase 10

Optimize images with modern formats, responsive sizing, and CDN delivery.

45m
0 problems
intermediate Phase 10

Load web fonts efficiently with font-display, subsetting, and preload.

30m
0 problems
intermediate Phase 10

Leverage HTTP caching headers, service workers, and cache strategies.

45m
0 problems
intermediate Phase 10

Use Content Delivery Networks to serve static assets from edge locations.

30m
0 problems
intermediate Phase 10

Enable Gzip and Brotli compression for reduced transfer sizes.

30m
0 problems
intermediate Phase 10

Minimize bundle size with tree shaking, dead code elimination, and analysis.

45m
0 problems
intermediate Phase 10

Compare CSR, SSR, SSG, and ISR for different use cases.

1h
0 problems
intermediate Phase 10

Implement SSR for improved initial load time and SEO.

45m
0 problems
intermediate Phase 10

Understand CSR tradeoffs: faster interactivity but slower initial load.

30m
0 problems
intermediate Phase 10

Pre-render pages at build time for maximum performance.

30m
0 problems
intermediate Phase 10

Understand how SSR content becomes interactive with client-side hydration.

30m
0 problems
14

Phase 14: Frontend Interview Preparation

Synthesize frontend knowledge through practice exercises and mock interviews.