About this site¶
What is curlpipebash.com?¶
curlpipebash.com is a documentation site that catalogs, analyzes and documents curl | bash installation scripts used by popular open-source projects. Many well-known tools -- Docker, Homebrew, nvm, Laravel and others -- offer a one-liner like this as their recommended installation method:
curl -s https://example.com/install.sh | bash
This site downloads those scripts, runs code analysis on them, and presents the results in a readable format so you can see exactly what each script does before you run it.
What you'll find here¶
Each example page includes:
- The curl command needed to run the script
- A description of what the script installs
- A reference link to the project's official documentation
- Code statistics generated by cloc (lines of code, comments, blank lines)
- The full source code of the script, so you can read it before piping it to bash
The site also has a blog section with posts about newly analyzed scripts and observations about the curl | bash pattern in the wild.
Why does this site exist?¶
The curl | bash pattern is both convenient and controversial. It lets you install software with a single command, but it also means you're piping code from the internet directly into your shell. That requires trust.
This site exists to make that trust more informed. By presenting the full source code and statistics for each script, it lets you:
- Inspect before you install -- read the actual code a script will execute
- Compare approaches -- see how different projects structure their installers
- Understand the scope -- check how many lines of code you're about to run and in what languages
Projects covered¶
The site currently includes installation scripts from projects such as:
| Project | URL | What it installs |
|---|---|---|
| Docker | get.docker.com |
Docker Engine |
| Homebrew | brew.sh |
macOS package manager |
| nvm | nvm-sh/nvm |
Node Version Manager |
| Laravel | laravel.build |
Docker-based Laravel app |
| FrankenPHP | frankenphp.dev |
FrankenPHP server |
| basher | basherpm/basher |
Bash package manager |
| PHP/Composer/Laravel | php.new |
PHP, Composer and Laravel |
| Google Cloud SDK | sdk.cloud.google.com |
Google Cloud CLI tools |
New scripts are added regularly -- check the blog for the latest additions.
How it's built¶
The site is built with MkDocs and the Material for MkDocs theme. The example pages are generated automatically by a custom bash script (curlbash.sh) built on the bashew framework. The generation pipeline:
- Downloads the installation script via
curl - Runs
clocto produce code statistics - Wraps everything into a structured Markdown page
- MkDocs renders the final HTML
The site is deployed to GitHub Pages via GitHub Actions.
Author¶
This site is maintained by Peter Forret.