fastapi-spawn 0.1.0__py3-none-any.whl

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 (50) hide show
  1. fastapi_spawn/__init__.py +6 -0
  2. fastapi_spawn/cli.py +387 -0
  3. fastapi_spawn/config.py +162 -0
  4. fastapi_spawn/constants.py +133 -0
  5. fastapi_spawn/generator.py +294 -0
  6. fastapi_spawn/interactive.py +192 -0
  7. fastapi_spawn/templates/alembic/alembic.ini.j2 +39 -0
  8. fastapi_spawn/templates/alembic/env.py.j2 +64 -0
  9. fastapi_spawn/templates/app/__init__.py.j2 +1 -0
  10. fastapi_spawn/templates/app/api/deps.py.j2 +39 -0
  11. fastapi_spawn/templates/app/api/v1/auth.py.j2 +59 -0
  12. fastapi_spawn/templates/app/api/v1/health.py.j2 +40 -0
  13. fastapi_spawn/templates/app/core/ai.py.j2 +76 -0
  14. fastapi_spawn/templates/app/core/config.py.j2 +177 -0
  15. fastapi_spawn/templates/app/core/exceptions.py.j2 +43 -0
  16. fastapi_spawn/templates/app/core/logging.py.j2 +70 -0
  17. fastapi_spawn/templates/app/core/security.py.j2 +42 -0
  18. fastapi_spawn/templates/app/core/storage.py.j2 +73 -0
  19. fastapi_spawn/templates/app/db/session.py.j2 +84 -0
  20. fastapi_spawn/templates/app/main.py.j2 +71 -0
  21. fastapi_spawn/templates/base/Makefile.j2 +45 -0
  22. fastapi_spawn/templates/base/README.md.j2 +74 -0
  23. fastapi_spawn/templates/base/env.j2 +82 -0
  24. fastapi_spawn/templates/base/env_example.j2 +85 -0
  25. fastapi_spawn/templates/base/gitignore.j2 +38 -0
  26. fastapi_spawn/templates/base/pre_commit.j2 +17 -0
  27. fastapi_spawn/templates/base/pyproject.toml.j2 +129 -0
  28. fastapi_spawn/templates/ci/github/publish.yml.j2 +32 -0
  29. fastapi_spawn/templates/ci/github/tests.yml.j2 +39 -0
  30. fastapi_spawn/templates/ci/gitlab/gitlab-ci.yml.j2 +29 -0
  31. fastapi_spawn/templates/docker/Dockerfile.j2 +17 -0
  32. fastapi_spawn/templates/docker/docker-compose.yml.j2 +97 -0
  33. fastapi_spawn/templates/docker/dockerignore.j2 +13 -0
  34. fastapi_spawn/templates/infra/docker/docker-compose.prod.yml.j2 +43 -0
  35. fastapi_spawn/templates/infra/helm/Chart.yaml.j2 +6 -0
  36. fastapi_spawn/templates/infra/helm/values.yaml.j2 +26 -0
  37. fastapi_spawn/templates/infra/terraform/main.tf.j2 +26 -0
  38. fastapi_spawn/templates/infra/terraform/variables.tf.j2 +17 -0
  39. fastapi_spawn/templates/root/main.py.j2 +16 -0
  40. fastapi_spawn/templates/tasks/celery_app.py.j2 +37 -0
  41. fastapi_spawn/templates/tasks/sample_tasks.py.j2 +27 -0
  42. fastapi_spawn/templates/tests/conftest.py.j2 +22 -0
  43. fastapi_spawn/templates/tests/test_health.py.j2 +30 -0
  44. fastapi_spawn/utils.py +58 -0
  45. fastapi_spawn/validators.py +67 -0
  46. fastapi_spawn-0.1.0.dist-info/METADATA +262 -0
  47. fastapi_spawn-0.1.0.dist-info/RECORD +50 -0
  48. fastapi_spawn-0.1.0.dist-info/WHEEL +4 -0
  49. fastapi_spawn-0.1.0.dist-info/entry_points.txt +2 -0
  50. fastapi_spawn-0.1.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,50 @@
