pycord-quart


Namepycord-quart JSON
Version 0.1.3 PyPI version JSON
download
home_pagehttps://github.com/ParrotXray/pycord-quart
SummaryA pycord extension for Discord OAuth2 authentication in Quart applications.
upload_time2025-07-23 10:15:56
maintainerNone
docs_urlNone
authorParrotXray
requires_python>=3.10
licenseMIT
keywords discord ipc quart websocket asyncio py-cord
VCS
bugtrack_url
requirements aiohttp typing-extensions py-cord pydantic quart-cors quart
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pycord-quart
A pycord extension for Discord OAuth2 authentication in Quart applications.

# Installation 
Python >= 3.10.x is required.
```bash=
# Windows
pip install --upgrade pycord-quart

# Linux
pip3 install --upgrade pycord-quart
```
# Examples
```py= 
from quart import Quart, request, session, redirect, url_for, jsonify
from pycord.ipc import Client
from pycord.quart import DiscordAuth, require_auth, get_current_user

app = Quart(__name__)
ipc_client = Client(secret_key=<"your IPCSecret">, host=<"your IPC Server IP">, port=<"your IPC Server Port">)

app.config["SECRET_KEY"] = <"your SecretKey">

discord_auth = DiscordAuth(
    client_id=<"your DiscordClientID">,
    client_secret=<"your DiscordClientSecret">,
    redirect_uri=<"your DiscordRedirectURI">,
    scopes=['identify', 'email', 'guilds'],
)

@app.route("/api/auth/login", methods=["GET"])
async def api_login():
    response = await discord_auth.login_handler()
    
    return jsonify(response.to_json), response.code

@app.route("/api/auth/callback", methods=["GET"])
async def api_callback():
    response = await discord_auth.callback_handler()

    return jsonify(response.to_json), response.code

@app.route("/api/auth/logout", methods=["POST"])
async def api_logout():
    response = await discord_auth.logout_handler()

    return jsonify(response.to_json), response.code

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=8080, debug=True)
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ParrotXray/pycord-quart",
    "name": "pycord-quart",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "discord, ipc, quart, websocket, asyncio, py-cord",
    "author": "ParrotXray",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/dd/bc/d73566d3d3944dfb2fb4f3fd06bcec34af630d7b14c9747fda8ddd64087c/pycord_quart-0.1.3.tar.gz",
    "platform": null,
    "description": "# pycord-quart\nA pycord extension for Discord OAuth2 authentication in Quart applications.\n\n# Installation \nPython >= 3.10.x is required.\n```bash=\n# Windows\npip install --upgrade pycord-quart\n\n# Linux\npip3 install --upgrade pycord-quart\n```\n# Examples\n```py= \nfrom quart import Quart, request, session, redirect, url_for, jsonify\nfrom pycord.ipc import Client\nfrom pycord.quart import DiscordAuth, require_auth, get_current_user\n\napp = Quart(__name__)\nipc_client = Client(secret_key=<\"your IPCSecret\">, host=<\"your IPC Server IP\">, port=<\"your IPC Server Port\">)\n\napp.config[\"SECRET_KEY\"] = <\"your SecretKey\">\n\ndiscord_auth = DiscordAuth(\n    client_id=<\"your DiscordClientID\">,\n    client_secret=<\"your DiscordClientSecret\">,\n    redirect_uri=<\"your DiscordRedirectURI\">,\n    scopes=['identify', 'email', 'guilds'],\n)\n\n@app.route(\"/api/auth/login\", methods=[\"GET\"])\nasync def api_login():\n    response = await discord_auth.login_handler()\n    \n    return jsonify(response.to_json), response.code\n\n@app.route(\"/api/auth/callback\", methods=[\"GET\"])\nasync def api_callback():\n    response = await discord_auth.callback_handler()\n\n    return jsonify(response.to_json), response.code\n\n@app.route(\"/api/auth/logout\", methods=[\"POST\"])\nasync def api_logout():\n    response = await discord_auth.logout_handler()\n\n    return jsonify(response.to_json), response.code\n\nif __name__ == \"__main__\":\n    app.run(host=\"0.0.0.0\", port=8080, debug=True)\n```\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A pycord extension for Discord OAuth2 authentication in Quart applications.",
    "version": "0.1.3",
    "project_urls": {
        "Homepage": "https://github.com/ParrotXray/pycord-quart",
        "Issue Tracker": "https://github.com/ParrotXray/pycord-quart/issues",
        "Repository": "https://github.com/ParrotXray/pycord-quart",
        "Source": "https://github.com/ParrotXray/pycord-quart"
    },
    "split_keywords": [
        "discord",
        " ipc",
        " quart",
        " websocket",
        " asyncio",
        " py-cord"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8ae179554ce145db72db3be096e3eac29d2fd4d364c140fbfb648369794b256d",
                "md5": "7f5f789e2a7032cd847d072d49ff64d3",
                "sha256": "78b96c5a51023496a8d2af40c5f9e3f8da17b2ce77e74c3a22dd05b69c6fc07b"
            },
            "downloads": -1,
            "filename": "pycord_quart-0.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7f5f789e2a7032cd847d072d49ff64d3",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 8782,
            "upload_time": "2025-07-23T10:15:55",
            "upload_time_iso_8601": "2025-07-23T10:15:55.620765Z",
            "url": "https://files.pythonhosted.org/packages/8a/e1/79554ce145db72db3be096e3eac29d2fd4d364c140fbfb648369794b256d/pycord_quart-0.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ddbcd73566d3d3944dfb2fb4f3fd06bcec34af630d7b14c9747fda8ddd64087c",
                "md5": "885d96c70d83d8ef9e3bdf811082a27b",
                "sha256": "39f9552dcfc6630bde789dca23cc82ad1f7b446bbc96e07ff2145595de39b235"
            },
            "downloads": -1,
            "filename": "pycord_quart-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "885d96c70d83d8ef9e3bdf811082a27b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 10238,
            "upload_time": "2025-07-23T10:15:56",
            "upload_time_iso_8601": "2025-07-23T10:15:56.788389Z",
            "url": "https://files.pythonhosted.org/packages/dd/bc/d73566d3d3944dfb2fb4f3fd06bcec34af630d7b14c9747fda8ddd64087c/pycord_quart-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-23 10:15:56",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ParrotXray",
    "github_project": "pycord-quart",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "aiohttp",
            "specs": []
        },
        {
            "name": "typing-extensions",
            "specs": []
        },
        {
            "name": "py-cord",
            "specs": []
        },
        {
            "name": "pydantic",
            "specs": []
        },
        {
            "name": "quart-cors",
            "specs": []
        },
        {
            "name": "quart",
            "specs": []
        }
    ],
    "lcname": "pycord-quart"
}
        
Elapsed time: 1.27150s