TypeScriptintermediatecliAI generated

CLI Task Runner and Build Tool

Build a lightweight task runner, similar to a mini npm-scripts replacement, that reads a config file defining tasks with dependencies and runs them in the correct order with colored terminal output. Learners practice building CLIs with typed configs, topological sorting for task dependencies, and child-process orchestration.

Estimate
~10h
Steps
6
Completed by
0
Proposed by
codeseed.app

Node.js · Commander · chalk

Project roadmap

  1. 01

    Design the typed config schema

    ~1.5h

    Define the TypeScript types for a task config file including names, commands, and dependencies.

  2. 02

    Implement the config loader

    ~1.5h

    Load and validate the config file, reporting clear errors for malformed entries.

  3. 03

    Implement topological sorting

    ~2h

    Sort tasks by their dependencies so each runs only after its prerequisites complete.

  4. 04

    Execute tasks as child processes

    ~2h

    Run each task as a child process, streaming its output to the terminal.

  5. 05

    Support parallel execution

    ~2h

    Run independent tasks concurrently while respecting dependency ordering.

  6. 06

    Add colored reporting

    ~1h

    Print colored success/failure summaries for the overall run using chalk.

Ready to build this?

Get a GitHub repo and start building. Your AI reviewer checks each step as you go.

~10h · 6 steps

Tech stack

Node.jsCommanderchalk