Skip to main content Accessibility Feedback

Vanilla JS Projects

A monthly vanilla JS project video series.

The best way to learn JavaScript is by writing lots of code, but where do you even start? And what happens when you get stuck?

With a Vanilla JS Projects subscription, you’ll get new vanilla JS projects to work on each month—with starter templates, solution videos, and completed source code.

Join now →

How it works

Sample project: building a DOM manipulation micro-library.

Vanilla JS Projects is an open-ended, monthly subscription service.

1. Try to solve a coding challenge
Each month, you’ll get one or two new vanilla JS projects to work. Each project comes with a template and instructions to help you get started.
2. Watch the solution video
Each project also comes with a video of JavaScript expert Chris Ferdinandi working through the challenge live. You’ll get to see him figure out an approach, fix bugs, work through problems, and more.
3. Connect & Share
To help support your learning, you can collaborate with your fellow students in an exclusive private Slack channel. Ask questions, share what you’re learning, and get unstuck.
Wanting to learn JavaScript from scratch, make the transition from jQuery or some other library? Already pretty competent and just want to get better?

Chris Ferdinandi has got your back and his learning platform is a *tremendously good value*.- Jonathan Schofield

What You’ll Learn

  • DOM manipulation, injection, and traversal
  • How to transform and edit strings, arrays, and objects
  • ES6 essentials
  • How to structure and organize code
  • How to save data locally
  • Ajax and HTTP
  • How to work with APIs
  • How to write JavaScript plugins
  • Framework-free web apps
  • How to easily write cross-browser compatible code
  • How to debug broken code
  • Working with polyfills
  • JavaScript performance tricks

Join now →

Work on fun projects!

You get access to an archive of previous projects. Here are some of the projects members have gotten to work on.

Tip Calculator
An app to calculate how much each person owes, with tip, on a dinner bill.
Browser Storage Library
A small vanilla JS library to make working with localStorage and sessionStorage a little bit easier.
Who’s Driving?
An app that let’s you randomly pick a drive from a group of a friends.
DIY Micro-jQuery
Build your own mini-jQuery DOM manipulation library with a few commonly used helper functions.

Don’t go it alone! Get the support you need to build amazing things.

You get exclusive access to a private Slack channel just for Vanilla JS Projects members. You can chat with other students, get feedback on code, and ask questions.

This is not available for sale at any price, and my students regularly tell me it’s one of the most valuable things I offer.

Having your interaction is priceless. Such added value.- Elliott Porter

Project-based training on a budget

If you learn best by working on projects, but don’t have the time or money to spend on an intense bootcamp-style program, Vanilla JS Projects is a great option.

It’s a fraction of the price of my Vanilla JS Academy training program—without the structured curriculum or intense focus and time demands. It’s also a great way apply your new skills after the Academy program if you’ve already gone through it.

Join now →

Go from beginner to JavaScript expert

  • Learn modern best practices and code patterns.
  • Spend less time Googling and more time working on cool stuff.
  • Get the skills and confidence to really understand JavaScript.
  • Stop wasting time and energy on out-dated blog posts and hostile web forums.

Your 100% Money-Back Guarantee 💰

Don’t put off learning vanilla JavaScript! If you’re not 100% satisfied with Vanilla JS Projects, let me know sometime in the first month of your subscription and I’ll give you a full refund. You can cancel at any time.

About the Instructor

Chris Ferdinandi

Hi, I'm Chris Ferdinandi. I believe there’s a simpler, more resilient way to make things for the web.

I’ve taught developers at organizations like Chobani and the Boston Globe, and my JavaScript plugins have been used by organizations like Apple and Harvard Business School. My developer tips newsletter is read by over 5,700 developers each weekday.

I want to help you master vanilla JavaScript, without all of the painful false starts and roadblocks I encountered when I was learning.

Ready to join?

Kick-start your journey to JavaScript mastery. You get…

  • New projects every month
    • Starter Templates
    • Solution Videos
    • Source Code
  • Access to an archive of past projects
  • Exclusive Slack Access

Join now for just $39/month

[One of the] absolute webdev blogging MVP's of 2018- Chris Coyier
I thank you from the bottom of my heart. If it had not been for you, I would not be able to learn JavaScript.- Patricia Parker
I recommend Chris Ferdinandi to all JavaScript learners :)- Alex Muraro
God, you're amazing... I'm learning so much from you.- Mojtaba Seyedi, Front End Developer

Frequently Asked Questions

What’s the difference between Vanilla JS Projects and the Vanilla JS Academy?
While both programs offer project-based training, they’re quite different in their approach.

The Academy is an intese, fast-paced, and structured learning curriculum over a finite period of time. It also includes a live office hours components. A Projects subscription is less structured much less intense. While it includes peer support on Slack, there are no office hours.
I already own the pocket guides and/or have completed the Vanilla JS Academy. Will I learn anything new from a Project subscription?
There’s definitely some overlap in content, but in a way that helps reinforce what you’ve already learned and apply that knowledge in new ways. A Projects subscription will help you become more effective at solving JavaScript problems, even if you’ve already read my guides or attended Academy.
How much of a time commitment does a Projects subscription involve?
Each month’s project(s) will take approximately 1 to 4 hours to complete. That number could be bigger or smaller depending on your level of experience and how much effort you want to put into it, but generally speaking, you’ll get more out of the program if you put more into it.
Does the Projects subscription cover new ES6 methods?
Yes. Where applicable, I cover new ES6 functions and browser APIs. I also include polyfills when available to push browser support as far back as possible.
Do you offer a student discount?
Absolutely! This applies to anyone in any type of schooling, including evening classes and coding bootcamps. Learn more about student discounts.
I have a poor exchange rate in USD. There’s no way I can afford this.
I totally get that in some countries salaries and cost of living are such that the Vanilla JS Academy is unaffordable. Send me an email at and I’ll send you a discount to make it fair for where you live.
I’m not a student. Any other discounts?
Yep. I’ve had a lot of helping getting where I am, and I want to pay it forward. If you’re a member of an under-represented group in tech, you can get special pricing. Learn more about discounts for under-represented groups in tech.
Do you have a refund policy?
Absolutely! If you’re not 100% satisfied with Vanilla JS Projects, email me at sometime in the first month of your subscription, and you’ll get a full refund. You can cancel at any time.
After I sign up, how do I access the projects?
Visit and create an account with the email address you used to make your purchase. You’ll be able to join the Slack channel, and have access to the library of current and past projects.
Are there any restrictions on the video archives and course code?
Nope. I trust you to do the right thing. My content is 100% DRM free. If you think others might enjoy a Projects subscription, please email me at for information about team pricing.
Do I need any special tools or equipment to complete the projects?
All you need to go through the program and work on the projects is a modern web browser and a text editor (I recommend VS Code). The solution videos are streaming HD and can also be downloaded, so you can watch any device you own.
Are there any rules or requirements for participating in the Slack channel?
Yes. You must be at least 18 years old, and read and agree to follow the Code of Conduct.
I have another question.
No problem! Send me an email at

Join now →

Clarity. Brevity. Unpretentious explanation. Care for best practices. Obvious attentiveness. Available to help "unstuck" students. You actually rock, Chris.- Kabolobari Benakole

Not ready yet? Get daily developer tips.

I send out a short email each weekday with code snippets, tools, techniques, and interesting stuff from around the web. Join 5,700+ daily subscribers.

If you have any questions about anything, feel free to send me an email at