fastforge-cli 0.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. fastforge_cli-0.0.1/LICENSE +21 -0
  2. fastforge_cli-0.0.1/PKG-INFO +163 -0
  3. fastforge_cli-0.0.1/README.md +133 -0
  4. fastforge_cli-0.0.1/fastforge/__init__.py +1 -0
  5. fastforge_cli-0.0.1/fastforge/cli.py +693 -0
  6. fastforge_cli-0.0.1/fastforge/infra_template/cookiecutter.json +11 -0
  7. fastforge_cli-0.0.1/fastforge/infra_template/hooks/post_gen_project.py +77 -0
  8. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/README.md +41 -0
  9. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.app.yml +27 -0
  10. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.elasticsearch.yml +32 -0
  11. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.fluentbit.yml +14 -0
  12. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.kafka.yml +20 -0
  13. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.logstash.yml +14 -0
  14. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.mongodb.yml +17 -0
  15. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.postgres.yml +21 -0
  16. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.vault.yml +19 -0
  17. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.vector-agent.yml +13 -0
  18. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.vector-aggregator.yml +9 -0
  19. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/docker-compose.yml +31 -0
  20. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/fluentbit/fluent-bit.conf +24 -0
  21. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/fluentbit/parsers.conf +5 -0
  22. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/logstash/pipeline/logstash.conf +31 -0
  23. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/vault/config.hcl +10 -0
  24. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/vault/policies/app-policy.hcl +7 -0
  25. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/vector/vector-agent.toml +36 -0
  26. fastforge_cli-0.0.1/fastforge/infra_template/{{cookiecutter.project_slug}}-infrastructure/vector/vector-aggregator.toml +29 -0
  27. fastforge_cli-0.0.1/fastforge/template/cookiecutter.json +34 -0
  28. fastforge_cli-0.0.1/fastforge/template/hooks/post_gen_project.py +71 -0
  29. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/.codeclimate.yml +40 -0
  30. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/.dockerignore +15 -0
  31. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/.env.staging +86 -0
  32. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/.gitignore +15 -0
  33. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/.pre-commit-config.yaml +16 -0
  34. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/Dockerfile +30 -0
  35. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/README.md +254 -0
  36. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/__init__.py +0 -0
  37. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/api/__init__.py +0 -0
  38. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/api/exception_handlers.py +78 -0
  39. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/api/models/__init__.py +0 -0
  40. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/api/models/{{cookiecutter.model_name}}.py +22 -0
  41. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/api/routes/__init__.py +0 -0
  42. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/api/routes/health.py +20 -0
  43. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/api/routes/{{cookiecutter.model_name_plural}}.py +70 -0
  44. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/cache.py +63 -0
  45. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/config.py +112 -0
  46. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/db/__init__.py +0 -0
  47. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/db/models/__init__.py +0 -0
  48. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/db/models/{{cookiecutter.model_name}}.py +34 -0
  49. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/db/mongodb.py +23 -0
  50. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/db/sqlalchemy.py +14 -0
  51. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/dependencies.py +45 -0
  52. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/logging_config.py +84 -0
  53. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/main.py +106 -0
  54. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/middleware/__init__.py +0 -0
  55. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/middleware/logging_middleware.py +45 -0
  56. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/middleware/security_headers.py +18 -0
  57. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/repositories/__init__.py +0 -0
  58. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/repositories/{{cookiecutter.model_name}}_repository.py +172 -0
  59. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/secrets.py +101 -0
  60. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/services/__init__.py +0 -0
  61. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/services/{{cookiecutter.model_name}}_service.py +63 -0
  62. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/streaming/__init__.py +0 -0
  63. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/streaming/consumer.py +187 -0
  64. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/streaming/handler.py +31 -0
  65. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/app/streaming/producer.py +151 -0
  66. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/docker-compose.debug.yml +15 -0
  67. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/docker-compose.yml +141 -0
  68. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/pyproject.toml +100 -0
  69. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/qodana.yaml +22 -0
  70. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/sonar-project.properties +20 -0
  71. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/tests/__init__.py +0 -0
  72. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/tests/conftest.py +11 -0
  73. fastforge_cli-0.0.1/fastforge/template/{{cookiecutter.project_slug}}/tests/test_api.py +51 -0
  74. fastforge_cli-0.0.1/fastforge_cli.egg-info/PKG-INFO +163 -0
  75. fastforge_cli-0.0.1/fastforge_cli.egg-info/SOURCES.txt +79 -0
  76. fastforge_cli-0.0.1/fastforge_cli.egg-info/dependency_links.txt +1 -0
  77. fastforge_cli-0.0.1/fastforge_cli.egg-info/entry_points.txt +12 -0
  78. fastforge_cli-0.0.1/fastforge_cli.egg-info/requires.txt +3 -0
  79. fastforge_cli-0.0.1/fastforge_cli.egg-info/top_level.txt +1 -0
  80. fastforge_cli-0.0.1/pyproject.toml +58 -0
  81. fastforge_cli-0.0.1/setup.cfg +4 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Jinna Balu
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,163 @@
1
+ Metadata-Version: 2.4
2
+ Name: fastforge-cli
3
+ Version: 0.0.1
4
+ Summary: Production-grade FastAPI project generator for Python backends
5
+ Author-email: Jinna Balu <jinnabaalu@gmail.com>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/VibhuviOiO/fastforge-cli
8
+ Project-URL: Repository, https://github.com/VibhuviOiO/fastforge-cli
9
+ Project-URL: Issues, https://github.com/VibhuviOiO/fastforge-cli/issues
10
+ Project-URL: Documentation, https://github.com/VibhuviOiO/fastforge-cli#readme
11
+ Keywords: fastapi,cookiecutter,production,generator,scaffold,async,docker
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Environment :: Console
14
+ Classifier: Framework :: FastAPI
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: License :: OSI Approved :: MIT License
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Topic :: Software Development :: Code Generators
23
+ Requires-Python: >=3.10
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Requires-Dist: cookiecutter>=2.6.0
27
+ Requires-Dist: questionary>=2.0.0
28
+ Requires-Dist: rich>=13.0.0
29
+ Dynamic: license-file
30
+
31
+ # 🔨 FastForge
32
+
33
+ **Production-grade FastAPI project generator for Python backends.**
34
+
35
+ [![PyPI](https://img.shields.io/pypi/v/fastforge-cli)](https://pypi.org/project/fastforge-cli/)
36
+ [![Python](https://img.shields.io/pypi/pyversions/fastforge-cli)](https://pypi.org/project/fastforge-cli/)
37
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
38
+
39
+ FastForge generates a **ready-to-run, production-grade FastAPI project** with SOLID architecture, structured logging, Docker containerization, and async CRUD — all in under 30 seconds.
40
+
41
+ ## Quick Start
42
+
43
+ ```bash
44
+ pip install fastforge-cli
45
+ fastforge
46
+ ```
47
+
48
+ That's it. Answer a few prompts and you get a running application.
49
+
50
+ ## What You Get (Basic Mode)
51
+
52
+ | Feature | Implementation |
53
+ |---|---|
54
+ | **SOLID Architecture** | Repository pattern + Service layer + Dependency Injection |
55
+ | **Async CRUD API** | FastAPI with full Create/Read/Update/Delete |
56
+ | **Structured Logging** | structlog with JSON output, request IDs, duration tracking |
57
+ | **Docker** | Multi-stage Dockerfile, docker-compose, health checks |
58
+ | **Security** | Security headers middleware, CORS, non-root container |
59
+ | **Testing** | pytest + pytest-asyncio, 80%+ coverage out of the box |
60
+ | **Code Quality** | ruff linting, pre-commit hooks |
61
+
62
+ ## CLI Flow
63
+
64
+ ```
65
+ $ fastforge
66
+
67
+ ___ _ ___
68
+ | __| _ _ __| |_| __|__ _ _ __ _ ___
69
+ | _/ _` (_-< _| _/ _ \ '_/ _` / -_)
70
+ |_|\__,_/__/\__|_|\___/_| \__, \___|
71
+ |___/
72
+ Production-grade FastAPI Generator
73
+
74
+ ┌─ Choose your path ───────────────────────────────────┐
75
+ │ Basic mode → SOLID app, JSON logging, Docker, async │
76
+ │ Advanced → + Database, Cache, Streaming, Secrets │
77
+ └──────────────────────────────────────────────────────┘
78
+
79
+ ? Project name: order-service
80
+ ? Model name: order
81
+ ? Log output: Stdout
82
+ ? Include debug compose? No
83
+ ? Generate project? Yes
84
+
85
+ ✔ Project created: ./order-service
86
+ ```
87
+
88
+ ### Basic Mode (default)
89
+
90
+ Just 4-5 questions → production-ready app with structured logging, Docker, and CRUD.
91
+
92
+ ### Advanced Mode
93
+
94
+ Enable with "Enable advanced configuration?" → unlocks:
95
+
96
+ - **Database** — PostgreSQL, MySQL, SQLite (SQLAlchemy async), MongoDB (Motor)
97
+ - **Cache** — Redis, Memcached, In-memory (cachetools)
98
+ - **Streaming** — Kafka, RabbitMQ, Redis Pub/Sub, NATS (producer + consumer)
99
+ - **Secrets** — HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager
100
+ - **Quality Gate** — SonarQube, SonarCloud, Qodana, CodeClimate
101
+
102
+ ## Generated Project Structure
103
+
104
+ ```
105
+ your-service/
106
+ ├── app/
107
+ │ ├── main.py # App factory + lifespan
108
+ │ ├── config.py # pydantic-settings
109
+ │ ├── dependencies.py # DI wiring
110
+ │ ├── api/
111
+ │ │ ├── routes/
112
+ │ │ │ ├── health.py # Health + readiness
113
+ │ │ │ └── orders.py # CRUD routes
114
+ │ │ └── models/
115
+ │ │ └── order.py # Pydantic schemas
116
+ │ ├── services/
117
+ │ │ └── order_service.py # Business logic
118
+ │ ├── repositories/
119
+ │ │ └── order_repository.py # Data access (interface + impl)
120
+ │ └── middleware/
121
+ │ ├── security_headers.py
122
+ │ └── logging_middleware.py
123
+ ├── tests/
124
+ │ └── test_api.py
125
+ ├── Dockerfile
126
+ ├── docker-compose.yml
127
+ ├── pyproject.toml
128
+ └── .pre-commit-config.yaml
129
+ ```
130
+
131
+ ## Run Immediately
132
+
133
+ ```bash
134
+ cd your-service
135
+
136
+ # Option A: Docker
137
+ docker compose up --build
138
+
139
+ # Option B: Local
140
+ pip install -e ".[dev]"
141
+ uvicorn app.main:app --reload
142
+ pytest
143
+ ```
144
+
145
+ ## Extend Your Project
146
+
147
+ ```bash
148
+ fastforge-infra # Infrastructure (Kafka, Elasticsearch, Vault, DB)
149
+ fastforge-cicd # CI/CD pipeline
150
+ fastforge-secops # Security tools
151
+ fastforge-helm # Helm chart
152
+ fastforge-k8s # Kubernetes manifests
153
+ fastforge-observability # Tracing + Metrics
154
+ ```
155
+
156
+ ## Requirements
157
+
158
+ - Python 3.10+
159
+ - pip
160
+
161
+ ## License
162
+
163
+ MIT
@@ -0,0 +1,133 @@
1
+ # 🔨 FastForge
2
+
3
+ **Production-grade FastAPI project generator for Python backends.**
4
+
5
+ [![PyPI](https://img.shields.io/pypi/v/fastforge-cli)](https://pypi.org/project/fastforge-cli/)
6
+ [![Python](https://img.shields.io/pypi/pyversions/fastforge-cli)](https://pypi.org/project/fastforge-cli/)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
8
+
9
+ FastForge generates a **ready-to-run, production-grade FastAPI project** with SOLID architecture, structured logging, Docker containerization, and async CRUD — all in under 30 seconds.
10
+
11
+ ## Quick Start
12
+
13
+ ```bash
14
+ pip install fastforge-cli
15
+ fastforge
16
+ ```
17
+
18
+ That's it. Answer a few prompts and you get a running application.
19
+
20
+ ## What You Get (Basic Mode)
21
+
22
+ | Feature | Implementation |
23
+ |---|---|
24
+ | **SOLID Architecture** | Repository pattern + Service layer + Dependency Injection |
25
+ | **Async CRUD API** | FastAPI with full Create/Read/Update/Delete |
26
+ | **Structured Logging** | structlog with JSON output, request IDs, duration tracking |
27
+ | **Docker** | Multi-stage Dockerfile, docker-compose, health checks |
28
+ | **Security** | Security headers middleware, CORS, non-root container |
29
+ | **Testing** | pytest + pytest-asyncio, 80%+ coverage out of the box |
30
+ | **Code Quality** | ruff linting, pre-commit hooks |
31
+
32
+ ## CLI Flow
33
+
34
+ ```
35
+ $ fastforge
36
+
37
+ ___ _ ___
38
+ | __| _ _ __| |_| __|__ _ _ __ _ ___
39
+ | _/ _` (_-< _| _/ _ \ '_/ _` / -_)
40
+ |_|\__,_/__/\__|_|\___/_| \__, \___|
41
+ |___/
42
+ Production-grade FastAPI Generator
43
+
44
+ ┌─ Choose your path ───────────────────────────────────┐
45
+ │ Basic mode → SOLID app, JSON logging, Docker, async │
46
+ │ Advanced → + Database, Cache, Streaming, Secrets │
47
+ └──────────────────────────────────────────────────────┘
48
+
49
+ ? Project name: order-service
50
+ ? Model name: order
51
+ ? Log output: Stdout
52
+ ? Include debug compose? No
53
+ ? Generate project? Yes
54
+
55
+ ✔ Project created: ./order-service
56
+ ```
57
+
58
+ ### Basic Mode (default)
59
+
60
+ Just 4-5 questions → production-ready app with structured logging, Docker, and CRUD.
61
+
62
+ ### Advanced Mode
63
+
64
+ Enable with "Enable advanced configuration?" → unlocks:
65
+
66
+ - **Database** — PostgreSQL, MySQL, SQLite (SQLAlchemy async), MongoDB (Motor)
67
+ - **Cache** — Redis, Memcached, In-memory (cachetools)
68
+ - **Streaming** — Kafka, RabbitMQ, Redis Pub/Sub, NATS (producer + consumer)
69
+ - **Secrets** — HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager
70
+ - **Quality Gate** — SonarQube, SonarCloud, Qodana, CodeClimate
71
+
72
+ ## Generated Project Structure
73
+
74
+ ```
75
+ your-service/
76
+ ├── app/
77
+ │ ├── main.py # App factory + lifespan
78
+ │ ├── config.py # pydantic-settings
79
+ │ ├── dependencies.py # DI wiring
80
+ │ ├── api/
81
+ │ │ ├── routes/
82
+ │ │ │ ├── health.py # Health + readiness
83
+ │ │ │ └── orders.py # CRUD routes
84
+ │ │ └── models/
85
+ │ │ └── order.py # Pydantic schemas
86
+ │ ├── services/
87
+ │ │ └── order_service.py # Business logic
88
+ │ ├── repositories/
89
+ │ │ └── order_repository.py # Data access (interface + impl)
90
+ │ └── middleware/
91
+ │ ├── security_headers.py
92
+ │ └── logging_middleware.py
93
+ ├── tests/
94
+ │ └── test_api.py
95
+ ├── Dockerfile
96
+ ├── docker-compose.yml
97
+ ├── pyproject.toml
98
+ └── .pre-commit-config.yaml
99
+ ```
100
+
101
+ ## Run Immediately
102
+
103
+ ```bash
104
+ cd your-service
105
+
106
+ # Option A: Docker
107
+ docker compose up --build
108
+
109
+ # Option B: Local
110
+ pip install -e ".[dev]"
111
+ uvicorn app.main:app --reload
112
+ pytest
113
+ ```
114
+
115
+ ## Extend Your Project
116
+
117
+ ```bash
118
+ fastforge-infra # Infrastructure (Kafka, Elasticsearch, Vault, DB)
119
+ fastforge-cicd # CI/CD pipeline
120
+ fastforge-secops # Security tools
121
+ fastforge-helm # Helm chart
122
+ fastforge-k8s # Kubernetes manifests
123
+ fastforge-observability # Tracing + Metrics
124
+ ```
125
+
126
+ ## Requirements
127
+
128
+ - Python 3.10+
129
+ - pip
130
+
131
+ ## License
132
+
133
+ MIT
@@ -0,0 +1 @@
1
+ __version__ = "1.0.0"