Wes Bos' (@wesbos) JavaScript 30 Day Challenge. This is a plain vanilla JavaScript exercise, without any libraries, transpilers or frameworks. I have a README for each day when I have added custom functionality, that you can check below.
My own implementations can be found here.
Check the course at https://JavaScript30.com
I have beautified the HTML
and CSS
using atom-beautify
and linted the JavaScript
using JavaScript Standard Style.
- Using methods and properties from the following
Web APIs
andinterfaces
MouseEvent
,HTMLMediaElement
,Fullscreen
,WebStorage
,Navigator
,Geolocation
,Canvas
,Web Speech
Document Object Model
Node List- ES6
Promises
,template literals
,array spreading
,destructuring parameters
,typed arrays
,arrow function
transitioned
event- use of the
data
attribute for custom element data RegEx
string filter- parent-children
event delegation
JSON.stringify()
- local servers (through
npm
packages) - and others
- JavaScript Drum Kit and my notes
- JS + CSS Clock
- CSS Variables
- Array Cardio, Day 1
- Flex Panel Gallery and my notes
- Type Ahead and my notes
- Array Cardio, Day 2
- Fun with HTML5 Canvas
- Dev Tools Domination
- Hold Shift and Check Checkboxes and my notes
- Custom Video Player and my notes
- Key Sequence Detection
- Slide in on Scroll
- JavaScript References vs. Copying
- LocalStorage and my notes
- Mouse Move Shadow
- Sort Without Articles
- Adding Up Times with Reduce
- Webcam Fun and my notes
- Speech Detection (not working in browsers for now)
- Geolocation and my notes
- Follow Along Link Highlighter
- Speech Synthesis and my notes
- Sticky Nav
- Event Capture, Propagation, Bubbling, and Once
- Stripe Follow Along Nav and my notes
- Click and Drag
- Video Speed Controller
- Countdown Timer
- Whack A Mole
This is the main repository for all of the projects in the course.
NOTE ON PULL REQUESTS: All of these projects are part of the course. While I do appreciate people trying to make some things prettier or adding new features, we are only accepting pull requests and looking at issues for bug fixes so that the code stays inline with the course