Rivex — high-performance Python web framework with a bundled Rust core
Project description
Rivex — Python SDK
The Python SDK for Rivex — a high-performance web
framework whose hot paths run as native Rust. Published to PyPI as
vexarr-rivex and imported as rivex.
pip install vexarr-rivex
import rivex
app = rivex.RivexServer()
app.add_route("GET", "/", lambda req: {"hello": "world"})
app.run("0.0.0.0", 8000)
The wheel is self-contained: the Rust core (Hyper + Tokio) is compiled into a PyO3 extension and bundled with every wheel. No external download. No Rust toolchain required at install time.
How the bundling works
The Rust source lives in the core repository, which is
linked here as a git submodule at core/. At build time maturin
compiles the rivex-python crate from that submodule and packages the
resulting rivex_core.<ext> shared library into the wheel alongside a
thin Python wrapper (rivex/__init__.py) that re-exports the public
API.
vexarr-rivex wheel
┌─────────────────────────────┐
│ rivex/__init__.py │ ← Python wrapper (this repo)
│ rivex_core.<ext> │ ← Compiled PyO3 extension
│ rivex_core.pyi │ ← Type stubs
└─────────────────────────────┘
▲
maturin
│
┌────────────┐
│ core/ │ ← git submodule
│ crates/ │ of rivex-core
│ rivex- │
│ python │
└────────────┘
Local development
# 1. Clone with the core submodule
git clone --recurse-submodules https://github.com/rivex-dev/python.rivex.vexarr.com
cd python.rivex.vexarr.com
# 2. Install maturin and a Rust toolchain (only needed for local builds —
# end users get prebuilt wheels)
pip install maturin
rustup toolchain install stable
# 3. Build + install into the current venv
maturin develop --release
python -c "import rivex; print(rivex.__version__)"
To bump the bundled core version, update the submodule pointer:
cd core && git fetch && git checkout v0.2.0 && cd ..
git add core && git commit -m "core: bump to v0.2.0"
Releasing
Tagging a version on main triggers CI to build wheels for Linux
(x86_64, aarch64), macOS (x86_64, aarch64), and Windows (x64)
across Python 3.10–3.13, then publishes them to PyPI.
License
MIT — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vexarr_rivex-0.1.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 6.7 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a74b86a168c64eee4c8d1c53a1265f19395f521650b5cb561bc442db45fc9b0
|
|
| MD5 |
2673edd5904347cb17fd6902bec1cbed
|
|
| BLAKE2b-256 |
346bbf840c07ca3b11e40bb6a7af8fa7440b29c68d38cde2eac25351de422971
|
File details
Details for the file vexarr_rivex-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 7.0 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
63b41910ebb5a7e33d77c85e5b6d9fcf4413fa8db657ba411fb3eff37f9cc553
|
|
| MD5 |
61ffd0f5f06d98533bac8ab0462ca3a1
|
|
| BLAKE2b-256 |
e6fc5117eb26e627f8cb06c5860dfa457df4e7d8ea5924d7c7251a4f49d9baa7
|
File details
Details for the file vexarr_rivex-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 6.8 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
872ffd945a95f8dfd6fdfc7a5c1ff15088413e6c8d693e642da61fe8c2195e2c
|
|
| MD5 |
67b7c4855e196dfde9b1da76eca0589e
|
|
| BLAKE2b-256 |
097c64c78383b40213f18b78a767d14f74482bb4c991479f02bf7d81a07d39d0
|
File details
Details for the file vexarr_rivex-0.1.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc1586375e7cccc2e11d30b7c4b3719b289639e93324ee0267524ef42bba978c
|
|
| MD5 |
577656bfb2e39c43a977f0f48b15c17d
|
|
| BLAKE2b-256 |
9c814d26b5e7d43fcfd0e1e32f249e0f864aff9b349ce544e07979377645c301
|
File details
Details for the file vexarr_rivex-0.1.0-cp313-cp313-macosx_10_12_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp313-cp313-macosx_10_12_x86_64.whl
- Upload date:
- Size: 6.6 MB
- Tags: CPython 3.13, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80411e7ed1bf5afa3ef66698d6be88c9838abf97d2b1db69c6a411159ea92018
|
|
| MD5 |
d5de59b9f138736eae9d003e542be5ac
|
|
| BLAKE2b-256 |
1caf49749b254fba07a3b4712adf272c25b51f60069ec7ba5a7d0934d2dc2259
|
File details
Details for the file vexarr_rivex-0.1.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 6.7 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
375c2667c62c963b42122970d507dcc4cabe4bc157e6027a2385762def6688d1
|
|
| MD5 |
46bec151e2bcd67c40b5c30e37b52640
|
|
| BLAKE2b-256 |
7ee992e6aeee7a9e6ed33647408a593c5b1d4593cfee723bc66f3fbb766c217d
|
File details
Details for the file vexarr_rivex-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 7.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f207979b900b900ea9e67c13f3aa9184f169f903282f695615664f47cbedc87
|
|
| MD5 |
ae984f5f1cce797598e017c6df2b3da0
|
|
| BLAKE2b-256 |
b6b8c4a5d6269e4d93187b7e2fb8e128f9efb8d5e47cfbce8bce5a025094d385
|
File details
Details for the file vexarr_rivex-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 6.8 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cfb57363a5074923a3dd1b1c3436282d538b2aa86917b0f8f0510fb5412c9833
|
|
| MD5 |
78a8927bdbf76f3d559e2daa0bf1d396
|
|
| BLAKE2b-256 |
a9646baabdf085b870c88975867405454119ad225a60338e6ec5a3a688905a89
|
File details
Details for the file vexarr_rivex-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6dea3c5ea8c0818c953ea8d01418ee6acbf83573e6013235065f6fd1a0d6355
|
|
| MD5 |
e8fa3c70436e46d20478c9ba77336008
|
|
| BLAKE2b-256 |
6b80675b49fb2c2fe5ebf129faa426630e88d3a8576116320f9487776245d080
|
File details
Details for the file vexarr_rivex-0.1.0-cp312-cp312-macosx_10_12_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp312-cp312-macosx_10_12_x86_64.whl
- Upload date:
- Size: 6.6 MB
- Tags: CPython 3.12, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
71460a6a0f4c904400cbb823c928a987083fe6e43b5b2cea4eb6a61ed021fea5
|
|
| MD5 |
6281362fb1e313e70d1dd517a8d39d9d
|
|
| BLAKE2b-256 |
31a55dbc8e5506be63fe3b82e63b7e56c2eb8ac1a2aab2b0c8bf1508f69ae4cc
|
File details
Details for the file vexarr_rivex-0.1.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 6.7 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30d35b5a12a0eda5278164a88098ef51e3d26b537ed45c0f7d8707092f49434b
|
|
| MD5 |
3b4eb9621f0097f1c89c2ce3582529f1
|
|
| BLAKE2b-256 |
420727fb7af23c444a2706f0f2bec701ab79ea140c64d5e27d001a6ce687a5b6
|
File details
Details for the file vexarr_rivex-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 7.0 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
697c16433468bc748f0c4d888419819e5b09fe4887905b78535fdae443d5eff0
|
|
| MD5 |
46cdf648e496a4e8f0cb8a3b7165219f
|
|
| BLAKE2b-256 |
5c68a2caa7b27c472e208741c7287735baac4eae0923bd4b08ff4841b0069b2e
|
File details
Details for the file vexarr_rivex-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 6.8 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96b24cdb6baa5743f615d8920ba2c29afa1716ca86ab668d34de3ad00d40da7f
|
|
| MD5 |
a8f7f1201333587ebeecc41d0398e9e8
|
|
| BLAKE2b-256 |
c29f5ce42cc249f76053cec3c55f546bcc51c66be37f8195c8eb024d6e87a1c1
|
File details
Details for the file vexarr_rivex-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e2e0d444a65cd262f544bd2ab106787bd65baa71705b8257fc82c7405e50c2b
|
|
| MD5 |
12a2c8b1e4aeefeaeb2011abec064eb9
|
|
| BLAKE2b-256 |
4c58b817457bcf10c96bc4cf0715e543ced4e0f688568b1fffee7aa4b023724f
|
File details
Details for the file vexarr_rivex-0.1.0-cp311-cp311-macosx_10_12_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp311-cp311-macosx_10_12_x86_64.whl
- Upload date:
- Size: 6.6 MB
- Tags: CPython 3.11, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
556fb8d3702792984f443abd09b089c1950d53eb5312955ecc3f63ab1a624018
|
|
| MD5 |
9f53b2b5c26194fe94f39eb617f64bf4
|
|
| BLAKE2b-256 |
02a3ab5ca4fd5bd1f6ce50c00bd81013e169bd6e6c919e7d782e9968574be660
|
File details
Details for the file vexarr_rivex-0.1.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 6.7 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f80edcc9881e5546018d72524fdbd0ac145f4b661c29d7558e8a19c8c32ac879
|
|
| MD5 |
fab615c471c0131fdbdaa606406dbb42
|
|
| BLAKE2b-256 |
e1715f5305984bbf7753816161602c77203122dd3ef57f826502df238b00d94f
|
File details
Details for the file vexarr_rivex-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 7.0 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d4807fc8374f52ac30c1bd76fc42502185752cf53911f6ce3ba81822da8dce8f
|
|
| MD5 |
50f0254aaa114f514762cd82764a310d
|
|
| BLAKE2b-256 |
57b4ea81a43cb8b1397dbbd0a22d199a320c5a425ec9e743d0b0828b08d81d55
|
File details
Details for the file vexarr_rivex-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 6.8 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99f02df176b13e03db5a55573aacb82cb15a8c426fd9d8784afc68d9bccc1c6a
|
|
| MD5 |
e13db153d22e2cb31e6ac69529b21ef1
|
|
| BLAKE2b-256 |
a3a4cdd5e03dbbec276b33ae858a99b99382892bbab49a90c4079b397c26e3f6
|
File details
Details for the file vexarr_rivex-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4417b28437f87d8f8f70a604ae6e9b1d34d614cfbcb4d6961cee98f458a25555
|
|
| MD5 |
d78d0327dea95937ebf79a838a3e3a77
|
|
| BLAKE2b-256 |
4362243fd9162d75ef71f99453dca784dbfab1881da99fa6456b140af3029971
|
File details
Details for the file vexarr_rivex-0.1.0-cp310-cp310-macosx_10_12_x86_64.whl.
File metadata
- Download URL: vexarr_rivex-0.1.0-cp310-cp310-macosx_10_12_x86_64.whl
- Upload date:
- Size: 6.6 MB
- Tags: CPython 3.10, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d5c543a30018cada5f512efa90a9ce7fb67de776e39a2a4760121d097acf1578
|
|
| MD5 |
7f2ec511c9b96a0e91a1633511d87d3d
|
|
| BLAKE2b-256 |
e21dbbc346db10f507732569fc12f7351dac78d1b6a44c56843ec9008fba8eca
|