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

Uploaded CPython 3.12Windows x86-64

hypern-0.3.6-cp312-cp312-win32.whl (4.3 MB view details)

Uploaded CPython 3.12Windows x86

hypern-0.3.6-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.6-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.6-cp312-cp312-macosx_10_12_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

hypern-0.3.6-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (9.1 MB view details)

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

hypern-0.3.6-cp311-cp311-win_amd64.whl (4.6 MB view details)

Uploaded CPython 3.11Windows x86-64

hypern-0.3.6-cp311-cp311-win32.whl (4.3 MB view details)

Uploaded CPython 3.11Windows x86

hypern-0.3.6-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.6-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.6-cp311-cp311-macosx_10_12_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

hypern-0.3.6-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (9.1 MB view details)

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

hypern-0.3.6-cp310-cp310-win_amd64.whl (4.6 MB view details)

Uploaded CPython 3.10Windows x86-64

hypern-0.3.6-cp310-cp310-win32.whl (4.3 MB view details)

Uploaded CPython 3.10Windows x86

hypern-0.3.6-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.6-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.6-cp310-cp310-macosx_10_12_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

hypern-0.3.6-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (9.1 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.6-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: hypern-0.3.6-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.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 603faff2ec7b7762d01015bdd9c555b8bc5174ad990a4edbbf18a6ffe705c208
MD5 f669dd608bb8e3e8152364c164fb5631
BLAKE2b-256 810408491038432aac59f2f5283f0cf8b9f0fd0013e7f0fe65653af73712f35e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.6-cp312-cp312-win32.whl
  • Upload date:
  • Size: 4.3 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.6-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 db652af2164135e390aaeb02a14a4dac0f9a45ce7226037d80e3dd719986efcb
MD5 2393ef6d4a926fc3c7406b72c21d1929
BLAKE2b-256 bc67d83bf891b904fd544bf90184716698af55160adbbb98b97ad091e4c34de2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8c6717493e611a164abf215a76ffb242d8f661c8aed8f79b6900483e35b0af5e
MD5 1ec79032cdd45f4d585b06e8f269ed9b
BLAKE2b-256 ba860b87bf46a3366b74e12e09677b63c1acf5b57fdbc1cd4e6785dcc99b0edb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 34336e59a623d61e927b5f0d7643d9ee79db71e4103a021d76d5c8b86231b97f
MD5 74e1b518f455973aeeab6f218e0a85ab
BLAKE2b-256 bb9129f25b60afdfd0a7ac5c167be61a5a24487bc3628d5d42d705ca4c12a9ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 663a7f58fc42b7c16e050b58c69895723ac20f92d7828d5f42c538b63d2794d9
MD5 ceafb09f95352ef26bac9ffce7ec3c20
BLAKE2b-256 22f9f083bf3882cf4d24bb9f7344644d491ccf1e97a4bd42bed9cb7f23b14045

See more details on using hashes here.

File details

Details for the file hypern-0.3.6-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.6-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 2e110a0d90bc4ad862f05d66ba0774d5e725307c04ea26e8908443c335bd8350
MD5 4563fa437418e3dac5fe8c96d37900c1
BLAKE2b-256 47c32c671c67e009cddcb1a02bb0a4e0cba48e8736b484767d1dceb2289ae033

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.6-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 4.6 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.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3d9b608084e9aa070e23eb294c26b3cc030f62bf29224b9f8bef6250269a918f
MD5 bae874db197061be27af4d9957714b3e
BLAKE2b-256 38ceb3bef0b2581e561939a7ab5fcf93eb0ae1fe760d656de343f366f3d809e9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.6-cp311-cp311-win32.whl
  • Upload date:
  • Size: 4.3 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.6-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 7227a01ef3ec3c9fa21671915a5a4917f5d779b1d34ebbd56f2ae5b21f066cb8
MD5 296237da6fbb4057c10c171c83798bc0
BLAKE2b-256 5f15bbc5403e8f845f8887a1c178ae66355d3c6a2ee940e2954d3dd4b1a465c8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1797999b99623e5ae877636a7bd0f8639570d833549235ea78dd800016a3aa8e
MD5 4429ccaf4d8de879a3e8dbc0c83dbb45
BLAKE2b-256 1fdf2eb9d44cb7a17cd06223142fccf9198c2e01e97a81b3221c23df26182999

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 8cc03dc9b1ab715edccc52ca9d99912d8309f9cad7ae1ce04766992246adffc1
MD5 76bd1349b4d793cc2fc848f7b3aa3fe7
BLAKE2b-256 a9688831aa1d0d791e582ec6f1eb46bd7ddb4dbb92655a34bee8cad29bb02046

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 05a498d9a47d46e589ca34f989a19a53a445c95c6a22a90b9231068ef8c00223
MD5 438f9d9c066f57543506e8bf74998116
BLAKE2b-256 7408e33c04af584875b49b48ad676f09d51228b8dcddb0417836bb7b004bbab2

See more details on using hashes here.

File details

Details for the file hypern-0.3.6-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.6-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 bbe29861ba5feb0511bfbcb4894d1a1618e39d3f8200105c79de4e1685efeed5
MD5 02b6e54ea68ea22ddc98810fb658e160
BLAKE2b-256 95760e4d8e8d096b854192900ae68c6168e3adf4d33a07607af74e6f93a04eae

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.6-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 4.6 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.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 58287097530cff4f144007ed8fd0f50054bee1550b8f56b615caf5d19afb7974
MD5 1247a4c2cb912b2c771650768f8f0a6b
BLAKE2b-256 6b8a05cce70da8012e072e6184e7884fa9efe4fb9615e128f892eefebd5d59c3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.6-cp310-cp310-win32.whl
  • Upload date:
  • Size: 4.3 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.6-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 aa542956667e723f6853e89232bfc9ef077ff2a926a885d099157944a1f29735
MD5 0ae23d3df0db2604b10331529c9fda58
BLAKE2b-256 7d0dcb09c8f1f3f9778bfaf6b504b46b3367dd49ccfe51eb8c510c6b58323b7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 13552b8d4b53ab87fcaaf3579e0c02e79e84a9032590dd1bbc536fd532c96c81
MD5 f1f2ecfa8116ad42df131189721ea66c
BLAKE2b-256 c7005390c4a9fd933d806c3af11377bef62806ce8c13e9c814594ab0d5c54bfd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 d112e21196b29fcc540c03f10c26133e5dd926659c05b99795136556f4f0c5bb
MD5 5cea8eed480b6848e27b4a33c92f5083
BLAKE2b-256 6db8106f9b6c3983114582135f7f6ee96f287ea0d7607560fdced99e1d046ee6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.6-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d87919b51ab0a0d80292f3cd5b256c55a632a089ea884c4ec1b6dac7e7af6f0c
MD5 c07c5d40a1518a927a8799de4db4cf7d
BLAKE2b-256 0df38ef433022f4e090129f37167e32c0ad70420d0c6d75aca2d1f170c1967b9

See more details on using hashes here.

File details

Details for the file hypern-0.3.6-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.6-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 3f7f708517e8e52527f4b16f3d7c5ca98864826d3b6e4962d92276b67c02880e
MD5 69ccd425a1ef943fd894b5a41e1e91ff
BLAKE2b-256 269cc61cac39cc133e8b7c23f317e28a33f4d752ce918e15af113a0b8293cc92

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