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

hypern-0.2.0-cp312-none-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.12 Windows x86-64

hypern-0.2.0-cp312-none-win32.whl (2.1 MB view details)

Uploaded CPython 3.12 Windows x86

hypern-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

hypern-0.2.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (2.4 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.12+ i686

hypern-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.12 macOS 10.12+ x86-64

hypern-0.2.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.3 MB view details)

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

hypern-0.2.0-cp311-none-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11 Windows x86-64

hypern-0.2.0-cp311-none-win32.whl (2.1 MB view details)

Uploaded CPython 3.11 Windows x86

hypern-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

hypern-0.2.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl (2.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.12+ i686

hypern-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11 macOS 10.12+ x86-64

hypern-0.2.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.3 MB view details)

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

hypern-0.2.0-cp310-none-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10 Windows x86-64

hypern-0.2.0-cp310-none-win32.whl (2.1 MB view details)

Uploaded CPython 3.10 Windows x86

hypern-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

hypern-0.2.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (2.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ i686

hypern-0.2.0-cp310-cp310-macosx_10_12_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.10 macOS 10.12+ x86-64

hypern-0.2.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.3 MB view details)

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

File details

Details for the file hypern-0.2.0-cp312-none-win_amd64.whl.

File metadata

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

File hashes

Hashes for hypern-0.2.0-cp312-none-win_amd64.whl
Algorithm Hash digest
SHA256 698ae247161ed88508baaeb33e2c2198bb62a804a78a24057abd4859d2549437
MD5 8a95094d9a7181dbf10c8d09a6139156
BLAKE2b-256 a4fcf4feff363e9cfba856ca78e3034ea7c05b38e8575124898e9bab3224856b

See more details on using hashes here.

File details

Details for the file hypern-0.2.0-cp312-none-win32.whl.

File metadata

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

File hashes

Hashes for hypern-0.2.0-cp312-none-win32.whl
Algorithm Hash digest
SHA256 e0268f311c655d0762e0f1da16fba5d22f9222d2394c1d26ea93bcb366cde179
MD5 c36d8726664e262223766e25a8fd1200
BLAKE2b-256 9e4ea82a04d2149d8994dfe647d39d677050af81e5b339f4fce5a88ec107a460

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c7e9bc61396b61bbbf19adb35aeea2ee0a6b7cde94f3f20b0b5ef891a87dadd2
MD5 7e5d06c237d287d456d8f782c841863d
BLAKE2b-256 f23c2b12d0d081abf0cc5695163e5f6ecb442f5b8a680551053b5ed7fbaff2c7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 ccf0d79b9f4e13d72563e37408d4df22c852cf6686e13dfac6e9df6b2ec595f4
MD5 a8313c8fc4ea75ecfdba58568dd85620
BLAKE2b-256 18b9d5128d917b0c6f5b0c40d2238203e2596b6a4b98c49ea735f5a590264908

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0b1f606e7cf1020a17584a8ac4f40796fb43da8ff62355bb62aaec4a78422e68
MD5 d0f2f155cc3bfdf8efc9ed67ebe31d29
BLAKE2b-256 4baf7b046089baaa993bd73d672a0081c0ec228cc64152a289bc7dd38de5e68a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 5b527b7943ad7aeebfa4c7e3b5c7bea1d54189dd9c92ba39f36763a48a1d3739
MD5 a6f8d682ccc5ba38ea5c0c8b0923067c
BLAKE2b-256 6b4e0200afaf2040c4ded1b3ef64b8fd3124d623a9f8119d04b7b5f072bfcd0a

See more details on using hashes here.

File details

Details for the file hypern-0.2.0-cp311-none-win_amd64.whl.

File metadata

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

File hashes

Hashes for hypern-0.2.0-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 cb74c8e9566b4eaa9651dc47c9c4fad758efeaad19b44a5d898be75fcf58b3da
MD5 e95829101675493a8659775d368b0312
BLAKE2b-256 774cc7a2235b59e9d6e8438d3bae4fe128a6843679a146efd2348d2a2638c408

See more details on using hashes here.

File details

