aquilify


Nameaquilify JSON
Version 1.16 PyPI version JSON
download
home_pagehttps://github.com/embrake/aquilify/
SummaryAquilify is an ASGI (Asynchronous Server Gateway Interface) framework designed to facilitate the development of web applications with Python. It enables efficient handling of HTTP requests, WebSocket connections, middleware processing, and exception handling in an asynchronous environment.
upload_time2024-03-03 07:00:29
maintainer
docs_urlNone
authorPawan kumar
requires_python
licenseBSD-3-Clause
keywords web framework python web development user-friendly high-level asgi backend
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
<div align="center">
  <a href="#"><img src="https://i.ibb.co/jTwBsqH/aquilify.png" alt="IMG-20231115-232824" style="border-radius: 6px;" width="420px" alt="Aquilify"></a>
</div>

---

**Documentation**: [http://www.aquilify.vvfin.in/](http://aquilify.vvfin.in/)

---

# AQUILIFY

Aquilify is an ASGI (Asynchronous Server Gateway Interface) framework designed to facilitate the development of web applications with Python. It enables efficient handling of HTTP requests, WebSocket connections, middleware processing, and exception handling in an asynchronous environment.

## Installation

```bash
$ pip install aquilify
```

##### Or you can install the `aquilify[full]`

```bash
$ pip install aquilify[full]
```

## Basic Setup

Create a new aquilify app using the command show below :

```bash
$ aquilify create-app myapp
```
Now, move inside the `myapp` and run :

```bash
$ aquilify runserver
```

To make changes in ASGI server configuration open `myapp/config.cfg` :

#### Default Configuration :

```python
[ASGI_SERVER]
server = NETIX
host = 127.0.0.1
port = 8000
debug = True
reload = False
instance = asgi:application
```

visit: `http://localhost:8000`

output: 
<div align="center">
  <a href="#"><img src="https://i.ibb.co/Yy8sX0q/setup.png" alt="IMG-20231115-232824" style="border-radius: 6px;" width="420px" alt="Aquilify"></a>
</div>

## Creating views

`myapp/views.py`

```python

async def myview() -> dict:
  return {"message": "Welcome to aquilify"}, 200
```

`myapp/routing.py`

```python
from aquilify.core.routing import rule

import views

ROUTER = [
  rule('/', view.myview)
]
```

`run server`

```bash
$ aquilify runserver
```

```python
Starting Netix v1.12 (cpython 3.12.1, win32)
------------------------------------------------------------------------
Options:
  run(host=127.0.0.1, port=8000, reuse_port=True, worker_num=1, ssl={}, debug=True, app=asgi:application, log_level=DEBUG)
------------------------------------------------------------------------
[2024-01-08 15:48:19] Netix detected Aquilify starting.. : Aquilify
[2024-01-08 15:48:19,421] INFO: lifespan: startup
[2024-01-08 15:48:19,423] INFO: lifespan.startup.complete
[2024-01-08 15:48:20] Netix (ASGI) (pid 17892) is started at 127.0.0.1 port 8000
```

`output` : `http://localhost:8000/` :

```json
{
    "message": "Welcome to aquilify"
}
```

## Credits
- Thanks to `starlette`.
- This project uses code adapted from the Starlette framework.

## Dependencies


Aquilify only requires `anyio`, and the following are optional:

* [`aiofiles`][aiofile] - Required if you want to use the `StaticMIddleware` or `File based Opertation`.
* [`jinja2`][jinja2] - Required if you want to use `TemplateResponse`.
* [`python-multipart`][python-multipart] - Required if you want to support form parsing, with `request.form()`.
* [`itsdangerous`][itsdangerous] - Required for `SessionMiddleware` and `CSRF` support.
* [`markupsafe`][markupsafe] - Required for `Jinja2` and `CSRF` support.


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/embrake/aquilify/",
    "name": "aquilify",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "web framework,Python web development,user-friendly,high-level,ASGI,backend",
    "author": "Pawan kumar",
    "author_email": "embrakeproject@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/8f/6e/a569289d25f1a5619fddfa36709f033d3baaae56df0df5e89fcba79cd6b8/aquilify-1.16.tar.gz",
    "platform": null,
    "description": "\n<div align=\"center\">\n  <a href=\"#\"><img src=\"https://i.ibb.co/jTwBsqH/aquilify.png\" alt=\"IMG-20231115-232824\" style=\"border-radius: 6px;\" width=\"420px\" alt=\"Aquilify\"></a>\n</div>\n\n---\n\n**Documentation**: [http://www.aquilify.vvfin.in/](http://aquilify.vvfin.in/)\n\n---\n\n# AQUILIFY\n\nAquilify is an ASGI (Asynchronous Server Gateway Interface) framework designed to facilitate the development of web applications with Python. It enables efficient handling of HTTP requests, WebSocket connections, middleware processing, and exception handling in an asynchronous environment.\n\n## Installation\n\n```bash\n$ pip install aquilify\n```\n\n##### Or you can install the `aquilify[full]`\n\n```bash\n$ pip install aquilify[full]\n```\n\n## Basic Setup\n\nCreate a new aquilify app using the command show below :\n\n```bash\n$ aquilify create-app myapp\n```\nNow, move inside the `myapp` and run :\n\n```bash\n$ aquilify runserver\n```\n\nTo make changes in ASGI server configuration open `myapp/config.cfg` :\n\n#### Default Configuration :\n\n```python\n[ASGI_SERVER]\nserver = NETIX\nhost = 127.0.0.1\nport = 8000\ndebug = True\nreload = False\ninstance = asgi:application\n```\n\nvisit: `http://localhost:8000`\n\noutput: \n<div align=\"center\">\n  <a href=\"#\"><img src=\"https://i.ibb.co/Yy8sX0q/setup.png\" alt=\"IMG-20231115-232824\" style=\"border-radius: 6px;\" width=\"420px\" alt=\"Aquilify\"></a>\n</div>\n\n## Creating views\n\n`myapp/views.py`\n\n```python\n\nasync def myview() -> dict:\n  return {\"message\": \"Welcome to aquilify\"}, 200\n```\n\n`myapp/routing.py`\n\n```python\nfrom aquilify.core.routing import rule\n\nimport views\n\nROUTER = [\n  rule('/', view.myview)\n]\n```\n\n`run server`\n\n```bash\n$ aquilify runserver\n```\n\n```python\nStarting Netix v1.12 (cpython 3.12.1, win32)\n------------------------------------------------------------------------\nOptions:\n  run(host=127.0.0.1, port=8000, reuse_port=True, worker_num=1, ssl={}, debug=True, app=asgi:application, log_level=DEBUG)\n------------------------------------------------------------------------\n[2024-01-08 15:48:19] Netix detected Aquilify starting.. : Aquilify\n[2024-01-08 15:48:19,421] INFO: lifespan: startup\n[2024-01-08 15:48:19,423] INFO: lifespan.startup.complete\n[2024-01-08 15:48:20] Netix (ASGI) (pid 17892) is started at 127.0.0.1 port 8000\n```\n\n`output` : `http://localhost:8000/` :\n\n```json\n{\n    \"message\": \"Welcome to aquilify\"\n}\n```\n\n## Credits\n- Thanks to `starlette`.\n- This project uses code adapted from the Starlette framework.\n\n## Dependencies\n\n\nAquilify only requires `anyio`, and the following are optional:\n\n* [`aiofiles`][aiofile] - Required if you want to use the `StaticMIddleware` or `File based Opertation`.\n* [`jinja2`][jinja2] - Required if you want to use `TemplateResponse`.\n* [`python-multipart`][python-multipart] - Required if you want to support form parsing, with `request.form()`.\n* [`itsdangerous`][itsdangerous] - Required for `SessionMiddleware` and `CSRF` support.\n* [`markupsafe`][markupsafe] - Required for `Jinja2` and `CSRF` support.\n\n",
    "bugtrack_url": null,
    "license": "BSD-3-Clause",
    "summary": "Aquilify is an ASGI (Asynchronous Server Gateway Interface) framework designed to facilitate the development of web applications with Python. It enables efficient handling of HTTP requests, WebSocket connections, middleware processing, and exception handling in an asynchronous environment.",
    "version": "1.16",
    "project_urls": {
        "Homepage": "https://github.com/embrake/aquilify/"
    },
    "split_keywords": [
        "web framework",
        "python web development",
        "user-friendly",
        "high-level",
        "asgi",
        "backend"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "52ae6a76a5e982e5453a767db8186a5f410eaaa91bce38bb65b1ce6e19ddf454",
                "md5": "bee0340494b0a94f268b68d17839d831",
                "sha256": "9dcf80d1e71e3c6339f076bf10bb957b14dc1e95ef779cf88a59b401c5b3323e"
            },
            "downloads": -1,
            "filename": "aquilify-1.16-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "bee0340494b0a94f268b68d17839d831",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 397465,
            "upload_time": "2024-03-03T07:00:25",
            "upload_time_iso_8601": "2024-03-03T07:00:25.328939Z",
            "url": "https://files.pythonhosted.org/packages/52/ae/6a76a5e982e5453a767db8186a5f410eaaa91bce38bb65b1ce6e19ddf454/aquilify-1.16-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8f6ea569289d25f1a5619fddfa36709f033d3baaae56df0df5e89fcba79cd6b8",
                "md5": "361a889b3bb41a7fe53305b693c2548d",
                "sha256": "d42de8de6d978ac83ca68b15c1115ca3045e88ba787f2469cfef2b7fdfec0102"
            },
            "downloads": -1,
            "filename": "aquilify-1.16.tar.gz",
            "has_sig": false,
            "md5_digest": "361a889b3bb41a7fe53305b693c2548d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 279817,
            "upload_time": "2024-03-03T07:00:29",
            "upload_time_iso_8601": "2024-03-03T07:00:29.697166Z",
            "url": "https://files.pythonhosted.org/packages/8f/6e/a569289d25f1a5619fddfa36709f033d3baaae56df0df5e89fcba79cd6b8/aquilify-1.16.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-03 07:00:29",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "embrake",
    "github_project": "aquilify",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "aquilify"
}
        
Elapsed time: 0.23172s