1
+ fastapi_spawn/__init__.py,sha256=Dw8BmX5nGy9OM_zdJ1XA7Nnv3z5R9xg-qyKlsOyfaT4,187
2
+ fastapi_spawn/cli.py,sha256=UADC1XoKUsTswXzmnQIeM5B12b9CsDBUsEk8AlkuVR0,15915
3
+ fastapi_spawn/config.py,sha256=mNAdlpbqKUOZSLqSL74mPM8B3scZoaCrtm1IneIRzfY,5198
4
+ fastapi_spawn/constants.py,sha256=1GKRQpPSeMTqiXZCDjKZ69zk5e2a_QprJP49u_oYzOA,2942
5
+ fastapi_spawn/generator.py,sha256=uaJ6N2CdIeOBm_md1C1W3OJT6_zEE7Q355JUvuor3d8,12596
6
+ fastapi_spawn/interactive.py,sha256=7fqfjhJmuIXLoKW-j1SZdLrIZYpS8bisyuoUDRh9t_w,4779
7
+ fastapi_spawn/utils.py,sha256=x8XUhdqoANEiToqfo7ULEfmjkOaUWKjhqG_-8tIZy70,1804
8
+ fastapi_spawn/validators.py,sha256=Kt9EbzXUGpW6tpmvu5E-ziWuouJgSS6PXor1k5X1Dzg,2152
9
+ fastapi_spawn/templates/alembic/alembic.ini.j2,sha256=2DNwNbvbMSSMZNn6L-OUcMFYhsGPSY-zFLANgg9Cr4s,583
10
+ fastapi_spawn/templates/alembic/env.py.j2,sha256=3DDB0385WnZt_UaFsSjLaIRWHegZxHRnCRHVvIiKMsM,1725
11
+ fastapi_spawn/templates/app/__init__.py.j2,sha256=we86qAszIKdNgbB7_nq8gInSu4c-UrV0vFb-cEIiZFE,24
12
+ fastapi_spawn/templates/app/main.py.j2,sha256=QBmrND43eSOTb-_xhvYRBpeZQYYvQ69f_mRUbq0nUD4,2005
13
+ fastapi_spawn/templates/app/api/deps.py.j2,sha256=mZ8wfPYgH2Ug1Ifmdi0vBJurfRxoN202GfWwq9gY_w4,1090
14
+ fastapi_spawn/templates/app/api/v1/auth.py.j2,sha256=oed_Dih50D5JTpNRw6ghGq6OQQfDoUuG2h9EPXLKH7s,2019
15
+ fastapi_spawn/templates/app/api/v1/health.py.j2,sha256=WWXIqPwk6QFVcg8ygm-c46BHwMxx7LAxVU_wXUaP3go,1044
16
+ fastapi_spawn/templates/app/core/ai.py.j2,sha256=ueDroN84biK6fzLqfwE_6SoDumC4b67kEFw3sQZo4y0,2088
17
+ fastapi_spawn/templates/app/core/config.py.j2,sha256=8CYKCiJxRBrg7W7xVBvz1DdqpDftY9hjndHJET_-jdk,7297
18
+ fastapi_spawn/templates/app/core/exceptions.py.j2,sha256=GxWztfJnnR23GI6zOAQm1WmowyYDorWz2LL3-ehKnA8,1482
19
+ fastapi_spawn/templates/app/core/logging.py.j2,sha256=WaqLXrksKvJiI0mmmyoaJK9yCrOHSJpQkPXmqwxbnCY,2418
20
+ fastapi_spawn/templates/app/core/security.py.j2,sha256=N9YXcTNkP0UECtc-ywGbZmltblaJrELKv4qF_Hp7GlY,1490
21
+ fastapi_spawn/templates/app/core/storage.py.j2,sha256=-e2wIDXZej_M7RwOUEsPURqCfTa7GUNRoxSg-j10zNw,2286
22
+ fastapi_spawn/templates/app/db/session.py.j2,sha256=pnQLAVBeW5WzmiHIxkma0gzLRHmU9hIEFeH-we-mdIQ,2091
23
+ fastapi_spawn/templates/base/Makefile.j2,sha256=_iB1lgC7Z8oKU0z-rSWGLvqq8SViARhCMrOFeiBqDcU,1118
24
+ fastapi_spawn/templates/base/README.md.j2,sha256=8g4McNT1657Fvw-GeMaF7zuLw5YlfVKwmbWVX_P3aUQ,1747
25
+ fastapi_spawn/templates/base/env.j2,sha256=gucJi_60JlnTUVBTagV2m4GY-vOAnmmUDzeHvTDRC3g,1812
26
+ fastapi_spawn/templates/base/env_example.j2,sha256=7VbaStGY16gcvyGxLeTsiwnfz-U7Nuy5zhzzB_6Wua4,1850
27
+ fastapi_spawn/templates/base/gitignore.j2,sha256=oMMeFsPpnqNqxx-_wA_RtzF7vPHzNA-9zqUO7e4-g28,297
28
+ fastapi_spawn/templates/base/pre_commit.j2,sha256=m1lqSCDMJGY9Qsu7K8fG1CnQXZ3MZBAZdyvfeR7nzIk,409
29
+ fastapi_spawn/templates/base/pyproject.toml.j2,sha256=RokAzoIT_EhizFCruwYJaGEpk14tSeiGFZb7IvbtReI,3345
30
+ fastapi_spawn/templates/ci/github/publish.yml.j2,sha256=q0pWizLreJFDHrSKVaA0xwf-8Kqnr5zaFSQK178ends,754
31
+ fastapi_spawn/templates/ci/github/tests.yml.j2,sha256=bgoRuFMeZ7Hqfv6Bw7AoTHpwNxtP2i4AkvY7INQnzrQ,842
32
+ fastapi_spawn/templates/ci/gitlab/gitlab-ci.yml.j2,sha256=aAhD7_6fj80QaH5twsTbNHRDUyZP0GxfLBbzFD6so4Y,514
33
+ fastapi_spawn/templates/docker/Dockerfile.j2,sha256=pJD-9p4BWDcD7XBixU355sYjKafWsOIqrHFwhya2u48,272
34
+ fastapi_spawn/templates/docker/docker-compose.yml.j2,sha256=EugpYdKjF7jnp4X4U23x0x5qYVAjzWPdMSKzN8XWfdY,1956
35
+ fastapi_spawn/templates/docker/dockerignore.j2,sha256=gtAKm9eG9IjAvOADGbTJrv_StwWJsrsSRUAB_bIz4pE,130
36
+ fastapi_spawn/templates/infra/docker/docker-compose.prod.yml.j2,sha256=j4mU3z3uDUWXLtKSBtEOjVuH4D7iqfpBYoWoTH447js,1012
37
+ fastapi_spawn/templates/infra/helm/Chart.yaml.j2,sha256=qhiUBr-tDnHdSk3GLZp8CBPmVW24QIdS3utjnURF0Gk,132
38
+ fastapi_spawn/templates/infra/helm/values.yaml.j2,sha256=ZXUMLNA7w5S_qxux2DswszjAy4dW5T70Y0M9wujsWl0,357
39
+ fastapi_spawn/templates/infra/terraform/main.tf.j2,sha256=FMUU2w_nRwM_BtsNtX79HU0dNZds_YY3Pbfuht3Hc_8,437
40
+ fastapi_spawn/templates/infra/terraform/variables.tf.j2,sha256=7bQ1dcHWr7602ieifFB0obhCpciZJZIm7cx___nCTpo,354
41
+ fastapi_spawn/templates/root/main.py.j2,sha256=2c2kGn4HrdvPaoOeHIoq7uDpGztuUbEb2fuoFGmxyiY,292
42
+ fastapi_spawn/templates/tasks/celery_app.py.j2,sha256=vsnAmuIT2YQabnXGVZ5lKVicicM_HjIiHg2xQUb2GF8,805
43
+ fastapi_spawn/templates/tasks/sample_tasks.py.j2,sha256=FTEuvy__OH-wFX1GgXjmT7B--ytUjpRPR7hzEItcTK8,862
44
+ fastapi_spawn/templates/tests/conftest.py.j2,sha256=12e-TKcCmEwUH1bhrcGuT2dFP1eHPt85SPgAdCN9RKw,485
45
+ fastapi_spawn/templates/tests/test_health.py.j2,sha256=MkkKq6uVfAM6Ga9eIKmmqnrm2_ib-YA66xKlVwv4Isg,894
46
+ fastapi_spawn-0.1.0.dist-info/METADATA,sha256=mTivl2QRfduI8R2REpIRTKw71CgYZQtPqmA1AT9hD3Y,8576
47
+ fastapi_spawn-0.1.0.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87
48
+ fastapi_spawn-0.1.0.dist-info/entry_points.txt,sha256=BPvEnq3wBulqLkmzKRQJI9ZJ3fhBFjBhD0ivYdgEouU,56
49
+ fastapi_spawn-0.1.0.dist-info/licenses/LICENSE,sha256=Uexs7Ku84bGk_mb8CvUbFpM5trVxN3nWjjpMAzKRuo0,1072
50
+ fastapi_spawn-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.29.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ fastapi-spawn = fastapi_spawn.cli:app
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Bishwajit Garai
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.