node-lessons (alsotang/node-lessons)
Searching Database…
16.4K ·GitHub
What is this?
A free, hands-on Node.js course (titled 'Node.js 包教不包会' — roughly 'Node.js: Taught, Not Guaranteed') by alsotang, built as a series of practical lessons rather than a textbook.
Is this a book to read or a set of exercises?
It is a lesson-based course: each numbered lesson sets a concrete challenge (build an Express app, write a scraper, control concurrency), and you are encouraged to try the challenge before reading the lesson's explanation.
How do I start working through it?
Start with Lesson 0, which walks through setting up a Node.js dev environment, then go through the numbered lessons in order, starting with a basic Express app and moving on to scraping, concurrency, testing, and deployment.
Do I need anything beyond Node.js itself?
Just a working Node.js environment to begin; each later lesson introduces its own npm packages as needed, such as Express, superagent, cheerio, eventproxy, async, and Mocha.
Is the content still current?
The book was written in 2015 and never updated to cover Promises/async-await as the modern best practice for async code, though the examples still run fine since JavaScript has stayed backward compatible.
Who is this course friendly (and unfriendly) for?
It assumes some baseline familiarity: it is not friendly to complete web-dev beginners or to Windows users, but is a good fit for developers coming from a Ruby on Rails background.
What does the web-scraping lesson teach?
Lesson 3 walks through building a simple scraper using the superagent HTTP client together with cheerio for parsing HTML.
How does the course handle testing?
Three lessons cover testing: Mocha/should/istanbul for unit tests, Mocha/chai/PhantomJS for browser-side tests, and supertest for testing HTTP endpoints.
Does the course cover deploying a Node.js app?
Yes - Lesson 12 covers deploying to Heroku and Lesson 13 covers setting up continuous integration with Travis.
Are more lessons planned?
The author lists planned but unwritten topics, including explaining HTTP headers, using MySQL, setting up Node.js/MongoDB/nginx on a fresh VPS, and building a simple blog app.
What are similar projects?
freecodecamp.cn, N-blog, js-stack-from-scratch, 30-Days-Of-Python, Hello-Python, jstraining, Web-Dev-For-Beginners, curriculum
Which topics is it in?
learn-to-code, heroku, regex, middleware, coding, express, concurrency, deployment, mongodb, async, curriculum, node