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.2-cp312-cp312-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.12Windows x86-64

hypern-0.3.2-cp312-cp312-win32.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86

hypern-0.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

hypern-0.3.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (3.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.12+ i686

hypern-0.3.2-cp312-cp312-macosx_10_12_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

hypern-0.3.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (5.6 MB view details)

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

hypern-0.3.2-cp311-cp311-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.11Windows x86-64

hypern-0.3.2-cp311-cp311-win32.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86

hypern-0.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

hypern-0.3.2-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl (3.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.12+ i686

hypern-0.3.2-cp311-cp311-macosx_10_12_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

hypern-0.3.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (5.6 MB view details)

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

hypern-0.3.2-cp310-cp310-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.10Windows x86-64

hypern-0.3.2-cp310-cp310-win32.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86

hypern-0.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

hypern-0.3.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (3.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686

hypern-0.3.2-cp310-cp310-macosx_10_12_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

hypern-0.3.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (5.6 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.2-cp312-cp312-win_amd64.whl.

File metadata

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

File hashes

Hashes for hypern-0.3.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e2f9b843c275197bdad17d2ad02e5fb1261401cf5bcf771d1e288cdc0cec79b4
MD5 3576a7b232963a2302ba327464c94b78
BLAKE2b-256 579dae1fedf737abccedd52eb2e469f122709b3d48b36d951017f2c42b6a6c9a

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hypern-0.3.2-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 84a020b98ecaf19bbf1a69fe8d0ba6c19f79c117070c4a8869d71c08fc1a90b7
MD5 d89c1cf4a86d287b9d703c95a0651048
BLAKE2b-256 35d1d9d3d6f27549fe85936b91939b1496ad0c003be7b6b741fe2cb9b1a4e1a1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d99eb31fec88740204d82b3fa602c997043a68975874c4effc226aee1f744866
MD5 d778ef5c371aeaa78d881e374691e87d
BLAKE2b-256 c9403c4be0beadffedcc723f8eb7fbc4c46f095b53e35d09cbe4d5c314d1f84e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 30b7b9e23a99778c04b81cfb4ad51415811675e1fedfcef3368a1c2b7fcd504c
MD5 e2324c3f0d6683f95576f3e20645a576
BLAKE2b-256 822172bfa718a18ef0f93c8996426920429e6497ab746a0eebe8d4d35cfe8e22

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6642c854cc072bb4af169cbe099ba084709f412ebf2cb830aa8bd275b76610db
MD5 16000e99b6ab94851d44884c280cb65c
BLAKE2b-256 debebaeccc2207693e8d6176af00631a6e79cdadc2c28fd1ccfed6e513da2e5e

See more details on using hashes here.

File details

Details for the file hypern-0.3.2-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.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 96786edd3bf17b28c556b86105927525e2997ad61221e83693b2c9ebfe75c5d9
MD5 2058e6d104522e9b17f89c2c9f4a08bd
BLAKE2b-256 39afaf8fd393cbe1b1b22170dacd0750d98c720ece0c44b6e0c473ded72a96d8

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hypern-0.3.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1e0b5ebd2f878e125ccb576c069312f4f9ad457d2c20ad709f64ca128ca518a4
MD5 99bea9e39a687a5c827b048bcbb12936
BLAKE2b-256 934f22539a6856badda6d34ff3122108dbb07a7eb184195c90f2376f6e87f805

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hypern-0.3.2-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 9ea8ce8b6398e36d9ce2c738079b0a862cde162b90ef94073771b19d47fa45bf
MD5 93034504ca3036669a2c3b78c54b666d
BLAKE2b-256 070948dec69cf596427b71de33199b28049be09e65512002d217a83463c7c7d4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 48b19eb0501fd9454322673c3c1f00e56bb40dd262b3cc914e36631257119d93
MD5 95ab52a7f8d827285396ae9c6ca19cc0
BLAKE2b-256 59901a38b441347ce1ebcd58538b843d184e302dae0226cb4b4aa5cdba26dc5c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 71087690a2613a45a12e8135e16034dbdabce9bb96eca456fe8dba01d2a3bf7b
MD5 e1ed1e19a490cf9b2f15eb744740ef22
BLAKE2b-256 fc1c1805ec68d61ed1da2bf6914ab56781822c96b27dffb4210c8f7341c33ef1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1061405e5f8923b8fb38b1e03ca6b752dfa3db645407a56ef2ea700748293e98
MD5 2119a3303c0c4d41b85c4689d0c19305
BLAKE2b-256 4bcaaf370ee936a1dd36604ad78afd335ef566c197af3a5ef2c716f1b6baec9d

See more details on using hashes here.

File details

Details for the file hypern-0.3.2-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.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 76c67a452acfd88363d441b4a6f94d01d064c5f8efa503b2c6bd813b34610386
MD5 2fa9fe7f36a65e9019ba31b222c52c04
BLAKE2b-256 498b7de6ab18008a284edc8e8659d004cd0f18a722f7d2037548c1b7f1683074

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hypern-0.3.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 af1c687b34fe55a07ec597a9277881b56e7c5c33ce2ba744ff1810f70c54e495
MD5 b76955f00e0450489f95ca1ac91c18ca
BLAKE2b-256 12e2c099cd81c84b9671d84b04307da5b3e8dce582821176ee2bcde3273efe88

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hypern-0.3.2-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 c3ebf662b14def550d9bc7e5aaa4e5e809bea2b2647a8cfbff9e2befe19e2dcd
MD5 88e19f724095d199bec86b304d382ee3
BLAKE2b-256 41d2751ee710721560ca28b73c70fbf92b33964e63ed2428f1a7e045f52379ca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cf4eb22018b9553d4ad464e8740227693da99bda82a2ec93c2f9b85e5c0b8086
MD5 b404d17a6d6318bf50f5e07c226dc78d
BLAKE2b-256 2cd1407950642e997809b5b59b32ffe91411244c1c3b57ad94e2c3d006d9fc9a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 fe2a74be017173ced8b14e76ac451e3db39aeaacbb24941fc02c430a9fafbe14
MD5 b021668f84ddb85dad9d958fb8a9aaa3
BLAKE2b-256 1259207e1fa0fddef2fec2bf8a1451ccab478b223aca5335f0ecc36a91639e28

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.2-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 09fec77ff05e2b83cbf7e852d84eb7b1bf7b125cfe3a9f06f4afa895a6af213f
MD5 1df8adad5a38df3078899c47362df7bf
BLAKE2b-256 324e5d29a52f7938c938be8a1058696596e5745c4373823c0b2c3497763c7b77

See more details on using hashes here.

File details

Details for the file hypern-0.3.2-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.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 9be81d4cb65f8f0fee4a0d0d7c4d8bbdae4ef43cfbd942b95f490da285003c91
MD5 6ac7845d88f12f5ad3332119a4d688c9
BLAKE2b-256 68a9af14a7c8f520544f6900b0ebc98321d6595095ac322580f998db3ed77f0f

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