Skip to main content

Rivex — high-performance Python web framework with a bundled Rust core

Project description

Rivex — Python SDK

License: MIT PyPI Python

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vexarr_rivex-0.1.1.tar.gz (143.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

vexarr_rivex-0.1.1-cp313-cp313-win_amd64.whl (6.7 MB view details)

Uploaded CPython 3.13Windows x86-64

vexarr_rivex-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

vexarr_rivex-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

vexarr_rivex-0.1.1-cp313-cp313-macosx_11_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

vexarr_rivex-0.1.1-cp313-cp313-macosx_10_12_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

vexarr_rivex-0.1.1-cp312-cp312-win_amd64.whl (6.7 MB view details)

Uploaded CPython 3.12Windows x86-64

vexarr_rivex-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

vexarr_rivex-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

vexarr_rivex-0.1.1-cp312-cp312-macosx_11_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

vexarr_rivex-0.1.1-cp312-cp312-macosx_10_12_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

vexarr_rivex-0.1.1-cp311-cp311-win_amd64.whl (6.7 MB view details)

Uploaded CPython 3.11Windows x86-64

vexarr_rivex-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

vexarr_rivex-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

vexarr_rivex-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

vexarr_rivex-0.1.1-cp311-cp311-macosx_10_12_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

vexarr_rivex-0.1.1-cp310-cp310-win_amd64.whl (6.7 MB view details)

Uploaded CPython 3.10Windows x86-64

vexarr_rivex-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

vexarr_rivex-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

vexarr_rivex-0.1.1-cp310-cp310-macosx_11_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

vexarr_rivex-0.1.1-cp310-cp310-macosx_10_12_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file vexarr_rivex-0.1.1.tar.gz.

File metadata

  • Download URL: vexarr_rivex-0.1.1.tar.gz
  • Upload date:
  • Size: 143.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vexarr_rivex-0.1.1.tar.gz
Algorithm Hash digest
SHA256 efdbc53bfe148673d5c764c22ed431c9d53924a7eac6b0330741a0908533c78d
MD5 b34056e79bd0fb3d5fa90715fac28d13
BLAKE2b-256 a3474fb52c7433da755d67d38368fb45c5bcd7bdb780f2b66616b017410064b6

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 07ed6ba36523234863def25c4d5de292f05feeef3462c5bd024efee3df07c845
MD5 54ac1de72cc5476887a2c2d696567037
BLAKE2b-256 b1d1472bac99c0555fb41ab787b5e052353737304ff04099ee715cd1c10ba641

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2d7c08a8548606fb1eda5f2ed282720f089793970bb98958412fa44088e2f2b6
MD5 b082953c25ff7483c3efc1ceb83b4337
BLAKE2b-256 364efe621aeb2e9864f74c2e04d2253bbb55c3c3c63f92e54432b98a6ec429d8

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5a79dc58f22018fc50ce7f3660c3542e2ab0204b4f92c9ca9c0212c38af2e216
MD5 4c774a1e3b50c1fecef07b7a54541eaa
BLAKE2b-256 7fe6518782408fb4a9e80509459e435cdda32ba8e7bd198dac24d7e3dba3c5af

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a9651f005ea82e09641b914a1365f8e37641afcf5afbb7f72c4342e2572549cb
MD5 cbd45b98ebb04feb1cf2aa4a136769b9
BLAKE2b-256 7c9f9405ec8e277930b7236fd68e705cafc9d07887d7e3c99b18c9aefca8e9e5

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4662a66e357e7943ad2b73ecf7606422f72a0850099eedff8ab0a5cdb7283b07
MD5 b76a9bb20100963b1ed67ff01320756a
BLAKE2b-256 27548194a1018418cdcf2b7dc418866dd5ac7295f6d505bdf8327f96db086616

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b14cf0f3ca176fde885585618c1126f97d41e09e8935ca3502509350896ad56f
MD5 6d592ce76bd0df75c633267c27226fe1
BLAKE2b-256 e52445d0e8d507c4bb90954d6aebf9095eb939a36a953843729a5a74419064e7

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ff904f37975dd52e23ec7f173793367b01bdf0415543cdff9c4440f2f9de422f
MD5 fa0ce857f5bd3351eca82326ec60eb53
BLAKE2b-256 6b45d3ad5248e6b855da69208cf87cd1f29fc889e2ef8ca586994a297bca4d3e

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 87ff58b0c86f6bc0290df9a0b7c26bd1b03190d5fcef7a84afcefb5efd9cf998
MD5 02088f24cc62ce285898bf42f3ecc573
BLAKE2b-256 83579a492eac49cd9b17c2d7b6d83753c32134a7b41d655919732def3b5217f7

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7a17123d8ebd2ef88f96edadeac8685e77d985f020ce26c4a7156f4171731ca6
MD5 da8005e8b151575ef55809011f44d951
BLAKE2b-256 f91cfad86b2ad5074637655295c7992920311274b5c2298d457a5e092839c5ad

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6672017826adf11d32a44fcf18e90bdf5ab954405c6eb51fbcab40f2ff624f42
MD5 fdb20450776b2749029a992c523ca686
BLAKE2b-256 99ed402e591f5d0e1f42a8c49f64d82652d22c652ea69a46427d8faaa55907a2

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 38c0c59c0ef7591ae6e8faea902822186274b9375688b99dd28670f7fb19593a
MD5 9782462c55ff8a55f8b01b633915aa01
BLAKE2b-256 8ebf289e67fd84a42dc3bbfb281222ceea3317dd621b94f6aca03b8c6cdef470

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e1196cf0b5d4bf2b3d3de514f3371bc6afd43d64f827c290f9dcdb3d4e47c1db
MD5 73873bc8f62ed1dfcab26fb40ddbfea2
BLAKE2b-256 1e6a6324ef560c3e134df861ec797079317dc242b4e6dd4f53ccdc95b097832b

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5fccc055d62a70ae4cae7bcb80778ef95fd3f4ede87c942bcdfc951739d6b1e2
MD5 e34cacba876a1a79f76b8333390a29fc
BLAKE2b-256 7696d58fc7c1a6b2a6e2ffa3f86c692e9575f4fd28d2e23601a9944a38f6c2e6

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 998659e7881582da4ef9d684f28d27518e99d2e4f73bc4c4305bbadd4cb24054
MD5 ab209833b016ddbae8fc63d8dced95b8
BLAKE2b-256 bcc65bfd66b8a5dc834c4f024dddc04fd2bf6e31a4d750e1d0aed3bdb6c21b35

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 35f4e0da42ed4ac75b861d8aef03e085bddf68e85ec34e039e894a1d06813496
MD5 4b809f2addabaed35bc67cd416f618fd
BLAKE2b-256 7d774b88724f978f99dd77dcf2f5c7747e5ef24b807767d35483bf5b2f3a9386

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 907104e4c5f79919d4b3284567ef9933e4ccd07aef92b42fe4f82477a1c87ee3
MD5 a20eeedceff3ad320ed28363c54402c2
BLAKE2b-256 a700d807292d1de7283d9ca57d823c352e144b21ed4596132ac326a791e34c9e

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bec32af58ce6e4d9c223ee2c63585bd09a57ddaa4fc6411b39d1e6716983d386
MD5 914f4a0ff78ba82f2e55efa6921f67da
BLAKE2b-256 885b227859633f406c76f42a92f3719534d41d4d4f509e463775e3b4ad608216

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e803273cac43deb7946a476ea5707252c706fb8c65f45d9b770cb20dd6997504
MD5 4c1814f5f97bc8cb6cf2516e2ca6c374
BLAKE2b-256 a70cf433d46ac4d306d59b0c03c7705d8a5015b7097afa9c539c0fe3d1150701

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 701a4d46aac4fc0c7e74b1ff394bca753dd3ed4c2ab65427906418082f557634
MD5 b232e021eb13a728f11aca3666a0b80d
BLAKE2b-256 73d2be584f8c033c5a50521d7ad0bbfd3e98cf2e04ade353efc89f048eabc8a4

See more details on using hashes here.

File details

Details for the file vexarr_rivex-0.1.1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for vexarr_rivex-0.1.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 045781c564bf9d9fded095af87bad0f4a5b2bae2804721ccb83bd7aad70e0f41
MD5 3c39bc751bf4ef2489da6d9c7046f172
BLAKE2b-256 396e0406024091fea66072bfcb549907512ac2b344e1ec3e2ee9177e5aa71c33

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page