pycord-quart


Namepycord-quart JSON
Version 0.1.4 PyPI version JSON
download
home_pagehttps://github.com/ParrotXray/pycord-quart
SummaryA pycord extension for Discord OAuth2 authentication in Quart applications.
upload_time2025-09-09 06:34:04
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/6e/56/70f05c38f75a959c5b84558dea9e810dabc800e80ef33f4fb8ad78704023/pycord_quart-0.1.4.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.4",
    "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": "dea95294bc0eb1048d66b6f23a321584cd098e6d3757d9e7d1ce84de066951d2",
                "md5": "b5281f1371ce177ae1c99999a0c9e4ad",
                "sha256": "48f6cf3a09aa476ed3b65f3f9d700fb23614a6e7f6fa13497456f2bb00d42367"
            },
            "downloads": -1,
            "filename": "pycord_quart-0.1.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b5281f1371ce177ae1c99999a0c9e4ad",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 8783,
            "upload_time": "2025-09-09T06:34:02",
            "upload_time_iso_8601": "2025-09-09T06:34:02.921260Z",
            "url": "https://files.pythonhosted.org/packages/de/a9/5294bc0eb1048d66b6f23a321584cd098e6d3757d9e7d1ce84de066951d2/pycord_quart-0.1.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6e5670f05c38f75a959c5b84558dea9e810dabc800e80ef33f4fb8ad78704023",
                "md5": "807efef187b6fbdca214703412f0871e",
                "sha256": "1f3e996fa724d0eb196fcf255fa80e036ce2fb89a970be81dff9a59e15f4b7a3"
            },
            "downloads": -1,
            "filename": "pycord_quart-0.1.4.tar.gz",
            "has_sig": false,
            "md5_digest": "807efef187b6fbdca214703412f0871e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 10240,
            "upload_time": "2025-09-09T06:34:04",
            "upload_time_iso_8601": "2025-09-09T06:34:04.216689Z",
            "url": "https://files.pythonhosted.org/packages/6e/56/70f05c38f75a959c5b84558dea9e810dabc800e80ef33f4fb8ad78704023/pycord_quart-0.1.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-09 06:34:04",
    "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: 3.23816s