Selected work

School Management CLI

Small commands. Clear boundaries.

01Read02Parse03Apply04Save

The starting point.

A compact command language still needs clear parsing, modular handlers, validation, and durable storage.

What I built.

I built the prompt loop, parser, trainee and course handlers, JSON storage, validation rules, and focused unit tests.

Follow the flow.

01 / Read

Read an entity and action from a compact command.

Made to work.

The CLI supports trainee and course workflows, with at most 20 participants per course and five courses per trainee.

Decisions that matter.

  1. 01

    Separate parsing from domain rules.

    Commands are parsed before reaching the trainee or course handler, keeping responsibilities focused.

  2. 02

    Give constraints a home.

    Explicit date and enrolment validation protects stored records and is covered by focused unit tests.

The work is open.

Implementation, decisions, and review history.

Node.js / JavaScript / JSON storage / Vitest / prompt-sync / Chalk

Loc Events

Let’s build
something real.

Working-student opportunities / 16 hrs a week / Amsterdam