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

Uploaded CPython 3.12Windows x86-64

hypern-0.3.1-cp312-cp312-win32.whl (2.2 MB view details)

Uploaded CPython 3.12Windows x86

hypern-0.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

hypern-0.3.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (2.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.12+ i686

hypern-0.3.1-cp312-cp312-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

hypern-0.3.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 MB view details)

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

hypern-0.3.1-cp311-cp311-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.11Windows x86-64

hypern-0.3.1-cp311-cp311-win32.whl (2.2 MB view details)

Uploaded CPython 3.11Windows x86

hypern-0.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

hypern-0.3.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl (2.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.12+ i686

hypern-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

hypern-0.3.1-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 MB view details)

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

hypern-0.3.1-cp310-cp310-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.10Windows x86-64

hypern-0.3.1-cp310-cp310-win32.whl (2.2 MB view details)

Uploaded CPython 3.10Windows x86

hypern-0.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

hypern-0.3.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (2.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686

hypern-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

hypern-0.3.1-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 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.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: hypern-0.3.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.3 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.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a4027f9737c4a13d34865a77f236a861eaae6426fadd7ee931e663df78b35a2f
MD5 d078bf5a0d94dbc5be2cd7038ec7c213
BLAKE2b-256 f779c107ae524d847172f1910c36ac8644f699cde0f73915d4d6a7ed697ff32a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.1-cp312-cp312-win32.whl
  • Upload date:
  • Size: 2.2 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.1-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 f735c90ea1103487baac9b84471804c18394063d9a4457376ffa67bc69f78d83
MD5 37cf8fde4404d6f1fed81b19e10a74b6
BLAKE2b-256 3e5ef987410ee267c4c91fae7635f39ad6e24fb1141785f507f8085cc117f160

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3cedb4225072907551eb37e200406cea9503bde88260802eed5e294072e5be00
MD5 b35150ef58ed2629216c52b9fdab5946
BLAKE2b-256 c56e62d967a115261418f28d1f4cab93d351f4934aafe186a01a95c205b95bca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 7d2bfeac76a73f6c8d27c4a727d05d7bdcec3aa74af41ce2ab8bc55852d6aa5c
MD5 4857177e7aadc9309e12e3fd4b0817e7
BLAKE2b-256 6d07dece2cc46658df9c8b4709126f8700d2a202438722cea23d978b664510df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9048e659dced9d51d2859b8437722cdbef60ea1f8a54f0cc89de7fe4351dc6d0
MD5 731773511809f5c09b3727cda3bbf8a5
BLAKE2b-256 0327a2de8a6ed91a6ef7c9435e0a11570cdd61db3bc83e1f2110c40e372f0556

See more details on using hashes here.

File details

Details for the file hypern-0.3.1-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.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 45700e69768152c89dc41f234e605ad1afbe478a0a7f69d93fb214fc0ccd5670
MD5 ebb5ee301021143f981d4e2da7025bcd
BLAKE2b-256 f6fe224342ffdd85fff4ccf7293328d47bd4fa5cca482fb603de9bd3b6f5410c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.3 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.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 de057e2e4c59c919a347b14eeb45750ff6aa751fc4be8834db66abbb3009f114
MD5 e1ec54701837743b4b7b46c9d48ab0b1
BLAKE2b-256 055d16c13a0129b363663bf16dfe0d49d1fe0263f80df6266e01c385d1ee47c2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.1-cp311-cp311-win32.whl
  • Upload date:
  • Size: 2.2 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.1-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 3371fca6475334b533d19df71f0a3e653ce5a91be5914671d63f326052d284e0
MD5 e2a84f8a6549ab0de5182dbefd7febab
BLAKE2b-256 81d0c57669c9f271b265f63fe1028dafdc501944a2a107f1e7a2e7d9e990f35e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 87547d303b97b4ff87510e7cd2e893e86566f593bd75c85c02caace473073bfd
MD5 617fd02ecbe62082a80e0d118c202cfa
BLAKE2b-256 038d540256eba38b2099301abb889cdc9fc4989178cc4e58174fe72aabb09c0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 6c1eff9bc84eaaa943c9af87fcbd66adafef286e4701e3acfa45c5afa665a1a9
MD5 b97b9124cb4af00bc9d51cce33e1efe3
BLAKE2b-256 f6c19e158c9bf9c0dccfde4043503014263062100366af868bf222a861d86b88

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2529d820e8e054b86d8e48de57e8df389752dd707629c81a9ef3e09d01db72f6
MD5 aae6f8e24fa2e6a553e307feed45dd56
BLAKE2b-256 bf9059c0b7a2e6447e2dd2540b4ad92eeb170e4d53495d02bc54a8e6de2a705c

See more details on using hashes here.

File details

Details for the file hypern-0.3.1-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.1-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 d176b0ad93c29022b9e0f0bb9d7e99a1211bd01fbd915aec9f074692ccf20f5e
MD5 6713525feebd37900708bfe29270705f
BLAKE2b-256 7806e45a94fc44d4ea6bbd2558991479ddc77172f2e73c4246908f8262d4a4ab

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.3 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.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 fa48fa58fee90e966d4883d587f4d5588dfa29d427050ba760d4a652df0aa5a2
MD5 f11540cd4811a1d33ab7409e1b7e807f
BLAKE2b-256 157556b76da82fe47ef5ec8a18b524fb12215153e8d027d5b4389f8ffa28261a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypern-0.3.1-cp310-cp310-win32.whl
  • Upload date:
  • Size: 2.2 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.1-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 7c8a928437cbd85e99ed28c052bbf2b281f5461ad240aab8f09cb9406cc93232
MD5 106f81852537f57001102712b0e0223b
BLAKE2b-256 240b722ac127594421208132c5d081e9fdc7b5bb382a716e6871d81c8160f8a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7c6247b1dc647c2b9eab15312c846e8accbde3e32c12b041b76748da7671c51b
MD5 f8d7c76d34faaa0def8bacc951090ce6
BLAKE2b-256 34428d71ece3a102d904293e0f0a984a41329b9bb905d553ba8d0712ceb3dfff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 489e06f426d05727e325886c0300de90cce6b2c9f681ab8600958e8bdd9f24b3
MD5 35c99643d1edf307de085b4348b90de7
BLAKE2b-256 4312be8a9ea9e013792501bcf21217713ffb6b4ddb93f301a1c9c492d670b1b7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hypern-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 dfe798fdb8a82320838557d9e631e53a1ac2cea1bdcb5c2ba23cbcb6836d27d3
MD5 fb0c153f790cfd5637a6c1c0959b45cf
BLAKE2b-256 b7ba573b831821eebfef8b3ecd60a708286cfb7f00c56c1f2facce291611af87

See more details on using hashes here.

File details

Details for the file hypern-0.3.1-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.1-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 0f17456060db0d73ed3c4ee6e21a861de95b5db19d16d32162f01cd6fc9d2540
MD5 ff6eedeaa6480c220fcee15c891126d0
BLAKE2b-256 78075f798314e82320c4eaf80fc41efdb8df03d7385101070e0ae4cc47b71ed5

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