gredisql


Namegredisql JSON
Version 0.0.8 PyPI version JSON
download
home_pagehttps://github.com/sabbiramin113008/gredisql
SummaryA GraphQL interface for Redis Database.
upload_time2023-09-03 10:54:35
maintainer
docs_urlNone
authorSabbir Amin
requires_python
licenseMIT
keywords python database redis graphql
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ## GredisQL
A GraphQL interface for Redis Database. 

##  Motivation
1. I was bored, been sick for a while, had to lie on the bed. So I needed to create something. 
2. Redis has Web interface ( actually a REST interface), so I urged to build one in GraphQL. 
3. There are some pretty amazing GraphQL libraries around python echo system, I wanted to try them. 
4. Last but not least, jump into quick coding session, engage and nurture the human mind. LOL

## Design Philosophy
1. All the data `mutation` and `query` are not separated here by action and most probably all the actions are performed via `query` operation.
2. Technically `all` the requests sent to the GraphQL `server` was in `POST`, so I was initially okay with the implementation. 
3. `Strawberry-Graphql` is kind of server agnostic so either you can use `ASGI` or `WSGI` counterpart. 
4. Currently limiting the implementation with `WSGI` server, but I've plan to adopt `ASGI` in the journey, to support `subscription`. 
5. Not `all` Redis commands are found in the implementation, I'll try to cover it in the process. 

## Inspiration and Tools I used
1. `redis==5.0.0` is used to communicate with the Redis database. 
2. `strawberry-graphql` is used to do the heavy lifting. Also, I tried `ariadne` which is also another cool tool to try with.

## Features and Future Plans
1. [X] String Commands.
2. [X] List Commands. 
3. [X] Set Commands. 

And many more to come in the future iteration.

## Quick Starting the GraphQL Server
```python
if __name__ == "__main__":
    from gredisql.core import Server

    server = Server()
    server.run()
```
You can specify the `host`, `port` and `debug` mode in while instantiating the `GraphQL` server. 

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/sabbiramin113008/gredisql",
    "name": "gredisql",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "python,Database,Redis,GraphQL",
    "author": "Sabbir Amin",
    "author_email": "sabbiramin.cse11ruet@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/01/21/a872820176e21fe0b19dfdc963a68365f101b0db038b7d5d840763c77c22/gredisql-0.0.8.tar.gz",
    "platform": null,
    "description": "## GredisQL\nA GraphQL interface for Redis Database. \n\n##  Motivation\n1. I was bored, been sick for a while, had to lie on the bed. So I needed to create something. \n2. Redis has Web interface ( actually a REST interface), so I urged to build one in GraphQL. \n3. There are some pretty amazing GraphQL libraries around python echo system, I wanted to try them. \n4. Last but not least, jump into quick coding session, engage and nurture the human mind. LOL\n\n## Design Philosophy\n1. All the data `mutation` and `query` are not separated here by action and most probably all the actions are performed via `query` operation.\n2. Technically `all` the requests sent to the GraphQL `server` was in `POST`, so I was initially okay with the implementation. \n3. `Strawberry-Graphql` is kind of server agnostic so either you can use `ASGI` or `WSGI` counterpart. \n4. Currently limiting the implementation with `WSGI` server, but I've plan to adopt `ASGI` in the journey, to support `subscription`. \n5. Not `all` Redis commands are found in the implementation, I'll try to cover it in the process. \n\n## Inspiration and Tools I used\n1. `redis==5.0.0` is used to communicate with the Redis database. \n2. `strawberry-graphql` is used to do the heavy lifting. Also, I tried `ariadne` which is also another cool tool to try with.\n\n## Features and Future Plans\n1. [X] String Commands.\n2. [X] List Commands. \n3. [X] Set Commands. \n\nAnd many more to come in the future iteration.\n\n## Quick Starting the GraphQL Server\n```python\nif __name__ == \"__main__\":\n    from gredisql.core import Server\n\n    server = Server()\n    server.run()\n```\nYou can specify the `host`, `port` and `debug` mode in while instantiating the `GraphQL` server. \n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A GraphQL interface for Redis Database.",
    "version": "0.0.8",
    "project_urls": {
        "Homepage": "https://github.com/sabbiramin113008/gredisql"
    },
    "split_keywords": [
        "python",
        "database",
        "redis",
        "graphql"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "138f3545462b5677076b90ca137c05a49956d16ff48530475078e4b1e894865e",
                "md5": "b6e25fce0a0875d82d2c8652650016f7",
                "sha256": "68e0fd86ca8757ab4b74001c97306b80beaba2a5d061f411411aebfdbcb195bd"
            },
            "downloads": -1,
            "filename": "gredisql-0.0.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b6e25fce0a0875d82d2c8652650016f7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 4823,
            "upload_time": "2023-09-03T10:54:32",
            "upload_time_iso_8601": "2023-09-03T10:54:32.409652Z",
            "url": "https://files.pythonhosted.org/packages/13/8f/3545462b5677076b90ca137c05a49956d16ff48530475078e4b1e894865e/gredisql-0.0.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0121a872820176e21fe0b19dfdc963a68365f101b0db038b7d5d840763c77c22",
                "md5": "31d1c6fca86d81d22f6a193ed6ce686f",
                "sha256": "d64728c8dea05ec49f6c0c69a814a0ccdc9f4b3f354517e0505bc471147bfa6a"
            },
            "downloads": -1,
            "filename": "gredisql-0.0.8.tar.gz",
            "has_sig": false,
            "md5_digest": "31d1c6fca86d81d22f6a193ed6ce686f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 4581,
            "upload_time": "2023-09-03T10:54:35",
            "upload_time_iso_8601": "2023-09-03T10:54:35.119448Z",
            "url": "https://files.pythonhosted.org/packages/01/21/a872820176e21fe0b19dfdc963a68365f101b0db038b7d5d840763c77c22/gredisql-0.0.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-09-03 10:54:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sabbiramin113008",
    "github_project": "gredisql",
    "github_not_found": true,
    "lcname": "gredisql"
}
        
Elapsed time: 0.12372s