Welcome to freeCodeCamp's open source codebase and curriculum!
freeCodeCamp is a friendly community where you can learn to code for free. It is run by a donor-supported 501(c)(3) nonprofit with the goal of helping millions of busy adults transition into tech. Our community has already helped more than 10,000 people get their first developer job.
Our full stack web development curriculum is completely free and self-paced. We have thousands of interactive coding challenges to help you expand your skills.
freeCodeCamp offers several free developer certifications. Each of these certifications involves building 5 required web app projects, along with hundreds of optional coding challenges to help you prepare for those projects. We estimate that each certification will take beginner programmers around 300 hours to earn.
Each of these 30 project in the freeCodeCamp curriculum has its own agile user stories and automated tests. These help you build up your project incrementally, and ensure you've fulfilled all the user stories before submitting it.
You can pull in these test suites through freeCodeCamp's CDN. This means you can build these projects on websites like CodePen and Glitch - or even on your local development environment.
Once you’ve earned a certification, you will always have it. You will always be able to link to it from your LinkedIn or résumé. And when your prospective employers or freelance clients click that link, they’ll see a verified certification specific to you.
The one exception to this is in the event that we discover violations of our Academic Honesty Policy. When we catch people unambiguously plagiarizing (submitting other people's code or projects as their own without citation), we do what all rigorous institutions of learning should do - we revoke their certifications and ban those people.
Here are our six core certifications:
1. Responsive Web Design Certification
- Basic HTML and HTML5
- Basic CSS
- Applied Visual Design
- Applied Accessibility
- Responsive Web Design Principles
- CSS Flexbox
- CSS Grid
Projects: Tribute Page, Survey Form, Product Landing Page, Technical Documentation Page, Personal Portfolio Webpage
- Regular Expressions
- Basic Data Structures
- Algorithm Scripting
- Object Oriented Programming
- Functional Programming
Projects: Palindrome Checker, Roman Numeral Converter, Caesars Cipher, Telephone Number Validator, Cash Register
3. Front End Libraries Certification
- React and Redux
4. Data Visualization Certification
- Data Visualization with D3
- JSON APIs and Ajax
Projects: Bar Chart, Scatterplot Graph, Heat Map, Choropleth Map, Treemap Diagram
5. APIs and Microservices Certification
- Managing Packages with Npm
- Basic Node and Express
- MongoDB and Mongoose
Projects: Timestamp Microservice, Request Header Parser, URL Shortener, Exercise Tracker, File Metadata Microservice
6. Information Security and Quality Assurance Certification
- Information Security with HelmetJS
- Quality Assurance and Testing with Chai
- Advanced Node and Express
Projects: Metric-Imperial Converter, Issue Tracker, Personal Library, Stock Price Checker, Anonymous Message Board
Full Stack Development Certification
Once you earn all 6 of these certifications, you'll be able to claim your freeCodeCamp Full Stack Development Certification. This final distinction signifies that you’ve completed around 1,800 hours of coding with a wide range of web development tools.
We also have 3 legacy certifications from our 2015 curriculum, which are still available. All of the required projects for these legacy certifications will remain available on freeCodeCamp.
- Legacy Front End Development Certification
- Legacy Data Visualization Certification
- Legacy Back End Development Certification
The Learning Platform
This code is running live at freeCodeCamp.org.
Our community also has:
- a super active forum
- thousands of local study groups around the world, where you can code together in person
- Medium's largest technical publication
- A popular YouTube channel
- and a comprehensive guide to thousands of programming topics
Found a bug?
If you think you've found a bug, first read the Help I've Found a Bug article and follow its instructions. If you're confident it's a new bug, go ahead and create a new GitHub issue. Be sure to include as much information as possible so we can reproduce the bug.
Found a security issue?
Please don't create GitHub issues for security issues. Instead, please send an email to email@example.com and we'll look into it immediately.
We welcome pull requests from members of the freeCodeCamp community and from veteran developers alike! Please follow these steps to contribute.
Copyright (c) 2018 freeCodeCamp.
The content of this repository bound by the following licenses: