Skip to main content

A Fast Async Python backend with a Rust runtime.

Project description

Hypern

Hypern: A Versatile Python and Rust Framework

Hypern is a flexible, open-source framework built on the Axum, designed to jumpstart your high-performance web development endeavors. By providing a pre-configured structure and essential components, Hypern empowers you to rapidly develop custom web applications that leverage the combined power of Python and Rust.

With Hypern, you can seamlessly integrate asynchronous features and build scalable solutions for RESTful APIs and dynamic web applications. Its intuitive design and robust tooling allow developers to focus on creating high-quality code while maximizing performance. Embrace the synergy of Python and Rust to elevate your web development experience.

🏁 Get started

⚙️ To Develop Locally

  • Setup a virtual environment:
python3 -m venv venv
source venv/bin/activate
  • Install required packages
pip install pre-commit poetry maturin
  • Install development dependencies
poetry install --with dev --with test
  • Install pre-commit git hooks
pre-commit install
  • Build & install Rust package
maturin develop

🤔 Usage

🏃 Run your code

You will then have access to a server on the localhost:5005,

# main.py
from hypern import Hypern
from hypern.routing import Route, HTTPEndpoint

class MyEndpoint(HTTPEndpoint):
    
    async def get(self, request):
        return {"data": "Hello World"}

routing = [
    Route("/hello", MyEndpoint)
]

app = Hypern(routing)

if __name__ == "__main__":
    app.start(host='localhost', port=5005)
$ python3 main.py

You can open swagger UI at path /docs

💡 Features

⚡ High Performance

  • Rust-powered core with Python flexibility
  • Multi-process architecture for optimal CPU utilization
  • Async/await support for non-blocking operations
  • Built on top of production-ready Axum web framework

🛠 Development Experience

  • Type hints and IDE support
  • Built-in Swagger/OpenAPI documentation
  • Hot reload during development
  • Comprehensive error handling and logging

🔌 Integration & Extensions

  • Easy dependency injection
  • Middleware support (before/after request hooks)
  • WebSocket support (Comming soon)
  • Background task scheduling
  • File upload handling

🔒 Security

  • Built-in authentication/authorization (Comming soon)
  • CORS configuration
  • Rate limiting
  • Request validation

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

hypern-0.3.3-cp312-cp312-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.12Windows x86-64

hypern-0.3.3-cp312-cp312-win32.whl (4.4 MB view details)

Uploaded CPython 3.12Windows x86

hypern-0.3.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

