150 pages. 35 fun and interactive exercises on CodePen. No setup required (just a web browser). Available in print (good) or as a a PDF ebook (even better). Best of all, it’s free!
You can get more more details (and the story of why I wrote it) on the Gumroad project page. Happy coding!