You can't automate something you can't run by hand first. So before we touch any pipeline, let's get the tools installed, meet our project, and earn a green test run on your own machine.
- Install the four tools every lesson assumes: Git, Node.js, a code editor, and a GitHub account.
- Meet the Task Manager API, the single Node.js project this whole course improves.
- Clone it, install dependencies, run the tests, and start the server locally.
- Know what this course is and what it deliberately is not.
Why start here?
Most beginners try to "set up CI/CD" on a project that doesn't even run cleanly on their own laptop. The pipeline fails, and now you're debugging two things at once: your app and the automation. You can't tell which is broken.
We get a reliable, green local baseline first. Once npm test passes on your machine, every later lesson just teaches a robot to run the exact same commands. Automation becomes "do what I already do, automatically."
The tools you need
Four things. Install them once and you're set for the whole course.
- Git — version control. Check with
git --version. - Node.js (v20 LTS) — runs our JavaScript app and tests. Check with
node --version. - A code editor — VS Code is a great free default.
- A GitHub account — free, and where our entire pipeline will live.
Meet the project: the Task Manager API
Throughout this course we improve one project — a small Task Manager API built with Node.js, Express, and tested with Jest. It has clear tests, a real build step, and is easy to containerize and deploy. That makes it the perfect CI/CD teaching project.
Clone, install, test, run
Open a terminal and run these one at a time. (Replace the URL with the course's starter repo.)
terminal
git clone https://github.com/your-org/task-manager-api.git
cd task-manager-api
npm install # download dependencies into node_modules
npm test # run the Jest test suite — expect all green
npm start # boot the API on http://localhost:3000With the server running, hit it once to prove it works:
terminal
curl http://localhost:3000/api/tasks
# -> [] (an empty task list, as JSON)The spine of this course is Node.js, but every command has an equivalent:
- React (frontend):
npm install→ same;npm test→ same; build withnpm run build; run withnpm run dev. - Python / Flask:
pip install -r requirements.txt; test withpytest; run withflask run.
What this course IS — and IS NOT
IS: a hands-on, beginner-to-job-ready path through real CI/CD using GitHub Actions, built around one running project.
IS NOT: a deep Kubernetes, Terraform, or platform-engineering course. Those appear only as a closing "where to go next" perspective in Section 8 — not as core lessons.
Run all four checks and confirm each one: git --version, node --version (expect v20+), npm test shows all green, and curl returns an empty array. If every box ticks, you're ready to automate.
- Get a green local baseline before automating — CI just repeats commands you already trust.
- Four tools power the whole course: Git, Node.js, an editor, and GitHub.
- We improve one project — the Task Manager API — in every lesson, so there's no stack-switching.
- This course is practical CI/CD with GitHub Actions, not a Kubernetes or Terraform deep-dive.