hypern-0.3.3-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (5.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.12+ i686

hypern-0.3.3-cp312-cp312-macosx_10_12_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

hypern-0.3.3-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (9.2 MB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

hypern-0.3.3-cp311-cp311-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.11Windows x86-64

hypern-0.3.3-cp311-cp311-win32.whl (4.4 MB view details)

Uploaded CPython 3.11Windows x86

hypern-0.3.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

hypern-0.3.3-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl (5.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.12+ i686

hypern-0.3.3-cp311-cp311-macosx_10_12_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

hypern-0.3.3-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (9.2 MB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

hypern-0.3.3-cp310-cp310-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.10Windows x86-64

hypern-0.3.3-cp310-cp310-win32.whl (4.4 MB view details)

Uploaded CPython 3.10Windows x86

hypern-0.3.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

hypern-0.3.3-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (5.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686

hypern-0.3.3-cp310-cp310-macosx_10_12_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

hypern-0.3.3-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (9.2 MB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file hypern-0.3.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: hypern-0.3.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hypern-0.3.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7f18beae76d2e1e1429d58cea0cc4920335c2ce5b9f95ad9f516828c6023099d
MD5 7f3249930d05996a0d37dec9770e3a08
BLAKE2b-256 29829eeb9d2f5136cecee69adf2b453242c2bcd025e201f9a86c03a6d4065743

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp312-cp312-win32.whl.

File metadata

  • Download URL: hypern-0.3.3-cp312-cp312-win32.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hypern-0.3.3-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 93a5db7d69c2e8c0867ca6d004abfd2b8b85b590d64748f008d5260786e7925f
MD5 da6e888fae568fd6b3c09e4cbfca96dd
BLAKE2b-256 7e6d4e1f887d8d481252f4306651d5dcc0c1ea2c8b0f5392779715d307b49db2

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b0b90db3d6186189bd77cb257299a308836cac7725fd3f7155eef772ca063b46
MD5 833c8769113460e4839e7995c50a6f42
BLAKE2b-256 dbb9b0f8aaf68771d42f1943e29674b09dd740989a6fe2dfa6fc52ddc08d33ce

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 77f21df81687f50044c8eaccfcfb80aea6a86397c57431a75cc2ba7216305351
MD5 5d1297612fb81d0e6e063eaf4eb9f4b8
BLAKE2b-256 b72e1da65bb3641116aad4d772c77d1c73367b99955109ddd80805ed75949ce6

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 20418077feae743eed9bc5fbdb2daf11b427b48dc82c5fec625f90b970538fc3
MD5 698ae1eb789acd97ab57c02ffc74940d
BLAKE2b-256 c94ed7c165bbdc2c303807c5b79887727429a537dd70152e6a221fb4b2376ed5

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 7104776aa35fb6a19facece5340e6c9ca61603fc302b61540b41155f2fa89393
MD5 f640458483257238b05b92b2ab0dd549
BLAKE2b-256 b86ea1ce1f3fe874f1b5f512b70c86a168d233c7ff054292e4785beedf874034

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: hypern-0.3.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hypern-0.3.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f12705e22b35922e568ee61fa2d7570c246a2f4f2e633b78c3963d842477e6f6
MD5 41054a8164677bc05d5eba2919630b2f
BLAKE2b-256 a1b1967cf38e405aa357191f304164e68e1d34f3590df20f2ef93c60b0c8857f

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp311-cp311-win32.whl.

File metadata

  • Download URL: hypern-0.3.3-cp311-cp311-win32.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hypern-0.3.3-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 dd612444abb04708b4534d44ad122f48383443d93c7ed951d97413dd1de4775c
MD5 e4592c5ad328e20fc9ae7dc0e2206531
BLAKE2b-256 0d86e7886e87125b0a759d94472faa1d80775cb777990cd607d0b5a8fe84abff

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ed66019712a7708414b63cb7ceb4f61f4177c04bd701ef1bce24585d713b768e
MD5 ce02ddcdd7fc2e30815548b0a8f36abe
BLAKE2b-256 72d73637400b2f85149dc94f3ba1cb1eba1d45fa6ebebf3aeaee2be531edd758

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 730f5295ef7b1e786ad6f217c57296763ef0e91c7dab2b7c2aa4347e2c953c9a
MD5 fc3ccfe50184a8f17ab2a616e15cfe6d
BLAKE2b-256 7d30679b43719f4627b41055c644abf478a8e255d65826ed9d7b6d96d54dc2d2

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 993b62125852e740649630db215cd7afaba694f1b2dc657d4d75c13cb98f8e76
MD5 33818f865a15cf98ae43a4b11c390639
BLAKE2b-256 9e6295b38d3f196c01bd44c14e10f61787bcf09c7b0431b408b737e1c341e78d

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 f3a21bc164a4d2b7b0f5a92c06581135436c9039653f471908a86fa0bd3654cb
MD5 9bb2c085d0f5e320d50e7f5db5ea77d8
BLAKE2b-256 ecaf2fa274ab9b60b2b83c63a06f7d740cc52940decfad89d9469777f127d403

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: hypern-0.3.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hypern-0.3.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 43f478c91689c29ec715e3bb49043b4983ceac4a391915cb7544732481bee6c4
MD5 79ae83e53f201ebaa0b83c03036740f4
BLAKE2b-256 2fa72ade6448b25e6ec416255b415462d40f3c6da33fdd28619115801703d097

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp310-cp310-win32.whl.

File metadata

  • Download URL: hypern-0.3.3-cp310-cp310-win32.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hypern-0.3.3-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 8a40790c3647f0ae6ae47b4f026cd6006929f0983ea2b64b8cc3be628581eb79
MD5 98478060a0a328f8fcf461b0ed3fa5a4
BLAKE2b-256 45196e80315bcee9dfc00d47f0cdbc07c8d380004323a06bc45ba07dff6064de

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c91eaf88711e67eb9ff212676dcec4006b2c3ba220ad37fc56950540a1a81560
MD5 71c3891b57afe3d443d3527aaf4cd8a1
BLAKE2b-256 ad1ac0279be436706742750b98010552276e658f0d61d07bb09a2b032bde367b

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 d43c05d0c4057d8adffe8e172906a55b973fa9dd69f9b8582a0174df234502eb
MD5 c11af978d9ddcc40af3b0e8dcb0ba461
BLAKE2b-256 66bcbe300eabdecaab7d67915edabd93467c16ed88ae066f520fe6affa9875d3

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2691784c8cd830dd4a0a66c8f72b4ab21e8da5ce7288906bc90519d117f5a77e
MD5 8fdba570aad235b06f836fdfe02d3467
BLAKE2b-256 6f92ebf2d1f4f4310ef66464a7d20514c1fe4bbd57b84eecbe6e655e8789a33d

See more details on using hashes here.

File details

Details for the file hypern-0.3.3-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for hypern-0.3.3-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 f6fecf3aa22e68710c1d8dfce69e209e3ae4b1d1fd1fd289eeee0ddcea7a386e
MD5 ba156ac486089baed8529e0a2a56f8f1
BLAKE2b-256 fa0580bafcccbb7ac9ae2cbde7c83dd77dbb0f66a7370b2723be7d8cd612b355

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