GitHub - NoodlixProject/transpilatron: AI agent that transpiles Python to static C binaries. No runtime, no interpreter, no dependencies. · GitHub
/" data-turbo-transient="true" />
Skip to content
Search or jump to...
Search code, repositories, users, issues, pull requests...
-->
Search
Clear
Search syntax tips
Provide feedback
--><br>We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
-->
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up
Appearance settings
Resetting focus
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
NoodlixProject
transpilatron
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
master
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>5 Commits<br>5 Commits
examples
examples
src/transpilatron
src/transpilatron
.gitignore
.gitignore
.python-version
.python-version
README.md
README.md
pyproject.toml
pyproject.toml
test_transpile.py
test_transpile.py
uv.lock
uv.lock
View all files
Repository files navigation
transpilatron
Write Python. Get a native C binary. No C knowledge required.
uvx transpilatron your_code.py
Benchmarks
Benchmark<br>Python<br>Speedup
Sieve of Eratosthenes (10M numbers)<br>0.526s<br>0.022s<br>24x
Selection sort (10K elements)<br>1.963s<br>0.033s<br>58x
Verified on the same machine. Same output. Fully static binaries.
Benchmarker's PC:
CPU: Ryzen 5 5500
Python 3.14
Zorin OS 18
How it works
transpilatron uses an AI agent to convert your Python project into C,<br>compiles it (using -O2 or -O3 flags), and hands you a native binary.<br>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/
Requirements
Tool<br>Why
uv<br>Run transpilatron instantly with uvx
Note: You only need uv on your host machine. The AI agent automatically<br>detects, installs, and configures all other development and verification<br>dependencies (like C compilers, make, valgrind, and system headers)<br>inside the build environment.
Install
# Run without installing<br>uvx transpilatron your_code.py
# Or install globally<br>uv tool install transpilatron
On first run, the tool installs its dependencies and asks you to<br>authenticate with poolside.
Usage
# Default mode (usual) — dynamic linking, libcurl, torch/tflite, web frameworks<br>uvx transpilatron your_code.py
# Minimal mode — fully static, raw sockets, no torch/tflite<br>uvx transpilatron --minimal your_code.py
The binary lands at out/. That's it.
What it handles
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)
Modes
Mode<br>Default<br>Linking<br>HTTP<br>torch/tensorflow<br>Web Frameworks<br>Best for
minimal
Static only<br>Raw BSD sockets<br>Aborts with error<br>Not supported<br>Zero-dependency binaries for initramfs, scratch containers, embedded
usual<br>Dynamic permitted<br>libcurl<br>libtorch / TFLite C API<br>libmicrohttpd<br>General use, speed + versatility
Limitations
Linux and macOS only
torch / tensorflow not supported under minimal mode
Some dynamic Python patterns (metaclasses, heavy monkey-patching) may not translate cleanly
Examples
examples/<br>├── sieve.py # Prime number sieve — 24x speedup<br>└── sort.py # Selection sort — 58x speedup
Comparison
While tools like Nuitka and PyInstaller package the CPython interpreter<br>(and its dynamic standard libraries) to guarantee compatibility,<br>transpilatron completely strips the CPython runtime .<br>By translating Python logic into pure, dependency-free C, it allows you<br>to build single, fully static binaries that run in environments with<br>zero external libraries.
Tool<br>Approach<br>CPython Runtime Dependency?<br>Fully Static Binaries?<br>Output Size<br>Ideal For
transpilatron<br>Source-to-source C translation via LLM<br>No<br>Yes
CLI tools, microservices, serverless, initramfs, scratch containers, embedded
Nuitka<br>Translates Python to C calling CPython APIs<br>Yes<br>No<br>~30MB+<br>Maximum...