Skill Module

Build CLI Apps in JavaScript & Node.js

4 branches·45 chapters·17 projects

Learn how to build, integrate, and safeguard scalable CLI tools, scripts, and apps with JavaScript, Node.js, npm, and Git.

About this module

This module turns programming fundamentals into real tools.

You'll build up solid JavaScript instincts — including working with numbers, strings, collections, functions, regular expressions, errors, and basic object-orientation — then apply them in the Node.js runtime where programs interact with the file system, handle events, process streams, and respond instantly to user input.

You'll learn to structure CLI programs that behave like utilities: parse arguments, read and write files, transform data, and report errors clearly. The projects are designed to sharpen thinking about input/output, state, and edge cases, which is exactly what teams expect from junior developers.

You'll learn how to use npm for finding the right packages, managing dependencies cleanly, automating tasks with scripts, and even publishing your own modules. You'll also practice real version-control habits with Git and GitHub so your work is reviewable, reversible, and collaborative.

By the end, you will be able to design, build, version, and ship command-line tools that solve concrete problems, and you'll be fully prepared to step into the world of API development next.

What you'll learn

Here's a shortlist of the key points you'll master by the end of this module.

  • Understand the fundamentals of the JavaScript language
  • Work with data structures, conditional logic, loops, and functions to solve real problems
  • Apply core software design concepts and patterns
  • Build command line tools and scripts that automate work
  • Write responsive and asynchronous programs in Node.js
  • Use npm to install, manage, and publish packages
  • Track and rewind changes to your codebase with Git
  • Collaborate with other developers using branches, pull requests, and reviews

The curriculum

Here's an overview of the chapters composing this module, organized by sections.

The JavaScript Programming Language

20 chapters·20 weeks·12 projects

  • The JavaScript Language Syntax
  • Storing and Reusing Data With Variables in JavaScript
  • Controlling the Execution Flow With Conditional Statements in JavaScript
  • Combining Conditions in JavaScript
  • Working With Numbers in JavaScript I
  • Working With Strings in JavaScript I
  • Repeating Instructions With Loops in JavaScript
  • Reusing Code With Functions in JavaScript
  • Advanced Functions in JavaScript
  • Keyed Data Structures in JavaScript I
  • Working With Numbers in JavaScript II
  • Keyed Data Structures in JavaScript II
  • The JavaScript Object Notation
  • Indexed Data Structures in JavaScript I
  • Indexed Data Structures in JavaScript II
  • Working With Strings in JavaScript II
  • Matching Patterns With Regular Expressions in JavaScript
  • Object-Oriented Programming in JavaScript
  • Throwing & Handling Errors in JavaScript
  • Asynchronous Execution in Node.js

The Node.js Runtime Environment

9 chapters·8 weeks·5 projects

  • The Node.js Runtime Environment
  • The CommonJS Module System in Node.js
  • The ECMAScript Module System in Node.js
  • Manipulating Bytes in Node.js
  • Handling Asynchronous Events in Node.js
  • Writing CLI Programs in Node.js
  • Working With Files in Node.js
  • Working With Directories in Node.js
  • Handling Data Streams in Node.js

The Node Package Manager

8 chapters·2 weeks

  • The Node Package Manager
  • Searching for Packages on the npm Registry
  • Installing & Using npm Packages
  • Listing Installed npm Packages
  • Updating Installed npm Packages
  • Removing Installed npm Packages
  • Automating Common Tasks With npm Scripts
  • Publishing Packages on the npm Registry

The Git Version Control System

8 chapters·2 weeks

  • The Git Version Control System
  • The Git Workflow
  • Navigating & Comparing Commits in Git
  • Removing Uncommitted Files in Git
  • Restoring, Reverting & Resetting Changes in Git
  • Pushing & Pulling Commits in Git
  • Making & Reviewing Pull Requests in GitHub
  • The Gitflow Development Workflow

The projects you'll build

Employers don't just want impressive resumes anymore, they also want impressive proof. With Learn Backend, you'll build a GitHub repository that actually proves you know backend development.

Here's an overview of the practical, hands-on projects you'll build.

lb_imdb

In this project, you'll write a JavaScript script that recommends a movie title based on a genre and a decade.

lb_schedule

In this project, you'll write a JavaScript script that determines whether a business is open or closed based on the day of the week and the time of the day.

lb_diamond

In this project, you'll write a JavaScript script that prints a diamond-shaped pyramid of variable size.

lb_radix

In this project, you'll write a JavaScript function that converts a number from a base to another base.

lb_recursive

