Metadata-Version: 2.1
Name: auto-ninja
Version: 1.0.0
Summary: A lightweight library to quickly build CRUD API endpoints for Django Ninja.
Home-page: https://github.com/fa-krug/auto-ninja
License: MIT
Keywords: django,ninja,crud,auto
Author: Sascha Krug
Requires-Python: >=3.10,<4.0
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 4.0
Classifier: Framework :: Django :: 4.1
Classifier: Framework :: Django :: 4.2
Classifier: Framework :: Django :: 5.0
Classifier: Framework :: Django :: 5.1
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: typer (>=0.15.0,<0.16.0)
Project-URL: Repository, https://github.com/fa-krug/auto-ninja
Description-Content-Type: text/markdown

# 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!

