Metadata-Version: 2.1
Name: api-project-generator
Version: 0.3.4
Summary: 
Author: Gustavo Correa
Author-email: self.gustavocorrea@gmail.com
Requires-Python: >=3.9,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: GitPython (>=3.1.18,<4.0.0)
Requires-Dist: typer (>=0.3.2,<0.4.0)
Description-Content-Type: text/markdown

# API Project Generator

Simple API Structure Generator using tecnologies:

- FastAPI
- SQLAlchemy
- aiohttp
- aiomysql or asyncpg

## Commands

- `create:api`: Creates the project structure and base classes

  > Optional `--code` option auto opens code through a `code project_folder_name` command.
  > Optional `--db-type` option allows to select database type from "postgres" or "mysql". (default: mysql)

  ```bash
  api-project create
  ```

- `create:table`: Creates a new table in file in {project_name}/database/tables/{table_module}/{table_file}.py

  ```bash
  api-project create:table [table_module] [table_name]
  ```

- `create:dto`: Creates a new DTO file in {project_name}/dtos/{dtos_module}/{dto_name}.py

  ```bash
  api-project create:dto [dtos_module] [dto_name]
  ```

- `create:enum`: Creates a new Enum file in {project_name}/dtos/enums/{enum_name}.py

  > The `auto-opts` option in the command can be repeated and will be used as the enum field

  ```bash
  api-project create:enum [enum_name] --auto-opts [opt_name]
  ```

### Observations

> All filenames and foldernames are
>
> normalized automatically to snake_case.