Details for the file hypern-0.2.0-cp311-none-win32.whl.

File metadata

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

File hashes

Hashes for hypern-0.2.0-cp311-none-win32.whl
Algorithm Hash digest
SHA256 3b7afea3afa2be5de0df2e8eeb2d7a1d77627f6e8100144ef674fc01c6855f81
MD5 bf8c3537afe51ffe877ad31c9f6ce400
BLAKE2b-256 610d6ea2aa3fe83c85c8f53a90fe1c5ba7c94215a9be9c5178bef7f61d5585f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c526c2bdcbbb959398bd3c04c9f2ac689a9680d713d9c19f9789889acb8356f2
MD5 472ffb6ae75fa3b5b6437806bd9e953a
BLAKE2b-256 bb854fc2f593638dc71b8041de16911eda6b6212c487643d0ce009c839d15091

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 0e462ae0d35a3d7d47a0086b420671492a6c13b7a82c1a7ac394a646913b2d21
MD5 1a4c532b876753387730e14e84df8dec
BLAKE2b-256 1ea82e4be2b3ea7b30b20153c1cd180aa8c6757f345485e1cbb30610fe57bb77

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c5d8192c2ba0e7169c6f4b982ed6ecbadc3fea8b9b78a54bf72d207e7be1f6f6
MD5 468f50a8adf229c3d17111f9166d3a23
BLAKE2b-256 8233bfa26cb4259ce6a82527deb0771afd73423063a3c4c55bbb362e286a7daf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 a3e74d072fcbc0b8f12763b93e7555e13c423d7b632f465dc3c277b5ad2442c6
MD5 096209b60e535ba78ca2f88ab126759e
BLAKE2b-256 cc2f8cf19e337b237e420f923ff3624bfcac89bcfc3b4e7f3ff6b12572e82897

See more details on using hashes here.

File details

Details for the file hypern-0.2.0-cp310-none-win_amd64.whl.

File metadata

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

File hashes

Hashes for hypern-0.2.0-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 5a5e79984126d1ef4399c5300c2af79baa084076672676a37f468dc6073d7541
MD5 465343d68ac24fa2fcf7dc41f38f4310
BLAKE2b-256 34cc3eef69eb7c2839137da3896b185af2aef093616f844361d8b2485054bf93

See more details on using hashes here.

File details

Details for the file hypern-0.2.0-cp310-none-win32.whl.

File metadata

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

File hashes

Hashes for hypern-0.2.0-cp310-none-win32.whl
Algorithm Hash digest
SHA256 ea12ab6cee30e9635cfcd1af32ad02de3a4df3fa9eaff10159aaa9b2f83ae746
MD5 8b9707c66bf0d2db0e7d8cf8a5a2d50f
BLAKE2b-256 d5aa5284cd30fcfaca9b55c11d1253374cb25ca630d8388970a660ce9562a316

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3ebcc4329d7d06aaf3ab3be9ccc49e502da8912a284b345d083a590ae4377f0d
MD5 94f6359d274e89de7429a074e6f56562
BLAKE2b-256 3770bba28d3a210e032f069231f3effe85b455fa6590df3c69663d2991a207ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 9b892125d79bd1199fa927d58a8f7ff67557d49f0e3b3f140ecf647cdd899625
MD5 6a3f1ce9bfad5f6e874d4dfccbd0d7f7
BLAKE2b-256 ce5ddc4cbf3034bd738784aeaf94fc134d1774144d52fe51841434348a35d9a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0c629bb3106c794bc85aee800e29ba87f29751a9fc177a9486da91c2f382bfc9
MD5 98006fc75b9c945c2b3787935eafddaa
BLAKE2b-256 4b161931e754f84423e203ceaef9d167b7f2b4c917957f0d600e46c78756edad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.2.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 607336852d6244fa4b6416f65ab2965e98a6dae34fbe5be0b42e2ae60cfddf0c
MD5 2ac9c7c6631af749de384620a2b93dd8
BLAKE2b-256 2f104f026cd8c31c9fcef16deffc6bac65b99fdd7927c5e481a092c3f749340a

See more details on using hashes here.

Supported by

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