Enroll in program

after 1 week free trial. What you get

Nanodegree co-created by
Additional course collaborators


6–9 months

Minimum 10hrs/week.
Work on your own schedule.

Job(s) this Nanodegree leads to

Front-End Web Developer

Nanodegree Summary

view course trailer
View Trailer

In this Nanodegree you’ll learn the fundamentals of how the web works and gain a working knowledge of the three foundational languages that power each and every website: HTML, CSS and JavaScript. You’ll learn to build beautiful, responsive websites optimized for security and performance, and see the efforts of your work with each click of the browser’s refresh button! In addition to building six portfolio-worthy projects for which you’ll receive expert feedback on your code, you’ll advance your career prospects by learning how to ace a technical job interview.

What is a Nanodegree Curriculum?

A Nanodegree is a new type of credential, designed to prepare you for a job.

It is built with industry for you to master skills that employers truly seek in {{productState.nanodegreeArticle}} {{productState.nanodegreeTitle}}.

It is project-based: you'll complete several projects, supported by our community of Coaches and your fellow students, to learn and show off your skills.

It's flexible: take only the courses you need to ace projects!

See how it works

Why Take This Nanodegree?

This Nanodegree program will teach you the skills required to become a Front-End Web Developer. We’ve designed this curriculum with expert web developers and hiring managers, allowing you to demonstrate your skills by completing a series of projects approved by leading employers as the critical indicators of job-readiness. Specifically, you’ll:

  • create a professional portfolio using HTML and the Bootstrap CSS framework
  • use the power of jQuery’s DOM manipulation to dynamically populate a resume with your own information
  • develop your very own arcade game in JavaScript with the HTML5 Canvas API
  • discover how to optimize your application’s perceived load time by taking the Critical Rendering Path into account
  • learn that frames per second isn’t just important for games and how to ensure a silky smooth experience in your applications by optimizing for 60 frames per second
  • explore best practices in application architecture and design patterns
  • build a complex mapping application using the Knockout framework and a variety of third-party API services
  • develop and maintain applications with the confidence test-driven development promotes, using the Jasmine testing framework

Prerequisites and Requirements

In order to determine if the Front-End Web Developer Nanodegree is a good fit for you, please take the Readiness Assessment. It will ask you a series of technical and time management questions to help you determine if now is the right time to start the program. General prerequisites are summarized below.

General Requirements:

  • You are self-driven and motivated to learn. Participation in this program requires consistently meeting the deadlines set for your cohort and devoting at least 10 hours per week to your work.
  • You can communicate fluently and professionally in written and spoken English.
  • You are willing to contribute to the success of the program, including collaborating with fellow students and giving us feedback on how we can improve.

Front-End Developer Nanodegree Specific Requirements:

  • You have access to a computer with a broadband connection, on which you’ll install a professional code/text editor (ie. Sublime Text or Atom).
  • You can independently solve and describe your solution to a math or programming problem and
  • You are familiar with basic programming concepts such as variables, conditions and loops.

See the Technology Requirements for using Udacity.

Nanodegree Structure

In the Nanodegree program, you’ll build six portfolio-worthy projects. Depending on your knowledge and skill level, you can either learn the necessary skills through our supporting courses, or jump into the projects directly. A summary of each of these projects, as well as links to their supporting courses are included in the sections below.

PROJECT Build a Portfolio Site

You will be provided with a design mockup as a PDF-file and must replicate that design in HTML and CSS. You will develop a responsive website that will display images, descriptions and links to each of the portfolio projects you will complete throughout the course of the Front-End Web Developer Nanodegree.

Prepare for this project with: Intro to HTML and CSS, Responsive Web Design Fundamentals, and Responsive Images

PROJECT Interactive Resume

You will develop an interactive resume application that reads your resume content from a JSON file and dynamically displays that content within a provided template. You will use objects, functions, conditionals, and control structures to compose the content that will display on the resume.

Prepare for this project with: JavaScript Basics and Intro to jQuery

PROJECT Classic Arcade Game Clone

You will be provided with visual assets and a game loop engine; using these tools you must add a number of entities to the game including the player characters and enemies to recreate the classic arcade game Frogger.

Prepare for this project with: Object-Oriented JavaScript and HTML5 Canvas

PROJECT Website Optimization

You will optimize a provided website with a number of optimization- and performance-related issues so that it achieves a target PageSpeed score and runs at 60 frames per second.

Prepare for this project with: Website Performance Optimization

PROJECT Neighborhood Map

You will develop a single-page application featuring a map of your neighborhood or a neighborhood you would like to visit. You will then add additional functionality to this application, including: map markers to identify popular locations or places you’d like to visit, a search function to easily discover these locations, and a listview to support simple browsing of all locations. You will then research and implement third-party APIs that provide additional information about each of these locations (such as StreetView images, Wikipedia articles, Yelp reviews, etc).

Prepare for this project with: Intro to AJAX and JavaScript Design Patterns

PROJECT Feed Reader Testing

In this project you are given a web-based application that reads RSS feeds. The original developer of this application clearly saw the value in testing, they've already included Jasmine and even started writing their first test suite! Unfortunately, they decided to move on to start their own company and we're now left with an application with an incomplete test suite. That's where you come in.

Prepare for this project with: JavaScript Testing

Additional Projects

You’ll host all your projects on GitHub and make regular commits. If you haven’t learned version control yet, use our latest course on the topic: How to Use Git and GitHub

We will be periodically reviewing the Front-End Nanodegree curriculum - both courses and projects - and making adjustments based on student and industry feedback. We will notify active students working toward the Nanodegree about effects this may have on the degree requirements.

Program Leads

instructor photo

Michael Wales


Michael is a self-taught full-stack web developer and open source advocate. Before joining Udacity, he spent over 10 years developing classified applications for some of the most demanding intelligence organizations in the world. He has an active Top Secret clearance and, unless you have one as well, that's all you're allowed to know. In his spare time he enjoys playing paintball, video games, and spending time with his 3 wonderful children.

Miriam has had the privilege to contribute to student experience at Udacity from multiple angles. From creating new courses to working one-on-one with students to helping lead our team of Coaches, she’s loved it all and has only grown more passionate about changing education. Outside of work, she enjoys singing, baking, and teaching yoga. Miriam attended Stanford University, where she earned a B.S. in Physics, a B.A. in Philosophy and Religious Studies, and an M.A. in Religious Studies.

You get

  • Interview-ready project portfolio

  • Access to course materials

  • Verified projects

  • Access to Office Hours

  • Access to Coach-supported forums

  • Technical assistance

  • Verified Nanodegree certificate

Discover more Nanodegree programs