Write Python. Get a native C binary. No C knowledge required.
uvx transpilatron your_code.py
| Benchmark | Python | C | Speedup |
|---|---|---|---|
| Sieve of Eratosthenes (10M numbers) | 0.526s | 0.022s | 24x |
| Selection sort (10K elements) | 1.963s | 0.033s | 58x |
Verified on the same machine. Same output. Fully static binaries.
Benchmarker's PC:
CPU: Ryzen 5 5500
Python 3.14
Zorin OS 18
transpilatron uses an AI agent to convert your Python project into C, compiles it (using -O2 or -O3 flags), and hands you a native binary. No runtime, no interpreter, no dependencies.
- Reads your Python entry file and follows all imports
- Transpiles the full project to C
- Writes a Makefile and compiles (static linking for minimal, dynamic for usual)
- Drops the binary in out/
| Tool | Why |
|---|---|
Note: You only need uv on your host machine. The AI agent automatically detects, installs, and configures all other development and verification dependencies (like C compilers, make, valgrind, and system headers) inside the build environment.
uvx transpilatron your_code.py
uv tool install transpilatron
On first run, the tool installs its dependencies and asks you to authenticate with poolside.
uvx transpilatron your_code.py
uvx transpilatron --minimal your_code.py
The binary lands at out/<your_code>
. That's it.
- Pure Python logic → idiomatic C
- HTTP (requests, urllib3) → raw BSD sockets (minimal) or libcurl (usual)
- JSON → cJSON
- Threading → pthreads
- File I/O → POSIX syscalls
- Multi-file projects → one binary
- Detects and fixes common Python bugs during transpilation
- Supports many major Python libraries with C extensions by using their C backends or alternatives
- The system attempts to translate pure Python libraries as well
- Web frameworks (flask, fastapi, django) → libmicrohttpd (usual only)
- torch / tensorflow → libtorch / TFLite C API (usual only)
| Mode | Default | Linking | HTTP | torch/tensorflow | Web Frameworks | Best for |
|---|---|---|---|---|---|---|
| minimal | Static only | Raw BSD sockets | Aborts with error | Not supported | Zero-dependency binaries for initramfs, scratch containers, embedded | |
| usual | ✓ | |||||
| Dynamic permitted | libcurl | libtorch / TFLite C API | libmicrohttpd | General use, speed + versatility |
- Linux and macOS only
- torch / tensorflow not supported under minimal mode
- Some dynamic Python patterns (metaclasses, heavy monkey-patching) may not translate cleanly
examples/
├── sieve.py # Prime number sieve — 24x speedup
└── sort.py # Selection sort — 58x speedup
While tools like Nuitka and PyInstaller package the CPython interpreter (and its dynamic standard libraries) to guarantee compatibility, transpilatron completely strips the CPython runtime. By translating Python logic into pure, dependency-free C, it allows you to build single, fully static binaries that run in environments with zero external libraries.
| Tool | Approach | CPython Runtime Dependency? | Fully Static Binaries? | Output Size | Ideal For |
|---|---|---|---|---|---|
| transpilatron | |||||
| Source-to-source C translation via LLM | No | ||||
| Yes | |||||
| < 1MB | CLI tools, microservices, serverless, initramfs, scratch containers, embedded | ||||
| Nuitka | Translates Python to C calling CPython APIs | Yes | No | ~30MB+ | Maximum CPython compatibility |
| PyInstaller | Bundles Python interpreter + .pyc files | Yes | No | ~30MB - 100MB+ | Desktop app distribution |
| Cython | Compiles Python/Cython to extension modules | Yes | No | N/A | Accelerating Python code |
| PyPy | Alternative JIT interpreter | Yes | No | N/A | Long-running server workloads |
uv
is the fastest Python package manager on the planet.
uvx
lets you run any Python tool instantly without installing it. If you're not using uv yet, you should be.
transpilatron was originally created to compile standalone initramfs boot scripts for Noodlix, a Python-only operating system — but works for many Python applications. *
minimal mode outputs fully static binaries. Runs even in initramfs. No dynamic linker required. *