Vix CLI is the official command-line interface for
Vix.cpp — the modern C++ backend runtime.It provides a professional, modern, runtime-like developer experience for C++, comparable to Python, Node.js, Deno, or Bun.
The Vix CLI (vix) brings modern runtime ergonomics to C++:
- Instant project creation
- Smart CMake-based builds
- Friendly compiler diagnostics
- Sanitizer-first validation
- Script-like execution of
.cppfiles - Packaging & artifact verification
- Built-in interactive REPL (default)
Running vix with no arguments launches the interactive REPL.
vix- Variables & expressions
- JSON literals
- Math evaluation
- Runtime APIs (
Vix.cwd(),Vix.env(), etc.) - Script-like exploration
Explicit mode:
vix replvix new blogCreates:
- CMake-based project
- Modern C++20 structure
- Ready-to-run Vix app
vix build- Uses CMake presets automatically
- Parallel builds
- Colored logs & spinners
- Clean Ctrl+C handling
vix run- Auto-build if required
- Real-time logs
- Runtime log-level injection
Script mode:
vix run demo.cppCompile-only validation:
vix check
vix check demo.cppWith sanitizers:
vix check demo.cpp --san
vix check demo.cpp --asan
vix check demo.cpp --ubsan
vix check demo.cpp --tsanRun tests:
vix tests
vix tests --sanCreate a distribution artifact:
vix pack --name blog --version 1.0.0Verify artifacts:
vix verify dist/blog@1.0.0
vix verify dist/blog@1.0.0 --require-signature- Explains template & overload errors
- Detects missing includes
- Highlights the first real error
- Provides actionable hints
vix <command> [options]| Command | Description |
|---|---|
vix |
Start REPL (default) |
vix repl |
Start REPL explicitly |
vix new <name> |
Create a new project |
vix build [name] |
Configure + build |
vix run [name] [--args] |
Build and run |
vix dev [name] |
Dev mode (watch & reload) |
vix check [path] |
Compile-only validation |
vix tests [path] |
Run tests |
vix pack [options] |
Create distribution artifact |
vix verify [options] |
Verify artifact |
vix orm <subcommand> |
ORM tooling |
vix help [command] |
Show help |
vix version |
Show version |
vix
vix new api
cd api
vix dev
vix check --san
vix tests
vix pack --name api --version 1.0.0
vix verify dist/api@1.0.0The CLI is built around a command dispatcher:
std::unordered_map<std::string, CommandHandler> commands;| Path | Responsibility |
|---|---|
include/vix/cli/CLI.hpp |
CLI entry & parsing |
src/CLI.cpp |
Command routing |
src/ErrorHandler.cpp |
Compiler diagnostics |
src/commands/ReplCommand.cpp |
Interactive REPL |
src/commands/CheckCommand.cpp |
Validation |
src/commands/PackCommand.cpp |
Packaging |
src/commands/VerifyCommand.cpp |
Verification |
git clone https://github.com/vixcpp/vix.git
cd vix/modules/cli
cmake -B build -S .
cmake --build build -j$(nproc)Binary:
./build/vixcd vix
cmake -B build -S .
cmake --build build| Variable | Description |
|---|---|
VIX_LOG_LEVEL |
Runtime log level |
VIX_STDOUT_MODE |
line for real-time logs |
VIX_MINISIGN_SECKEY |
Secret key for pack |
VIX_MINISIGN_PUBKEY |
Public key for verify |
Vix.cpp — Modern C++ backend runtime
Version: v1.x.x
Usage:
vix [GLOBAL OPTIONS] <COMMAND> [ARGS...]
vix help <command>
Quick start:
vix new api
cd api && vix dev
vix pack --name api --version 1.0.0 && vix verify
Commands:
Project:
new <name> Create a new Vix project
build [name] Configure + build
run [name] Build and run
dev [name] Dev mode
check [path] Compile-only validation
tests [path] Run tests
Packaging & security:
pack Create distribution artifact
verify Verify artifact or package
REPL:
repl Start interactive REPL
(default) Run `vix` to start the REPL
Global options:
--verbose
-q, --quiet
--log-level <level>
-h, --help
-v, --version
MIT License © Gaspard Kirira
See LICENSE for details.