Name | sanic JSON |
Version |
24.6.0
JSON |
| download |
home_page | http://github.com/sanic-org/sanic/ |
Summary | A web server and web framework that's written to go fast. Build fast. Run fast. |
upload_time | 2024-06-30 12:22:24 |
maintainer | None |
docs_url | None |
author | Sanic Community |
requires_python | >=3.8 |
license | MIT |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
|
.. image:: https://raw.githubusercontent.com/sanic-org/sanic-assets/master/png/sanic-framework-logo-400x97.png
:alt: Sanic | Build fast. Run fast.
Sanic | Build fast. Run fast.
=============================
.. start-badges
.. list-table::
:widths: 15 85
:stub-columns: 1
* - Build
- | |Tests|
* - Docs
- | |UserGuide| |Documentation|
* - Package
- | |PyPI| |PyPI version| |Wheel| |Supported implementations| |Code style ruff|
* - Support
- | |Forums| |Discord| |Awesome|
* - Stats
- | |Monthly Downloads| |Weekly Downloads| |Conda downloads|
.. |UserGuide| image:: https://img.shields.io/badge/user%20guide-sanic-ff0068
:target: https://sanic.dev/
.. |Forums| image:: https://img.shields.io/badge/forums-community-ff0068.svg
:target: https://community.sanicframework.org/
.. |Discord| image:: https://img.shields.io/discord/812221182594121728?logo=discord&label=Discord&color=5865F2
:target: https://discord.gg/FARQzAEMAA
.. |Tests| image:: https://github.com/sanic-org/sanic/actions/workflows/tests.yml/badge.svg?branch=main
:target: https://github.com/sanic-org/sanic/actions/workflows/tests.yml
.. |Documentation| image:: https://readthedocs.org/projects/sanic/badge/?version=latest
:target: http://sanic.readthedocs.io/en/latest/?badge=latest
.. |PyPI| image:: https://img.shields.io/pypi/v/sanic.svg
:target: https://pypi.python.org/pypi/sanic/
.. |PyPI version| image:: https://img.shields.io/pypi/pyversions/sanic.svg
:target: https://pypi.python.org/pypi/sanic/
.. |Code style ruff| image:: https://img.shields.io/badge/code%20style-ruff-000000.svg
:target: https://docs.astral.sh/ruff/
.. |Wheel| image:: https://img.shields.io/pypi/wheel/sanic.svg
:alt: PyPI Wheel
:target: https://pypi.python.org/pypi/sanic
.. |Supported implementations| image:: https://img.shields.io/pypi/implementation/sanic.svg
:alt: Supported implementations
:target: https://pypi.python.org/pypi/sanic
.. |Awesome| image:: https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg
:alt: Awesome Sanic List
:target: https://github.com/mekicha/awesome-sanic
.. |Monthly Downloads| image:: https://img.shields.io/pypi/dm/sanic.svg
:alt: Downloads
:target: https://pepy.tech/project/sanic
.. |Weekly Downloads| image:: https://img.shields.io/pypi/dw/sanic.svg
:alt: Downloads
:target: https://pepy.tech/project/sanic
.. |Conda downloads| image:: https://img.shields.io/conda/dn/conda-forge/sanic.svg
:alt: Downloads
:target: https://anaconda.org/conda-forge/sanic
.. end-badges
Sanic is a **Python 3.8+** web server and web framework that's written to go fast. It allows the usage of the ``async/await`` syntax added in Python 3.5, which makes your code non-blocking and speedy.
Sanic is also ASGI compliant, so you can deploy it with an `alternative ASGI webserver <https://sanicframework.org/en/guide/deployment/running.html#asgi>`_.
`Source code on GitHub <https://github.com/sanic-org/sanic/>`_ | `Help and discussion board <https://community.sanicframework.org/>`_ | `User Guide <https://sanicframework.org>`_ | `Chat on Discord <https://discord.gg/FARQzAEMAA>`_
The project is maintained by the community, for the community. **Contributions are welcome!**
The goal of the project is to provide a simple way to get up and running a highly performant HTTP server that is easy to build, to expand, and ultimately to scale.
Sponsor
-------
Check out `open collective <https://opencollective.com/sanic-org>`_ to learn more about helping to fund Sanic.
Installation
------------
``pip3 install sanic``
Sanic makes use of ``uvloop`` and ``ujson`` to help with performance. If you do not want to use those packages, simply add an environmental variable ``SANIC_NO_UVLOOP=true`` or ``SANIC_NO_UJSON=true`` at install time.
.. code:: shell
$ export SANIC_NO_UVLOOP=true
$ export SANIC_NO_UJSON=true
$ pip3 install --no-binary :all: sanic
.. note::
If you are running on a clean install of Fedora 28 or above, please make sure you have the ``redhat-rpm-config`` package installed in case if you want to
use ``sanic`` with ``ujson`` dependency.
Hello World Example
-------------------
.. code:: python
from sanic import Sanic
from sanic.response import json
app = Sanic("my-hello-world-app")
@app.route('/')
async def test(request):
return json({'hello': 'world'})
if __name__ == '__main__':
app.run()
Sanic can now be easily run using ``sanic hello.app``.
.. code::
[2018-12-30 11:37:41 +0200] [13564] [INFO] Goin' Fast @ http://127.0.0.1:8000
[2018-12-30 11:37:41 +0200] [13564] [INFO] Starting worker [13564]
And, we can verify it is working: ``curl localhost:8000 -i``
.. code::
HTTP/1.1 200 OK
Connection: keep-alive
Keep-Alive: 5
Content-Length: 17
Content-Type: application/json
{"hello":"world"}
**Now, let's go build something fast!**
Minimum Python version is 3.8. If you need Python 3.7 support, please use v22.12LTS.
Documentation
-------------
User Guide, Changelog, and API Documentation can be found at `sanic.dev <https://sanic.dev>`__.
Questions and Discussion
------------------------
`Ask a question or join the conversation <https://community.sanicframework.org/>`__.
Contribution
------------
We are always happy to have new contributions. We have `marked issues good for anyone looking to get started <https://github.com/sanic-org/sanic/issues?q=is%3Aopen+is%3Aissue+label%3Abeginner>`_, and welcome `questions on the forums <https://community.sanicframework.org/>`_. Please take a look at our `Contribution guidelines <https://github.com/sanic-org/sanic/blob/master/CONTRIBUTING.rst>`_.
Raw data
{
"_id": null,
"home_page": "http://github.com/sanic-org/sanic/",
"name": "sanic",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": "Sanic Community",
"author_email": "admhpkns@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/37/00/d252369495fe3bc876fb7c269ec204800b6f66fdd9083d4dd29ee7539130/sanic-24.6.0.tar.gz",
"platform": "any",
"description": ".. image:: https://raw.githubusercontent.com/sanic-org/sanic-assets/master/png/sanic-framework-logo-400x97.png\n :alt: Sanic | Build fast. Run fast.\n\nSanic | Build fast. Run fast.\n=============================\n\n.. start-badges\n\n.. list-table::\n :widths: 15 85\n :stub-columns: 1\n\n * - Build\n - | |Tests|\n * - Docs\n - | |UserGuide| |Documentation|\n * - Package\n - | |PyPI| |PyPI version| |Wheel| |Supported implementations| |Code style ruff|\n * - Support\n - | |Forums| |Discord| |Awesome|\n * - Stats\n - | |Monthly Downloads| |Weekly Downloads| |Conda downloads|\n\n.. |UserGuide| image:: https://img.shields.io/badge/user%20guide-sanic-ff0068\n :target: https://sanic.dev/\n.. |Forums| image:: https://img.shields.io/badge/forums-community-ff0068.svg\n :target: https://community.sanicframework.org/\n.. |Discord| image:: https://img.shields.io/discord/812221182594121728?logo=discord&label=Discord&color=5865F2\n :target: https://discord.gg/FARQzAEMAA\n.. |Tests| image:: https://github.com/sanic-org/sanic/actions/workflows/tests.yml/badge.svg?branch=main\n :target: https://github.com/sanic-org/sanic/actions/workflows/tests.yml\n.. |Documentation| image:: https://readthedocs.org/projects/sanic/badge/?version=latest\n :target: http://sanic.readthedocs.io/en/latest/?badge=latest\n.. |PyPI| image:: https://img.shields.io/pypi/v/sanic.svg\n :target: https://pypi.python.org/pypi/sanic/\n.. |PyPI version| image:: https://img.shields.io/pypi/pyversions/sanic.svg\n :target: https://pypi.python.org/pypi/sanic/\n.. |Code style ruff| image:: https://img.shields.io/badge/code%20style-ruff-000000.svg\n :target: https://docs.astral.sh/ruff/\n.. |Wheel| image:: https://img.shields.io/pypi/wheel/sanic.svg\n :alt: PyPI Wheel\n :target: https://pypi.python.org/pypi/sanic\n.. |Supported implementations| image:: https://img.shields.io/pypi/implementation/sanic.svg\n :alt: Supported implementations\n :target: https://pypi.python.org/pypi/sanic\n.. |Awesome| image:: https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg\n :alt: Awesome Sanic List\n :target: https://github.com/mekicha/awesome-sanic\n.. |Monthly Downloads| image:: https://img.shields.io/pypi/dm/sanic.svg\n :alt: Downloads\n :target: https://pepy.tech/project/sanic\n.. |Weekly Downloads| image:: https://img.shields.io/pypi/dw/sanic.svg\n :alt: Downloads\n :target: https://pepy.tech/project/sanic\n.. |Conda downloads| image:: https://img.shields.io/conda/dn/conda-forge/sanic.svg\n :alt: Downloads\n :target: https://anaconda.org/conda-forge/sanic\n\n.. end-badges\n\nSanic is a **Python 3.8+** web server and web framework that's written to go fast. It allows the usage of the ``async/await`` syntax added in Python 3.5, which makes your code non-blocking and speedy.\n\nSanic is also ASGI compliant, so you can deploy it with an `alternative ASGI webserver <https://sanicframework.org/en/guide/deployment/running.html#asgi>`_.\n\n`Source code on GitHub <https://github.com/sanic-org/sanic/>`_ | `Help and discussion board <https://community.sanicframework.org/>`_ | `User Guide <https://sanicframework.org>`_ | `Chat on Discord <https://discord.gg/FARQzAEMAA>`_\n\nThe project is maintained by the community, for the community. **Contributions are welcome!**\n\nThe goal of the project is to provide a simple way to get up and running a highly performant HTTP server that is easy to build, to expand, and ultimately to scale.\n\nSponsor\n-------\n\nCheck out `open collective <https://opencollective.com/sanic-org>`_ to learn more about helping to fund Sanic.\n\n\nInstallation\n------------\n\n``pip3 install sanic``\n\n Sanic makes use of ``uvloop`` and ``ujson`` to help with performance. If you do not want to use those packages, simply add an environmental variable ``SANIC_NO_UVLOOP=true`` or ``SANIC_NO_UJSON=true`` at install time.\n\n .. code:: shell\n\n $ export SANIC_NO_UVLOOP=true\n $ export SANIC_NO_UJSON=true\n $ pip3 install --no-binary :all: sanic\n\n\n.. note::\n\n If you are running on a clean install of Fedora 28 or above, please make sure you have the ``redhat-rpm-config`` package installed in case if you want to\n use ``sanic`` with ``ujson`` dependency.\n\n\nHello World Example\n-------------------\n\n.. code:: python\n\n from sanic import Sanic\n from sanic.response import json\n\n app = Sanic(\"my-hello-world-app\")\n\n @app.route('/')\n async def test(request):\n return json({'hello': 'world'})\n\n if __name__ == '__main__':\n app.run()\n\nSanic can now be easily run using ``sanic hello.app``.\n\n.. code::\n\n [2018-12-30 11:37:41 +0200] [13564] [INFO] Goin' Fast @ http://127.0.0.1:8000\n [2018-12-30 11:37:41 +0200] [13564] [INFO] Starting worker [13564]\n\nAnd, we can verify it is working: ``curl localhost:8000 -i``\n\n.. code::\n\n HTTP/1.1 200 OK\n Connection: keep-alive\n Keep-Alive: 5\n Content-Length: 17\n Content-Type: application/json\n\n {\"hello\":\"world\"}\n\n**Now, let's go build something fast!**\n\nMinimum Python version is 3.8. If you need Python 3.7 support, please use v22.12LTS.\n\nDocumentation\n-------------\n\nUser Guide, Changelog, and API Documentation can be found at `sanic.dev <https://sanic.dev>`__.\n\n\nQuestions and Discussion\n------------------------\n\n`Ask a question or join the conversation <https://community.sanicframework.org/>`__.\n\nContribution\n------------\n\nWe are always happy to have new contributions. We have `marked issues good for anyone looking to get started <https://github.com/sanic-org/sanic/issues?q=is%3Aopen+is%3Aissue+label%3Abeginner>`_, and welcome `questions on the forums <https://community.sanicframework.org/>`_. Please take a look at our `Contribution guidelines <https://github.com/sanic-org/sanic/blob/master/CONTRIBUTING.rst>`_.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A web server and web framework that's written to go fast. Build fast. Run fast.",
"version": "24.6.0",
"project_urls": {
"Homepage": "http://github.com/sanic-org/sanic/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "76884c61ced275fa8978775e4380c423250161470ef5b418e94685128f161102",
"md5": "b4d6a7773147aa79b6c5843f684c80f5",
"sha256": "e2c6b392e213d85d9843cf27c64e3f2dacb3ec5c31c8c7ade4c404cd3030e994"
},
"downloads": -1,
"filename": "sanic-24.6.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b4d6a7773147aa79b6c5843f684c80f5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 244941,
"upload_time": "2024-06-30T12:22:21",
"upload_time_iso_8601": "2024-06-30T12:22:21.987716Z",
"url": "https://files.pythonhosted.org/packages/76/88/4c61ced275fa8978775e4380c423250161470ef5b418e94685128f161102/sanic-24.6.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3700d252369495fe3bc876fb7c269ec204800b6f66fdd9083d4dd29ee7539130",
"md5": "dbf0ebe09a610ca81342c837ac073c8d",
"sha256": "2e0841e2c8c28e68a0e6fc570c42aafbbe3b385d7141b9f96997d9d6c17d7afb"
},
"downloads": -1,
"filename": "sanic-24.6.0.tar.gz",
"has_sig": false,
"md5_digest": "dbf0ebe09a610ca81342c837ac073c8d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 351992,
"upload_time": "2024-06-30T12:22:24",
"upload_time_iso_8601": "2024-06-30T12:22:24.310802Z",
"url": "https://files.pythonhosted.org/packages/37/00/d252369495fe3bc876fb7c269ec204800b6f66fdd9083d4dd29ee7539130/sanic-24.6.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-06-30 12:22:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "sanic-org",
"github_project": "sanic",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"appveyor": true,
"tox": true,
"lcname": "sanic"
}