{ "info": { "author": "", "author_email": "hello@agiliq.com", "bugtrack_url": null, "classifiers": [], "description": "### Bookrest - The easiest way to add rest API to an arbitrary DB\n\n\n![bookrest image](assets/bookrest.jpg)\n\nBookrest allows you to add an API (and browsable htmls) to arbitrary databases -- well almost arbitrary, the tables must have PKs.\nThe databases do not need to be managed by Django.\n\n\n#### Installation and usage\n\n\n```bash\npip install bookrest\n```\n\nThen in your `settings.py`,\n\n\n```python\nINSTALLED_APPS = [\n # ...\n \"rest_framework\",\n \"bookrest\",\n]\n```\n\nAdd a key to your `settings.DATABASES` named `bookrest`, and point it to the DB you want to expose as an API. Keep your `default` db as is, you can use it for user management and other Django apps.\n\n```python\nDATABASES = {\n \"default\": {\n \"ENGINE\": \"django.db.backends.sqlite3\",\n \"NAME\": os.path.join(BASE_DIR, \"db.sqlite3\"),\n },\n \"bookrest\": {\n \"ENGINE\": \"django.db.backends.sqlite3\",\n \"NAME\": os.path.join(BASE_DIR, \"data/sample.sqlite3\"),\n },\n}\n```\n\nConnect your urls to `bookrest.urls`\n\n```python\nurlpatterns = [\n # ...\n path(\"api/\", include(\"bookrest.urls\"))\n]\n```\n\n\ud83d\ude80 Boom! You are in business. All your tables will have a full read/write API\n\n![bookrest image](assets/bookrest.gif)\n\n### Todo\n\n- [X] Test with Sqlite\n- [X] Publish on Pypi\n- [ ] Test with Postgres\n- [ ] Test with Mysql\n- [ ] Add setting to enable a read only API\n- [ ] Enable circleci\n- [ ] Silently drop tables with no PKs rather than failing (bad idea??)\n\n\n#### Inspired by\n\nThis projects was inspired by [datasette](https://github.com/simonw/datasette). I loved datasette, but because DRF has a geat browsable API and Django has powerful introspection capabilities, I wanted to do it in Django+DRF.\n\nBookrest gets all the power of DRF - browsable API, coreapi, filtering, pagination. Set a `REST_FRAMEWORK` setting in your `settings.py` and `bookrest` will apply it.\n\n#### Whats with the name?\n\nYou can put the `bookrest` on table, and it makes reading simpler.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://www.agiliq.com/apps/bookrest/", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "bookrest", "package_url": "https://pypi.org/project/bookrest/", "platform": "", "project_url": "https://pypi.org/project/bookrest/", "project_urls": { "Homepage": "https://www.agiliq.com/apps/bookrest/" }, "release_url": "https://pypi.org/project/bookrest/0.1.4/", "requires_dist": null, "requires_python": "", "summary": "The easiest way to add a Django and DRF powered API to any project", "version": "0.1.4" }, "last_serial": 3749502, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "7483871230505cab513f4bd0f159fa9c", "sha256": "1c19d4b85e66186c4b0a416d15d52501dfb4345e1dc080a0d88e65707bbbb59f" }, "downloads": -1, "filename": "bookrest-0.1.0.tar.gz", "has_sig": false, "md5_digest": "7483871230505cab513f4bd0f159fa9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3826, "upload_time": "2018-04-09T17:34:09", "url": "https://files.pythonhosted.org/packages/6c/61/6d3c17d5444a263e683ba1b75c44d1e73165cf982ce335f4e82a18906994/bookrest-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "4cff3f156e0d6b8d046feccd9b343f76", "sha256": "b255ccba4d7faf05ee062d4edbb7cc50a75e1704ca78991f7db5ace2667e69c6" }, "downloads": -1, "filename": "bookrest-0.1.1.tar.gz", "has_sig": false, "md5_digest": "4cff3f156e0d6b8d046feccd9b343f76", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4000, "upload_time": "2018-04-09T17:40:10", "url": "https://files.pythonhosted.org/packages/dd/b0/0b9a2660b328ffd213e89e54767adeb1c8accb78e82d0f3678d6c0e9f1a7/bookrest-0.1.1.tar.gz" } ], "0.1.1a0": [ { "comment_text": "", "digests": { "md5": "7d73d973fe2586123d5f3ea90dad3a46", "sha256": "5069c24d765ebf51ea1545140e5f659f5e9262c3a4555d53962888e9d07ccdee" }, "downloads": -1, "filename": "bookrest-0.1.1a0.tar.gz", "has_sig": false, "md5_digest": "7d73d973fe2586123d5f3ea90dad3a46", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4039, "upload_time": "2018-04-09T17:42:51", "url": "https://files.pythonhosted.org/packages/c3/90/20710ff9f4f091ecc7e385c3c521b517667aaf58a4eea419484bcd6fb28d/bookrest-0.1.1a0.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "8d1b0d2086116a768dc7992466392133", "sha256": "b47e78485badecaaf96a22c4e7721db06bb98751d367117e17fe7c3b471719c6" }, "downloads": -1, "filename": "bookrest-0.1.2.tar.gz", "has_sig": false, "md5_digest": "8d1b0d2086116a768dc7992466392133", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4036, "upload_time": "2018-04-09T17:44:59", "url": "https://files.pythonhosted.org/packages/a4/8a/48b8246621a1429078a808db2d89dff6c6231595349d2b31718741ce36c7/bookrest-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "715a0353a985d3bf95df4c9c67f79274", "sha256": "8cb0223dbb9d1785b7ccdbd178e3e50c3168d88031f4e876bcd66e986f0a7489" }, "downloads": -1, "filename": "bookrest-0.1.3.tar.gz", "has_sig": false, "md5_digest": "715a0353a985d3bf95df4c9c67f79274", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4038, "upload_time": "2018-04-09T17:46:13", "url": "https://files.pythonhosted.org/packages/e7/a9/c85e9d0d085e6953e7d271d6b6212b9ab42ba91a74050cb8e7d63616ba93/bookrest-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "6aa2c686ce36a99afac62df62bcab2b1", "sha256": "9d72f8c959721e363b7d8e5b35825a06c70f309445c8da07efd90c21bf603563" }, "downloads": -1, "filename": "bookrest-0.1.4.tar.gz", "has_sig": false, "md5_digest": "6aa2c686ce36a99afac62df62bcab2b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4427, "upload_time": "2018-04-09T18:28:59", "url": "https://files.pythonhosted.org/packages/53/61/7b6d3fcb44e4b161c6c06b0a1258cee4e9c84f84a380e3d8e2401ff98181/bookrest-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6aa2c686ce36a99afac62df62bcab2b1", "sha256": "9d72f8c959721e363b7d8e5b35825a06c70f309445c8da07efd90c21bf603563" }, "downloads": -1, "filename": "bookrest-0.1.4.tar.gz", "has_sig": false, "md5_digest": "6aa2c686ce36a99afac62df62bcab2b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4427, "upload_time": "2018-04-09T18:28:59", "url": "https://files.pythonhosted.org/packages/53/61/7b6d3fcb44e4b161c6c06b0a1258cee4e9c84f84a380e3d8e2401ff98181/bookrest-0.1.4.tar.gz" } ] }