crocuda/pipelight
crocuda/pipelight has 979 GitHub stars and 27 forks. GitHot measured 0 stars in 24 hours, 0 in 7 days, and -3 in 15 days. Last checked 2026-11-09 16:03 UTC. Last push 2026-06-30.
Tiny automation pipelines. Bring CI/CD to the smallest projects. Self-hosted, Lightweight, CLI only.
Measured star growth
- in 24h
- 0
- in 7 days
- 0
- in 15 days
- -3
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalPipelight - Tiny automation pipelines.
Automate your most boring and repetitive tasks.
📦 A lightweight tool for CICD
Pipelight is a Rust based small(13Mb) cli tool to be used from inside a terminal.
- Define pipelines using toml, hcl, yaml, typescript.
- Trigger on events: git hooks, file changes...
Checkout the Documentation for a much friendlier approach and a deeper understanding.
Usage example

Define pipelines with a configuration language
Fold your bash commands into an object Pipeline{ Step{ Command }}.
Use your preferred configuration languages for your most simple pipelines.
Toml
[[pipelines]] name = "test" [[pipelines.steps]] name = "build" commands = ["pnpm install", "pnpm build"] [[pipelines.triggers]] branches = ["master","dev"] actions= ["pre-push", "pre-commit"]Hcl
# A pipeline pipelines = [{ name = "test" steps = [{ name = "build" commands = ["pnpm install", "pnpm build"] }] triggers = [{ branches = ["master","dev"] actions = ["pre-push", "pre-commit"] }] }]Yaml
pipelines: - name: test steps: - name: build commands: - pnpm install - pnpm build - triggers: - branches: - master - dev actions: - pre-push - pre-commit
Define pipelines with a programming language.
Fold your bash commands into an object Pipeline{ Step{ Command }}.
As long as you know javascript, you are ready to go with your favorite syntax flavor.
Javascript. Use a verbose and declarative syntax.
const my_pipeline = { name: "build_my_website", steps: [ { name: "clean directory", commands: ["rm -rf ./dist"], }, { name: "build", commands: ["pnpm install", "pnpm lint", "pnpm build"], }, ], };Typescript(with Helpers). Use the provided sweet shorthands.
const my_pipeline = pipeline("build website", () => [ step("clean directory", () => [`rm -rf ${build_dir}`]), step("build", () => ["pnpm install", "pnpm lint", "pnpm build"]), step("send to host", () => [`scp -r ${build_dir}`]), step("do stuffs on host", () => [ ssh("host", () => ["systemctl restart nginx"]), ]), ]);
🤖 Automatic triggers
Add automatic triggers to your pipeline.
If you want to run tests on file change or deploy to production on push to master.
# enable watcher and git hooks.
pipelight enable git-hooks
pipelight enable watcher
[[pipelines.triggers]]
branches = ["master"]
actions = ["pre-push"]
🫦 Pretty and verbose logs
Get the pipeline most relevant informations or dive into the steps and commands standard outputs.
Get the pipeline status, event, execution time... and more.
pipelight logs

Get a tranparent outputs of every subprocesses.
pipelight logs -vvvv

🛠️ Install
Checkout the instruction guide for your favorite package manager.
🚀 Get started!
Create a default configuration file pipelight.ts in your project root
directory with:
pipelight init
Try the harmless default pipeline:
pipelight run
And explore logs:
pipelight logs -vvvv
Community
Reach the community whenever you need support or software improvements. On discord or on telegram at @Areskul or send a mail at [email protected].
Licensed under GNU GPLv2 Copyright (C) 2023 Areskul
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
561,561 starspublic-apis/public-apis
A collective list of free APIs
497,876 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
449,393 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,300 stars