Skip to content

qecko-labs/Quench

Repository files navigation

Quench

DOCUMENTATION: https://qecko-labs.github.io/quench-docs/

=========

Quench is a zero-overhead build tool for assembly, C, C++, Objective-C,
and Gloria. It wraps NASM, GAS, FASM, GCC, Clang, Zig, and LD behind a
single command-line interface, and provides fast, allocation-free builds
without Makefiles or configuration.

---

Project Philosophy

This tool isn’t here to hide the compiler from you.
It’s built for people who know what a linker actually does, and aren’t afraid to tell it what to do.
You pay for speed with knowledge — of flags, of libraries, of architectures.
Zero magic. Maximum performance.
If you want a black box, go use something else.
If you want to control the box — welcome.

## Quick Start

- Report a bug: https://github.com/qecko-labs/Quench/issues
- Get the latest release: https://github.com/qecko-labs/Quench
- Build Quench: See INSTALL
- Build your project with qh: See QUICKSTART

## Essential Documentation

All users should be familiar with:

- Build modes & languages: LANGUAGES
- CLI reference: CLI-REFERENCE
- Configuration file: TOML_CONFIG
- License: See LICENSE

Full documentation index: INDEX

# Who Are You?

Find your role below:

- New User - Building a project with qh for the first time
- Assembly Developer - Writing NASM, GAS, or FASM sources
- C / C++ / Objective-C Developer - Building with GCC, Clang, or Zig
- Gloria Developer - Writing and compiling Gloria sources
- Security Auditor - SBOM generation and SAST review
- Release Engineer - Reproducible and verifiable builds
- Cross-Compilation / Embedded Engineer - Targeting non-host platforms
- WebAssembly Developer - Building WASM targets
- Contributor - Extending or fixing Quench itself

# For Specific Users

## New User

Start here:

- Installation: INSTALL
- Quick Start & Usage: QUICKSTART
- Exit Codes & Troubleshooting: ERROR_HANDLING

## Assembly Developer

- Build Modes & Extensions: LANGUAGES
- Assembler Backends: SPECS
- CLI Build Reference: CLI-REFERENCE

## C / C++ / Objective-C Developer

- Language Guide: LANGUAGES
- Build Modes & Extensions: LANGUAGES
- CLI Build Reference, Profiles & Linking: CLI-REFERENCE
- Zig Backend: SPECS

## Gloria Developer

- Gloria Language: LANGUAGES
- Build Modes & Extensions: LANGUAGES

## Security Auditor

- Supply Chain Security (SBOM + SAST): SECURITY
- Aegis Security Core: INTERNALS
- Virtual Filesystem Layer (Aegis): INTERNALS

## Release Engineer

- Reproducible Builds, Verify, Bench: PERFORMANCE
- Supply Chain Security: SECURITY

## Cross-Compilation / Embedded Engineer

- Cross-Compilation Targets: WORKFLOW
- Configuration File Reference: TOML_CONFIG

## WebAssembly Developer

- WASM & Web Targets: WORKFLOW

## Contributor

- Project Tools (init, contribute, LSP, update): WORKFLOW
- Doctor, Platform Readiness, Testing Standards: INTERNALS
- HADES Engine, Contributing, License: INTERNALS
- Roadmap: ARCHITECTURE

# Performance

Measured against `nasm -f elf64 && ld` and `make -j4`, via hyperfine
(warmup 3, >= 10 runs). Test system: Intel Core i5-10310U (4C/8T,
1.7 GHz base), Arch Linux, NVMe SSD.

    modules     qh              make -j4          speedup
    -------     --------------  ----------------  -------
    20          19.3 +- 1.2 ms  45.4  +- 2.3  ms   2.35x
    50          31.1 +- 1.3 ms  85.0  +- 2.1  ms   2.73x
    100         57.0 +- 5.3 ms  185.5 +- 7.7  ms   3.25x
    150         73.1 +- 4.3 ms  229.3 +- 3.6  ms   3.14x
    200         82.2 +- 4.2 ms  291.1 +- 11.2 ms   3.54x
    400         223.1 +- 9.8 ms 1105.0 +- 24.1 ms  4.95x

Stress test, 5000 C files, AMD Ryzen 7 PRO 4750U (16 threads):

    ninja -j16    ~28.9 s
    qh            ~597 ms   (47.3x; 98% utilization across
                              16 threads; ~47 MB resident)

Full benchmark methodology and reproduction steps: PERFORMANCE

# Communication and Support

- Issues: https://github.com/qecko-labs/Quench/issues
- Source: https://github.com/qecko-labs/Quench
- Author: alexvoste <https://github.com/alexvoste>
- License: GPLv3 - see LICENSE

You can find all the news about updates and announcements of upcoming versions rh: https://coderlegion.com/user/alexvoste

About

Hardened cross-platform build toolchain for assembly and C developers. Unified CLI for NASM, GAS, FASM, GCC, Clang, LD, and Zig.

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages