# Auto Ninja
## Overview
Auto Ninja is a Python library designed to streamline the setup of Django APIs by automatically generating the necessary
files and configurations. With customizable options, Auto Ninja reduces boilerplate and accelerates the development
process.
## Features
- Automatic generation of API structure in Django.
- Creates service, utility, and main application files.
- Dynamically generates endpoint and schema files for all models in installed Django applications.
- Easy integration using command-line options with Typer.
## Installation
To install Auto Ninja, make sure you have Python and pip installed, then execute:
```bash
pip install auto-ninja
```
## Usage
To get started with Auto Ninja, simply run the script with the desired configuration options:
```bash
auto-ninja [OPTIONS]
```
### Options
- `--title TEXT`: The title of the application (default: "Auto Ninja").
- `--description TEXT`: Description of the application (default: "Automatically generated API").
## Example
Here's how you can use Auto Ninja to set up your API:
```bash
auto-ninja --title "My API" --description "This API is auto-generated by Auto Ninja"
```
## How It Works
1. **Setup**: Auto Ninja configures your Django environment and identifies installed applications.
2. **Template Application**: It applies pre-defined templates to create API structure under each app.
3. **Dynamic File Generation**: Automatically generates appropriate endpoint and schema files for each model detected in
your apps.
## Customization
Auto Ninja uses templates that can be located in your project. Custom templates can be supplied to adjust the way files
are generated to better fit your project's needs.
## Contributing
We welcome contributions to enhance Auto Ninja! If you're interested, please follow our contribution guidelines and
submit a pull request on GitHub.
## License
Auto Ninja is licensed under the MIT License. See [LICENSE](LICENSE.md) for more details.
## Acknowledgements
Thanks to all contributors and the open-source community for their support and collaboration.
---
If you encounter any issues or have questions, please open an issue on GitHub or contact us.
Happy coding with Auto Ninja!
Raw data
{
"_id": null,
"home_page": "https://github.com/fa-krug/auto-ninja",
"name": "auto-ninja",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "django, ninja, crud, auto",
"author": "Sascha Krug",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/ee/b6/6329e871716182dd8b865b1f552a58b15177d2b004c24e087031c26077df/auto_ninja-1.0.2.tar.gz",
"platform": null,
"description": "# Auto Ninja\n\n## Overview\n\nAuto Ninja is a Python library designed to streamline the setup of Django APIs by automatically generating the necessary\nfiles and configurations. With customizable options, Auto Ninja reduces boilerplate and accelerates the development\nprocess.\n\n## Features\n\n- Automatic generation of API structure in Django.\n- Creates service, utility, and main application files.\n- Dynamically generates endpoint and schema files for all models in installed Django applications.\n- Easy integration using command-line options with Typer.\n\n## Installation\n\nTo install Auto Ninja, make sure you have Python and pip installed, then execute:\n\n```bash\npip install auto-ninja\n```\n\n## Usage\n\nTo get started with Auto Ninja, simply run the script with the desired configuration options:\n\n```bash\nauto-ninja [OPTIONS]\n```\n\n### Options\n\n- `--title TEXT`: The title of the application (default: \"Auto Ninja\").\n- `--description TEXT`: Description of the application (default: \"Automatically generated API\").\n\n## Example\n\nHere's how you can use Auto Ninja to set up your API:\n\n```bash\nauto-ninja --title \"My API\" --description \"This API is auto-generated by Auto Ninja\"\n```\n\n## How It Works\n\n1. **Setup**: Auto Ninja configures your Django environment and identifies installed applications.\n2. **Template Application**: It applies pre-defined templates to create API structure under each app.\n3. **Dynamic File Generation**: Automatically generates appropriate endpoint and schema files for each model detected in\n your apps.\n\n## Customization\n\nAuto Ninja uses templates that can be located in your project. Custom templates can be supplied to adjust the way files\nare generated to better fit your project's needs.\n\n## Contributing\n\nWe welcome contributions to enhance Auto Ninja! If you're interested, please follow our contribution guidelines and\nsubmit a pull request on GitHub.\n\n## License\n\nAuto Ninja is licensed under the MIT License. See [LICENSE](LICENSE.md) for more details.\n\n## Acknowledgements\n\nThanks to all contributors and the open-source community for their support and collaboration.\n\n---\n\nIf you encounter any issues or have questions, please open an issue on GitHub or contact us.\n\nHappy coding with Auto Ninja!\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A lightweight library to quickly build CRUD API endpoints for Django Ninja.",
"version": "1.0.2",
"project_urls": {
"Homepage": "https://github.com/fa-krug/auto-ninja",
"Repository": "https://github.com/fa-krug/auto-ninja"
},
"split_keywords": [
"django",
" ninja",
" crud",
" auto"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "dd6c0930c9e7e923e9db38e8cf8bb6390b269ad2fb244dd08bdbc61a0198f936",
"md5": "391eb5869da0b4d49b4fa04390e49096",
"sha256": "287531194f4b02f4429b9d2b65242876c0551c3007208c192995abbab3d81a4f"
},
"downloads": -1,
"filename": "auto_ninja-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "391eb5869da0b4d49b4fa04390e49096",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 11727,
"upload_time": "2024-12-04T01:05:46",
"upload_time_iso_8601": "2024-12-04T01:05:46.294977Z",
"url": "https://files.pythonhosted.org/packages/dd/6c/0930c9e7e923e9db38e8cf8bb6390b269ad2fb244dd08bdbc61a0198f936/auto_ninja-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "eeb66329e871716182dd8b865b1f552a58b15177d2b004c24e087031c26077df",
"md5": "e3cb4f01fa1f67d3a99f9c163f0beb1f",
"sha256": "4c4e87493517b61a389a11a7bcd778245a2db7893ee91d0858ee0a206295ba3a"
},
"downloads": -1,
"filename": "auto_ninja-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "e3cb4f01fa1f67d3a99f9c163f0beb1f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 9594,
"upload_time": "2024-12-04T01:05:47",
"upload_time_iso_8601": "2024-12-04T01:05:47.717415Z",
"url": "https://files.pythonhosted.org/packages/ee/b6/6329e871716182dd8b865b1f552a58b15177d2b004c24e087031c26077df/auto_ninja-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-04 01:05:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "fa-krug",
"github_project": "auto-ninja",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "django",
"specs": [
[
">=",
"4.2.16"
]
]
},
{
"name": "django-ninja",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "ruff",
"specs": [
[
"==",
"0.8.1"
]
]
}
],
"lcname": "auto-ninja"
}