groovindb


Namegroovindb JSON
Version 0.1.4 PyPI version JSON
download
home_pagehttps://bitbucket.org/groovinads/groovindb
SummaryORM asíncrono para Python con interfaz similar a Prisma
upload_time2024-12-23 15:08:15
maintainerNone
docs_urlNone
authorJuan Manuel Panozzo Zenere
requires_python>=3.8
licenseNone
keywords database orm async postgresql mysql prisma
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # GroovinDB

GroovinDB es un ORM asíncrono para Python que proporciona una interfaz similar a Prisma para interactuar con bases de datos PostgreSQL y MySQL.

## Características

- Soporte para PostgreSQL y MySQL
- API asíncrona
- Sistema de caché integrado (memoria y Redis)
- CLI para inicialización y gestión
- Introspección automática de bases de datos
- Generación automática de modelos
- Soporte para múltiples esquemas
- Sistema de logging configurable

## Instalación

```bash
pip install groovindb
```

## Uso Rápido

1. Inicializar el proyecto:

```bash
groovindb init
```

2. Usar en código:

```python
import asyncio
from groovindb import GroovinDB

async def main():
    db = GroovinDB()
    await db.connect()

    # Consultar registros
    users = await db.client.users.findMany(
        where={"active": True},
        orderBy=[{"name": "asc"}],
        take=10
    )

    await db.disconnect()

if __name__ == "__main__":
    asyncio.run(main())
```

## Configuración

La configuración se almacena en `groovindb.json`:

```json
{
  "postgresql": {
    "user": "user",
    "password": "password",
    "database": "mydb",
    "host": "localhost",
    "port": 5432,
    "schema": "public"
  },
  "cache": {
    "type": "memory",
    "ttl": 300
  },
  "debug": {
    "level": "INFO"
  }
}
```

## Documentación

Para más información, consulta la [documentación completa](https://bitbucket.org/groovinads/groovindb/src/master/README.md).

## Licencia

MIT

            

Raw data

            {
    "_id": null,
    "home_page": "https://bitbucket.org/groovinads/groovindb",
    "name": "groovindb",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "database orm async postgresql mysql prisma",
    "author": "Juan Manuel Panozzo Zenere",
    "author_email": "juanmanuel.panozzo@groovinads.com",
    "download_url": "https://files.pythonhosted.org/packages/21/bf/877cd2d68be67ead62ed96f467a2309b7f5b2a82f7c7c03e62a09ac8a461/groovindb-0.1.4.tar.gz",
    "platform": null,
    "description": "# GroovinDB\n\nGroovinDB es un ORM as\u00edncrono para Python que proporciona una interfaz similar a Prisma para interactuar con bases de datos PostgreSQL y MySQL.\n\n## Caracter\u00edsticas\n\n- Soporte para PostgreSQL y MySQL\n- API as\u00edncrona\n- Sistema de cach\u00e9 integrado (memoria y Redis)\n- CLI para inicializaci\u00f3n y gesti\u00f3n\n- Introspecci\u00f3n autom\u00e1tica de bases de datos\n- Generaci\u00f3n autom\u00e1tica de modelos\n- Soporte para m\u00faltiples esquemas\n- Sistema de logging configurable\n\n## Instalaci\u00f3n\n\n```bash\npip install groovindb\n```\n\n## Uso R\u00e1pido\n\n1. Inicializar el proyecto:\n\n```bash\ngroovindb init\n```\n\n2. Usar en c\u00f3digo:\n\n```python\nimport asyncio\nfrom groovindb import GroovinDB\n\nasync def main():\n    db = GroovinDB()\n    await db.connect()\n\n    # Consultar registros\n    users = await db.client.users.findMany(\n        where={\"active\": True},\n        orderBy=[{\"name\": \"asc\"}],\n        take=10\n    )\n\n    await db.disconnect()\n\nif __name__ == \"__main__\":\n    asyncio.run(main())\n```\n\n## Configuraci\u00f3n\n\nLa configuraci\u00f3n se almacena en `groovindb.json`:\n\n```json\n{\n  \"postgresql\": {\n    \"user\": \"user\",\n    \"password\": \"password\",\n    \"database\": \"mydb\",\n    \"host\": \"localhost\",\n    \"port\": 5432,\n    \"schema\": \"public\"\n  },\n  \"cache\": {\n    \"type\": \"memory\",\n    \"ttl\": 300\n  },\n  \"debug\": {\n    \"level\": \"INFO\"\n  }\n}\n```\n\n## Documentaci\u00f3n\n\nPara m\u00e1s informaci\u00f3n, consulta la [documentaci\u00f3n completa](https://bitbucket.org/groovinads/groovindb/src/master/README.md).\n\n## Licencia\n\nMIT\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "ORM as\u00edncrono para Python con interfaz similar a Prisma",
    "version": "0.1.4",
    "project_urls": {
        "Bug Tracker": "https://bitbucket.org/groovinads/groovindb/issues",
        "Documentation": "https://bitbucket.org/groovinads/groovindb/src/master/README.md",
        "Homepage": "https://bitbucket.org/groovinads/groovindb",
        "Source Code": "https://bitbucket.org/groovinads/groovindb"
    },
    "split_keywords": [
        "database",
        "orm",
        "async",
        "postgresql",
        "mysql",
        "prisma"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "efd90f3660cad21e658e52c6f6ca60732e886755c828d98cc7dde241ba5cd9d0",
                "md5": "481c5654b843d115d8b2e05eaf0d829d",
                "sha256": "84f7ec530d10959a81fc356ed99417d3e4fb172417d766827d4b5899f3139233"
            },
            "downloads": -1,
            "filename": "groovindb-0.1.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "481c5654b843d115d8b2e05eaf0d829d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 31705,
            "upload_time": "2024-12-23T15:08:14",
            "upload_time_iso_8601": "2024-12-23T15:08:14.122604Z",
            "url": "https://files.pythonhosted.org/packages/ef/d9/0f3660cad21e658e52c6f6ca60732e886755c828d98cc7dde241ba5cd9d0/groovindb-0.1.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "21bf877cd2d68be67ead62ed96f467a2309b7f5b2a82f7c7c03e62a09ac8a461",
                "md5": "240a88094b72e52359370227f98067b7",
                "sha256": "d3463873ad7d45bc8e8fc10d6a502e97f6b4aca1eac5f6d6f6a4f97b331a6f90"
            },
            "downloads": -1,
            "filename": "groovindb-0.1.4.tar.gz",
            "has_sig": false,
            "md5_digest": "240a88094b72e52359370227f98067b7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 22218,
            "upload_time": "2024-12-23T15:08:15",
            "upload_time_iso_8601": "2024-12-23T15:08:15.354866Z",
            "url": "https://files.pythonhosted.org/packages/21/bf/877cd2d68be67ead62ed96f467a2309b7f5b2a82f7c7c03e62a09ac8a461/groovindb-0.1.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-23 15:08:15",
    "github": false,
    "gitlab": false,
    "bitbucket": true,
    "codeberg": false,
    "bitbucket_user": "groovinads",
    "bitbucket_project": "groovindb",
    "lcname": "groovindb"
}
        
Elapsed time: 0.42553s