A runtime for C++ applications.

Vix.cpp provides a coherent way to build, run, and operate C++ applications throughout their lifecycle, while working with the C++ ecosystem you already use.

01

From one file to a project.

Run a C++ source file directly, or use Vix.cpp with a complete project.

  • Run a single .cpp file with vix run.
  • Build and test project targets.
  • Existing CMake projects can remain CMake-first.
02

Manage project dependencies.

Install and lock C++ dependencies without replacing the build system your project already uses.

  • Install Registry or Git dependencies.
  • Use installed dependencies from existing CMake projects.
  • Keep resolved dependency state in vix.lock.
03

From build to production.

Build, deploy, and operate C++ backend applications through the Vix.cpp workflow.

  • Deploy with vix deploy.
  • Manage services, reverse proxies and health checks.
  • Inspect production state and logs with vix.
main.cpp
C++
1#include<future>
2#include<iostream>
3#include<thread>
4
5intmain()
6{
7    std::promise<int> promise;
8    auto future = promise.get_future();
9
10    std::thread worker([p =std::move(promise)]() mutable {});
11    worker.join();
12
13    std::cout << future.get() <<'\n';
14}
Terminal Vix
$vix run main.cpp
runtime error: broken promise
--> /home/softadastra/tmp/vix/main.cpp:7:5
5 | int main()
6 | {
7 |     std::promise<int> promise;
  |     ^
8 |     auto future = promise.get_future();
hint: set a value or exception before destroying the promise, or keep the promise alive until fulfillment

Why Vix.cpp?

Vix.cpp works with the C++ ecosystem you already use, while giving applications a clearer lifecycle and better visibility when something goes wrong.

01

Keep your C++ stack.

CMakeGCC / Clangyour librariesworks with
Vix.cpp

Use CMake, GCC or Clang, and the C++ libraries your project already depends on. Vix.cpp does not require you to move into a separate ecosystem.

02

One application lifecycle.

buildruntestdeployinspectVix.cpp

Use the same Vix.cpp workflow as the application moves from development to execution and production.

03

See what actually failed.

compilerruntimedependenciesbuildproduction
Vix.cpp
causelocationhint

Vix.cpp connects failures from different parts of the application lifecycle to the cause, location, and information you can act on.

Build it in Vix.cpp

Vix.cpp focuses on two areas where it is designed to provide a clear development experience from the first lines of code to a complete project.

Web & Networked Applications

Build connected applications in C++ with a development workflow that remains clear as the project grows and reaches production.

Building Applications

Developer Tools

Build tools in C++ without making project setup, dependencies, testing, and distribution the hardest part of the work.

Building Tools

Vix.cpp in production

Vix.cpp is built for real C++ applications that move beyond development and need to keep running. Its production experience is shaped by real-world use, continuous validation, and the problems that appear when software is deployed and operated over time.

Community

Meet the Vix.cpp community.

Meet people using and exploring Vix.cpp, ask questions, share what you build, and exchange ideas around C++ development.

Explore the Community
Softadastra

Vix.cpp is maintained by Softadastra.

Softadastra is the organization responsible for the long-term development and stewardship of Vix.cpp. It supports the project's engineering, infrastructure, and direction while Vix.cpp remains open source.

Learn about Softadastra

Sponsors

Help build a better C++ development experience.

Vix.cpp is open source and developed continuously. If Vix.cpp helps your work, or you want better C++ tooling to exist, sponsorship gives Softadastra more time and resources to improve, test, maintain, and support the project for everyone.

Sponsor Vix.cpp

Individuals and organizations can sponsor Vix.cpp. Sponsors can also be recognized here.

Get started with Vix.cpp

Start with a single C++ file or use Vix.cpp with an existing project.