In this project, you'll write a recursive JavaScript function that uses the digits of a number to generate all the possible arithmetic expressions that are equal to another number.

lb_for_honor

In this project, you'll write a JavaScript script that simulates a turn-based PvP fight between two heroes.

lb_pathfinder

In this project, you'll write a JavaScript script that finds the shortest travel itinerary between two interconnected cities.

lb_tictactoe

In this project, you'll write a JavaScript script that simulates and outputs a game of Tic-Tac-Toe play-by-play.

lb_spellit

In this project, you'll write a JavaScript script that translates a number made of digits to human-readable text.

lb_vigenere

In this project, you'll write a JavaScript script that implements a polyalphabetic substitution cipher that encrypts plain text strings using another string as encryption key.

lb_markup

In this project, you'll write a JavaScript script that converts Markdown to HTML.

lb_blockchain

In this project, you'll write a JavaScript script that implements a simple blockchain that simulates the exchange of digital currency between users.

lb_cron

In this project, you'll write a JavaScript task scheduler script that periodically executes asynchronous functions at fixed intervals.

lb_bc

In this project, you'll write a Node.js command-line script that partially reimplements the `bc` utility.

lb_wc

In this project, you'll write a Node.js script that partially reimplements the `wc` utility.

lb_ls

In this project, you'll write a Node.js script that partially reimplements the `ls` utility.

lb_csv2json

In this project, you'll write a Node.js script that converts a CSV file to a JSON file using a Transform stream.

Who is this for?

  • Beginners who want to discover the fundamentals of software development
  • Software developers who want to transition to backend development with Node.js

Why learn from me?

Razvan Ludosanu Profile Picture

Hi, I'm Razvan 👋 — A senior Node.js backend engineer, technical writer, online teacher, and founder of Learn Backend.

It's no secret: learning backend development on your own is extremely hard.

Before becoming a senior Node.js engineer with now over a decade of experience, I also failed at it for years... and probably for the same reasons you're struggling with it right now.

The internet is full of content, but very little direction. No one tells you what to learn first, what to ignore, or how it all fits together.

This is why I created Learn Backend: a roadmap that teaches the core principles first, gradually introduces hands-on skills, and shows how all the pieces logically fit together.

I wanted to give people like me, and maybe you, the best fighting chance to make it in the software industry as job-ready backend developers — without wasting the years or facing the same unnecessary hurdles I did.

So if you're tired of guessing what to learn next or overwhelmed by all the noise, Learn Backend was built for you.

What developers say about it

Our content isn't guesswork. It's continuously reviewed by professional web developers, and here's what some of them have to say...

This module covers the real foundations you expect from someone who says "I can code in Node". It perfectly aligns with what we ask juniors to do in actual tasks.

Gabriel F

Senior Backend Developer

I think the project list is the strongest part. These projects force the student to reason about I/O, state, and edge cases, which is the difference between "I watched a crash course" and "I can write a tool that solves a problem".

Jean-Baptiste M

Senior Frontend Developer

The way asynchronous behavior in Node.js is handled is accurate and presented in increasing complexity. It really teaches how Node behaves and why, which reduces a ton of confusion later when people start writing servers.

Corentin G

Senior Full-Stack Developer

Build CLI Apps in JavaScript & Node.js

Learn how to build, integrate, and safeguard scalable CLI tools, scripts, and apps with JavaScript, Node.js, npm, and Git.

Own this module

Lifetime access

119

One-time payment — 30-day money-back guarantee

By submitting this form, you agree to the Terms & Conditions and Privacy Policy.

What's included:

  • 4 sections
  • 45 premium lessons with full code
  • 17 complete projects with commented solutions
  • Progress tracking
  • Future module and project updates

Mastery Pro Bundle

All current and future courses — forever

€279Save 22%

One-time payment — 30-day money-back guarantee

By submitting this form, you agree to the Terms & Conditions and Privacy Policy.

What's included:

  • All courses and standalone branches
  • 130 premium lessons with full code
  • 26 complete projects with commented solutions
  • Progress tracking accross the full roadmap
  • Private student community access
  • All future module and project updates
  • Lifetime access

Our 100% satisfaction guarantee and money-back promise

We want the investment in our program to be an absolute no-brainer for you.

If for whatever reason you aren't 100% satisfied with your experience, send us an email within the first 30 days of purchase at support@learnbackend.dev and we'll refund your entire payment.

No hard feelings. No questions asked.

Everything else you need to know

You've got questions? We've got answers.

Build CLI Apps in JavaScript & Node.js | Learn Backend