falco-cli 0.2.2__tar.gz → 0.2.4__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 (158) hide show
  1. {falco_cli-0.2.2 → falco_cli-0.2.4}/.all-contributorsrc +18 -0
  2. {falco_cli-0.2.2 → falco_cli-0.2.4}/.github/workflows/documentation.yml +2 -0
  3. {falco_cli-0.2.2 → falco_cli-0.2.4}/PKG-INFO +5 -9
  4. {falco_cli-0.2.2 → falco_cli-0.2.4}/README.md +4 -8
  5. falco_cli-0.2.4/docs/_static/custom.css +8 -0
  6. falco_cli-0.2.4/docs/changelog.rst +9 -0
  7. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/conf.py +13 -6
  8. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/contributing.rst +4 -5
  9. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/deployment.rst +10 -0
  10. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/index.rst +26 -14
  11. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/task_queues_and_schedulers.rst +1 -1
  12. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/tips_and_extra.rst +1 -1
  13. falco_cli-0.2.4/docs/index.rst +130 -0
  14. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/install.rst +6 -3
  15. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/the_cli/crud.rst +9 -9
  16. falco_cli-0.2.4/docs/the_cli/index.rst +36 -0
  17. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/the_cli/migrations.rst +7 -7
  18. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/the_cli/start_project.rst +56 -6
  19. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/the_cli/sync_dotenv.rst +4 -5
  20. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/the_cli/work.rst +1 -7
  21. {falco_cli-0.2.2 → falco_cli-0.2.4}/pyproject.toml +2 -0
  22. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/__about__.py +1 -1
  23. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/start_project.py +11 -1
  24. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/work.py +1 -20
  25. falco_cli-0.2.4/src/falco_blueprints/project_name/.pre-commit-config.yaml +72 -0
  26. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/README.md +3 -0
  27. falco_cli-0.2.4/src/falco_blueprints/project_name/project_name/templates/base.html +27 -0
  28. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/templates/home.html +3 -2
  29. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/users/migrations/0001_initial.py +7 -32
  30. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/users/models.py +1 -1
  31. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/pyproject.toml +55 -63
  32. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_start_project.py +12 -0
  33. falco_cli-0.2.2/docs/index.rst +0 -49
  34. falco_cli-0.2.2/docs/the_cli/index.rst +0 -32
  35. falco_cli-0.2.2/src/falco_blueprints/project_name/.pre-commit-config.yaml +0 -68
  36. falco_cli-0.2.2/src/falco_blueprints/project_name/project_name/templates/base.html +0 -24
  37. {falco_cli-0.2.2 → falco_cli-0.2.4}/.github/dependabot.yml +0 -0
  38. {falco_cli-0.2.2 → falco_cli-0.2.4}/.github/workflows/ci.yml +0 -0
  39. {falco_cli-0.2.2 → falco_cli-0.2.4}/.github/workflows/pre-commit-auto-update.yml +0 -0
  40. {falco_cli-0.2.2 → falco_cli-0.2.4}/.gitignore +0 -0
  41. {falco_cli-0.2.2 → falco_cli-0.2.4}/.pre-commit-config.yaml +0 -0
  42. {falco_cli-0.2.2 → falco_cli-0.2.4}/.vscode/settings.json +0 -0
  43. {falco_cli-0.2.2 → falco_cli-0.2.4}/CODE_OF_CONDUCT.md +0 -0
  44. {falco_cli-0.2.2 → falco_cli-0.2.4}/LICENSE +0 -0
  45. {falco_cli-0.2.2 → falco_cli-0.2.4}/all-contributorsrc +0 -0
  46. {falco_cli-0.2.2 → falco_cli-0.2.4}/assets/falco-logo.svg +0 -0
  47. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/config/__init__.py +0 -0
  48. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/config/asgi.py +0 -0
  49. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/config/settings.py +0 -0
  50. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/config/urls.py +0 -0
  51. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/config/wsgi.py +0 -0
  52. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/__init__.py +0 -0
  53. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/core/__init__.py +0 -0
  54. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/core/apps.py +0 -0
  55. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/core/utils.py +0 -0
  56. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/orders/__init__.py +0 -0
  57. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/orders/admin.py +0 -0
  58. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/orders/apps.py +0 -0
  59. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/orders/migrations/0001_initial.py +0 -0
  60. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/orders/migrations/__init__.py +0 -0
  61. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/orders/models.py +0 -0
  62. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/__init__.py +0 -0
  63. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/admin.py +0 -0
  64. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/apps.py +0 -0
  65. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/forms.py +0 -0
  66. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/migrations/0001_initial.py +0 -0
  67. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/migrations/__init__.py +0 -0
  68. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/models.py +0 -0
  69. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/tests.py +0 -0
  70. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/urls.py +0 -0
  71. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/demo/products/views.py +0 -0
  72. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/manage.py +0 -0
  73. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/requirements.txt +0 -0
  74. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/templates/base.html +0 -0
  75. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/templates/products/product_create.html +0 -0
  76. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/templates/products/product_detail.html +0 -0
  77. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/templates/products/product_list.html +0 -0
  78. {falco_cli-0.2.2 → falco_cli-0.2.4}/demo/templates/products/product_update.html +0 -0
  79. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/.rich-codex.yml +0 -0
  80. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/Makefile +0 -0
  81. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/_templates/partials/globaltoc-above.html +0 -0
  82. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/codeofconduct.rst +0 -0
  83. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/avoiding_god_models.rst +0 -0
  84. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/database_tips.rst +0 -0
  85. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/dynamic_model_schema.rst +0 -0
  86. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/interactive_user_interfaces.rst +0 -0
  87. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/logging_and_monitoring.rst +0 -0
  88. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/multitenancy.rst +0 -0
  89. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/optimizing_database_access.rst +0 -0
  90. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/permissions_and_authorization.rst +0 -0
  91. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/realtime.rst +0 -0
  92. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/running_project_in_a_container.rst +0 -0
  93. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/use_sqlite_in_production.rst +0 -0
  94. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/writing_async_code.rst +0 -0
  95. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/writing_documentation.rst +0 -0
  96. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/guides/writing_tests.rst +0 -0
  97. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/images/logo_with_text.svg +0 -0
  98. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/images/project-tree.svg +0 -0
  99. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/license.rst +0 -0
  100. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/make.bat +0 -0
  101. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/the_cli/htmx.rst +0 -0
  102. {falco_cli-0.2.2 → falco_cli-0.2.4}/docs/the_cli/make_superuser.rst +0 -0
  103. {falco_cli-0.2.2 → falco_cli-0.2.4}/scripts/make_blueprints_from_demo.py +0 -0
  104. {falco_cli-0.2.2 → falco_cli-0.2.4}/scripts/update_readme_guides.py +0 -0
  105. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/__init__.py +0 -0
  106. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/__main__.py +0 -0
  107. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/__init__.py +0 -0
  108. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/htmx.py +0 -0
  109. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/htmx_extension.py +0 -0
  110. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/install_crud_utils.py +0 -0
  111. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/make_superuser.py +0 -0
  112. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/model_crud.py +0 -0
  113. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/reset_migrations.py +0 -0
  114. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/rm_migrations.py +0 -0
  115. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/commands/sync_dotenv.py +0 -0
  116. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco/utils.py +0 -0
  117. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/crud/create.html +0 -0
  118. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/crud/detail.html +0 -0
  119. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/crud/forms.py.bp +0 -0
  120. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/crud/list.html +0 -0
  121. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/crud/update.html +0 -0
  122. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/crud/utils.py +0 -0
  123. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/crud/views.py.bp +0 -0
  124. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/.env.template +0 -0
  125. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/.github/dependabot.yml +0 -0
  126. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/.github/workflows/ci.yml +0 -0
  127. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/.gitignore +0 -0
  128. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/config/__init__.py +0 -0
  129. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/config/asgi.py +0 -0
  130. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/config/settings.py +0 -0
  131. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/config/urls.py +0 -0
  132. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/config/wsgi.py +0 -0
  133. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/deploy/Dockerfile +0 -0
  134. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/deploy/entrypoint.sh +0 -0
  135. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/deploy/gunicorn.conf.py +0 -0
  136. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/manage.py +0 -0
  137. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/playground.ipynb +0 -0
  138. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/__init__.py +0 -0
  139. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/core/__init__.py +0 -0
  140. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/core/apps.py +0 -0
  141. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/static/vendors/htmx/htmx.min.js +0 -0
  142. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/users/__init__.py +0 -0
  143. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/users/admin.py +0 -0
  144. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/users/apps.py +0 -0
  145. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/users/forms.py +0 -0
  146. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/project_name/users/migrations/__init__.py +0 -0
  147. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/tests/__init__.py +0 -0
  148. {falco_cli-0.2.2 → falco_cli-0.2.4}/src/falco_blueprints/project_name/tests/test_assert_true.py +0 -0
  149. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/__init__.py +0 -0
  150. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_crud.py +0 -0
  151. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_htmx.py +0 -0
  152. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_htmx_extension.py +0 -0
  153. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_install_crud_utils.py +0 -0
  154. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_make_superuser.py +0 -0
  155. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_reset_migrations.py +0 -0
  156. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_rm_migrations.py +0 -0
  157. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/commands/test_sync_dotenv.py +0 -0
  158. {falco_cli-0.2.2 → falco_cli-0.2.4}/tests/conftest.py +0 -0
@@ -35,6 +35,24 @@
35
35
  "contributions": [
36
36
  "code"
37
37
  ]
38
+ },
39
+ {
40
+ "login": "shearichard",
41
+ "name": "Richard Shea",
42
+ "avatar_url": "https://avatars.githubusercontent.com/u/403435?v=4",
43
+ "profile": "http://mainlydata.kubadev.com",
44
+ "contributions": [
45
+ "doc"
46
+ ]
47
+ },
48
+ {
49
+ "login": "786raees",
50
+ "name": "Waqar Khan",
51
+ "avatar_url": "https://avatars.githubusercontent.com/u/96701299?v=4",
52
+ "profile": "https://lexumsoft.com/",
53
+ "contributions": [
54
+ "code"
55
+ ]
38
56
  }
39
57
  ],
40
58
  "contributorsPerLine": 7,
@@ -15,6 +15,8 @@ jobs:
15
15
  run: |
16
16
  pip install hatch
17
17
  - name: Sphinx build
18
+ env:
19
+ SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.GITHUB_TOKEN }}
18
20
  run: |
19
21
  hatch run docs:sphinx-build docs _build
20
22
  - name: Deploy to GitHub Pages
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: falco-cli
3
- Version: 0.2.2
3
+ Version: 0.2.4
4
4
  Summary: Enhance your Django developer experience: CLI and Guides for the Modern Developer.
5
5
  Project-URL: Homepage, https://falco.oluwatobi.dev/
6
6
  Project-URL: Documentation, https://falco.oluwatobi.dev/
@@ -55,17 +55,12 @@ Description-Content-Type: text/markdown
55
55
  [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/Tobi-De/falco/blob/main/LICENSE)
56
56
  ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/falco-cli)
57
57
  ![PyPI - Versions from Framework Classifiers](https://img.shields.io/pypi/frameworkversions/django/falco-cli)
58
+ ![PyPI - Downloads](https://img.shields.io/pypi/dm/falco-cli)
58
59
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
59
- [![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors-)
60
+ [![All Contributors](https://img.shields.io/badge/all_contributors-5-orange.svg?style=flat-square)](#contributors-)
60
61
  <!-- ALL-CONTRIBUTORS-BADGE:END -->
61
62
 
62
63
 
63
-
64
- > [!WARNING]
65
- > This is a work in progress (WIP), this is also [fuzzy-couscous](https://github.com/Tobi-De/fuzzy-couscous) new cooler brother.
66
-
67
- <!-- start-docs -->
68
-
69
64
  Falco is a Django-centric toolkit designed to enhance the development experience. The CLI offers commands for initiating new projects, generating simple CRUD views for rapid prototyping, and more. Additionally, it provides a collection of guides to address common issues in web development specifically tailored to Django.
70
65
 
71
66
  <!-- [![Read the full documentation](https://img.shields.io/badge/Read%20The%20full%20Documentation-blue?style=for-the-badge&logo=ReadTheDocs)](https://falco.oluwatobi.dev) -->
@@ -146,6 +141,8 @@ Falco is inspired by (and borrows elements from) some excellent open source proj
146
141
  <td align="center" valign="top" width="14.28%"><a href="http://oluwatobi.dev"><img src="https://avatars.githubusercontent.com/u/40334729?v=4?s=100" width="100px;" alt="Tobi DEGNON"/><br /><sub><b>Tobi DEGNON</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=Tobi-De" title="Code">💻</a> <a href="https://github.com/Tobi-De/falco/commits?author=Tobi-De" title="Documentation">📖</a> <a href="https://github.com/Tobi-De/falco/commits?author=Tobi-De" title="Tests">⚠️</a></td>
147
142
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/hammadarshad1"><img src="https://avatars.githubusercontent.com/u/45298916?v=4?s=100" width="100px;" alt="Muhammad Hammad"/><br /><sub><b>Muhammad Hammad</b></sub></a><br /><a href="#ideas-hammadarshad1" title="Ideas, Planning, & Feedback">🤔</a></td>
148
143
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/mathiasag7"><img src="https://avatars.githubusercontent.com/u/50689712?v=4?s=100" width="100px;" alt="mathiasag7"/><br /><sub><b>mathiasag7</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=mathiasag7" title="Code">💻</a></td>
144
+ <td align="center" valign="top" width="14.28%"><a href="http://mainlydata.kubadev.com"><img src="https://avatars.githubusercontent.com/u/403435?v=4?s=100" width="100px;" alt="Richard Shea"/><br /><sub><b>Richard Shea</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=shearichard" title="Documentation">📖</a></td>
145
+ <td align="center" valign="top" width="14.28%"><a href="https://lexumsoft.com/"><img src="https://avatars.githubusercontent.com/u/96701299?v=4?s=100" width="100px;" alt="Waqar Khan"/><br /><sub><b>Waqar Khan</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=786raees" title="Code">💻</a></td>
149
146
  </tr>
150
147
  </tbody>
151
148
  </table>
@@ -162,4 +159,3 @@ Falco is inspired by (and borrows elements from) some excellent open source proj
162
159
 
163
160
  <!-- ALL-CONTRIBUTORS-LIST:END -->
164
161
 
165
- <!-- end-docs -->
@@ -15,17 +15,12 @@
15
15
  [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/Tobi-De/falco/blob/main/LICENSE)
16
16
  ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/falco-cli)
17
17
  ![PyPI - Versions from Framework Classifiers](https://img.shields.io/pypi/frameworkversions/django/falco-cli)
18
+ ![PyPI - Downloads](https://img.shields.io/pypi/dm/falco-cli)
18
19
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
19
- [![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors-)
20
+ [![All Contributors](https://img.shields.io/badge/all_contributors-5-orange.svg?style=flat-square)](#contributors-)
20
21
  <!-- ALL-CONTRIBUTORS-BADGE:END -->
21
22
 
22
23
 
23
-
24
- > [!WARNING]
25
- > This is a work in progress (WIP), this is also [fuzzy-couscous](https://github.com/Tobi-De/fuzzy-couscous) new cooler brother.
26
-
27
- <!-- start-docs -->
28
-
29
24
  Falco is a Django-centric toolkit designed to enhance the development experience. The CLI offers commands for initiating new projects, generating simple CRUD views for rapid prototyping, and more. Additionally, it provides a collection of guides to address common issues in web development specifically tailored to Django.
30
25
 
31
26
  <!-- [![Read the full documentation](https://img.shields.io/badge/Read%20The%20full%20Documentation-blue?style=for-the-badge&logo=ReadTheDocs)](https://falco.oluwatobi.dev) -->
@@ -106,6 +101,8 @@ Falco is inspired by (and borrows elements from) some excellent open source proj
106
101
  <td align="center" valign="top" width="14.28%"><a href="http://oluwatobi.dev"><img src="https://avatars.githubusercontent.com/u/40334729?v=4?s=100" width="100px;" alt="Tobi DEGNON"/><br /><sub><b>Tobi DEGNON</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=Tobi-De" title="Code">💻</a> <a href="https://github.com/Tobi-De/falco/commits?author=Tobi-De" title="Documentation">📖</a> <a href="https://github.com/Tobi-De/falco/commits?author=Tobi-De" title="Tests">⚠️</a></td>
107
102
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/hammadarshad1"><img src="https://avatars.githubusercontent.com/u/45298916?v=4?s=100" width="100px;" alt="Muhammad Hammad"/><br /><sub><b>Muhammad Hammad</b></sub></a><br /><a href="#ideas-hammadarshad1" title="Ideas, Planning, & Feedback">🤔</a></td>
108
103
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/mathiasag7"><img src="https://avatars.githubusercontent.com/u/50689712?v=4?s=100" width="100px;" alt="mathiasag7"/><br /><sub><b>mathiasag7</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=mathiasag7" title="Code">💻</a></td>
104
+ <td align="center" valign="top" width="14.28%"><a href="http://mainlydata.kubadev.com"><img src="https://avatars.githubusercontent.com/u/403435?v=4?s=100" width="100px;" alt="Richard Shea"/><br /><sub><b>Richard Shea</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=shearichard" title="Documentation">📖</a></td>
105
+ <td align="center" valign="top" width="14.28%"><a href="https://lexumsoft.com/"><img src="https://avatars.githubusercontent.com/u/96701299?v=4?s=100" width="100px;" alt="Waqar Khan"/><br /><sub><b>Waqar Khan</b></sub></a><br /><a href="https://github.com/Tobi-De/falco/commits?author=786raees" title="Code">💻</a></td>
109
106
  </tr>
110
107
  </tbody>
111
108
  </table>
@@ -122,4 +119,3 @@ Falco is inspired by (and borrows elements from) some excellent open source proj
122
119
 
123
120
  <!-- ALL-CONTRIBUTORS-LIST:END -->
124
121
 
125
- <!-- end-docs -->
@@ -0,0 +1,8 @@
1
+ html.light {
2
+ --yue-c-code-text: var(--yue-c-text);
3
+ }
4
+
5
+ html.dark {
6
+ --yue-c-code-text: var(--yue-c-text);
7
+ }
8
+
@@ -0,0 +1,9 @@
1
+ :description: falco release history
2
+
3
+ Changelog
4
+ =========
5
+
6
+ .. changelog::
7
+ :changelog-url: https://github.com/Tobi-De/falco/releases
8
+ :github: https://github.com/Tobi-De/falco/releases
9
+ :pypi: https://pypi.org/project/falco-cli/
@@ -18,6 +18,7 @@ release = version
18
18
  # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
19
19
 
20
20
  extensions = [
21
+ "sphinx.ext.extlinks",
21
22
  "myst_parser",
22
23
  "sphinx_design",
23
24
  "sphinx_tabs.tabs",
@@ -25,10 +26,13 @@ extensions = [
25
26
  "sphinx_togglebutton",
26
27
  "sphinx_autorun",
27
28
  "cappa.ext.docutils",
29
+ "sphinx_github_changelog",
30
+ "sphinxcontrib.mermaid",
28
31
  ]
29
32
  extlinks = {
30
33
  "pull": ("https://github.com/tobi-de/falco/pull/%s", "pull request #%s"),
31
34
  "issue": ("https://github.com/tobi-de/falco/issues/%s", "issue #%s"),
35
+ "repo": ("https://github.com/tobi-de/falco", "github repository"),
32
36
  }
33
37
 
34
38
  templates_path = ["_templates"]
@@ -52,12 +56,15 @@ html_theme_options = {
52
56
  "mastodon_url": "https://fosstodon.org/@tobide",
53
57
  "github_url": "https://github.com/tobi-de/falco",
54
58
  "twitter_url": "https://twitter.com/tobidegnon",
55
- "light_css_variables": {
56
- "--sy-rc-theme": "77, 210, 255",
57
- },
58
- "dark_css_variables": {
59
- "--sy-rc-theme": "0, 153, 204",
60
- },
59
+ "accent_color": "sky",
60
+ "globaltoc_expand_depth": 1,
61
61
  }
62
62
  html_logo = "images/logo_with_text.svg"
63
63
  html_favicon = "../assets/falco-logo.svg"
64
+ html_css_files = [
65
+ "custom.css",
66
+ ]
67
+
68
+ # -- Mermaid configuration -----------------------------------------------------
69
+ mermaid_version = "10.6.1"
70
+ mermaid_output_format = "svg"
@@ -111,11 +111,10 @@ Pull Request Guidelines
111
111
  Before you submit a pull request, check that it meets these guidelines:
112
112
 
113
113
  1. The pull request should include tests.
114
- 2. If the pull request adds functionality, the docs should be updated. Put
115
- your new functionality into a function with a docstring, and add the
116
- feature to the list in README.rst.
117
- 3. The pull request should work for Python 3.5, 3.6, 3.7 and 3.8, and for PyPy. Check
118
- https://travis-ci.com/Tobi-De/falco/pull_requests
114
+ 2. If the pull request adds functionality, the docs should be updated. Add the
115
+ feature to the list in README.md.
116
+ 3. The pull request should work for Python 3.10, 3.11 and 3.12. Check
117
+ https://github.com/Tobi-De/falco/pulls
119
118
  and make sure that the tests pass for all supported Python versions.
120
119
 
121
120
  Tips
@@ -3,6 +3,7 @@
3
3
  Deploy your project
4
4
  ===================
5
5
 
6
+ https://www.youtube.com/watch?v=t-wsiW5mkgA
6
7
 
7
8
  Intro
8
9
 
@@ -42,6 +43,11 @@ WSGI server
42
43
 
43
44
  **Process Managers**
44
45
 
46
+
47
+ **Restart without downtime**
48
+ sudo supervisorctl pid gunicorn | sudo xargs kill -s HUP
49
+ https://blog.pecar.me/gunicorn-restart
50
+
45
51
  Web server
46
52
  ----------
47
53
 
@@ -50,6 +56,10 @@ https://www.nginx.com/products/nginx-unit/
50
56
  https://httpd.apache.org/
51
57
  https://caddyserver.com/
52
58
 
59
+ **A small note on reverse proxies**
60
+
61
+ https://traefik.io/traefik/
62
+
53
63
  Resources
54
64
  ---------
55
65
 
@@ -31,15 +31,18 @@ developer in general.
31
31
 
32
32
  **The obvious ones**
33
33
 
34
- .. grid:: 2
34
+ .. grid:: 1 1 1 2
35
+ :class-row: surface
36
+ :padding: 0
37
+ :gutter: 2
35
38
 
36
- .. grid-item-card:: The official Django documentation
39
+ .. grid-item-card:: :octicon:`rocket` The official Django documentation
37
40
  :link: https://docs.djangoproject.com/en/dev/
38
41
 
39
42
  Django's documentation is arguably one of the best I have encountered. The **Topics guides** and **How-to guides** are particularly
40
43
  noteworthy and should not be overlooked.
41
44
 
42
- .. grid-item-card:: The HTMX documentation
45
+ .. grid-item-card:: :octicon:`flame` The HTMX documentation
43
46
  :link: https://htmx.org/
44
47
 
45
48
  The htmx documentation have everything you need to understand htmx but they also have great essays that are worth reading
@@ -48,24 +51,27 @@ developer in general.
48
51
 
49
52
  **Programming principles**
50
53
 
51
- .. grid:: 2
54
+ .. grid:: 1 1 1 2
55
+ :class-row: surface
56
+ :padding: 0
57
+ :gutter: 2
52
58
 
53
- .. grid-item-card:: HTML First
59
+ .. grid-item-card:: :octicon:`zap` HTML First
54
60
  :link: https://html-first.com/
55
61
 
56
62
  HTML First is a set of principles that aims to make building web software easier, faster, more inclusive, and more maintainable.
57
63
 
58
- .. grid-item-card:: KISS
64
+ .. grid-item-card:: :octicon:`smiley` KISS
59
65
  :link: https://en.wikipedia.org/wiki/KISS_principle
60
66
 
61
67
  Keep it simple, stupid. This is a design principle that states that most systems work best if they are kept simple rather than made complicated.
62
68
 
63
- .. grid-item-card:: WYAGNI
69
+ .. grid-item-card:: :octicon:`clock` WYAGNI
64
70
  :link: https://codeanthropology.substack.com/p/yagni-and-waygni?
65
71
 
66
72
  When Are You Gonna Need It? A look at how we reduce scope, what we lose along the way, and what we could gain if we didn't. With a short story from the startup trenches.
67
73
 
68
- .. grid-item-card:: 12 Factor App
74
+ .. grid-item-card:: :octicon:`gear` 12 Factor App
69
75
  :link: https://12factor.net/
70
76
 
71
77
  The twelve-factor app is a methodology for building software-as-a-service applications. These best practices are designed to enable applications to be built with portability and resilience when deployed to the web.
@@ -73,14 +79,17 @@ developer in general.
73
79
 
74
80
  **Blog articles and videos**
75
81
 
76
- .. grid:: 2
82
+ .. grid:: 1 1 1 2
83
+ :class-row: surface
84
+ :padding: 0
85
+ :gutter: 2
77
86
 
78
- .. grid-item-card:: Adam Johnson blog
87
+ .. grid-item-card:: :octicon:`book` Adam Johnson blog
79
88
  :link: https://adamj.eu/tech/
80
89
 
81
90
  A core Django developer, he provides comprehensive and unique content covering every aspect of the framework.
82
91
 
83
- .. grid-item-card:: BugBytes
92
+ .. grid-item-card:: :octicon:`video` BugBytes
84
93
  :link: https://www.youtube.com/bugbytes
85
94
 
86
95
  This is a great YouTube channel that provides a wealth of Django and HTMX content.
@@ -88,14 +97,17 @@ developer in general.
88
97
 
89
98
  **The special ones**
90
99
 
91
- .. grid:: 2
100
+ .. grid:: 1 1 1 2
101
+ :class-row: surface
102
+ :padding: 0
103
+ :gutter: 2
92
104
 
93
- .. grid-item-card:: The Grug Brained Developer
105
+ .. grid-item-card:: :octicon:`book` The Grug Brained Developer
94
106
  :link: https://grugbrain.dev
95
107
 
96
108
  A layman's guide to thinking like the self-aware smol brained.
97
109
 
98
- .. grid-item-card:: The Cult of Done
110
+ .. grid-item-card:: :octicon:`shield-check` The Cult of Done
99
111
  :link: https://medium.com/@bre/the-cult-of-done-manifesto-724ca1c2ff13
100
112
 
101
113
  The cult of done manifesto is a set of principles that aims to help you get things done.
@@ -60,7 +60,7 @@ For more complex tasks, I tend to choose a solution that supports redis as a tas
60
60
  :class: dropdown
61
61
 
62
62
  If you are using one of these you might want an automatic reload feature when files changes in dev, you can use the ``hupper``
63
- python package for that purpose. It watches for file changes in the cruurent directory and restarts the worker process automatically.
63
+ python package for that purpose. It watches for file changes in the current directory and restarts the worker process automatically.
64
64
 
65
65
  .. code-block:: bash
66
66
  :caption: usage example
@@ -19,7 +19,7 @@ Local email testing
19
19
  https://github.com/axllent/mailpit
20
20
 
21
21
  .. code-block::
22
- :captions: settings.py
22
+ :caption: settings.py
23
23
 
24
24
  EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend",
25
25
  EMAIL_HOST = "localhost"
@@ -0,0 +1,130 @@
1
+ :layout: landing
2
+ :description: Falco is an opinionated toolkit for a modern Django development experience.
3
+
4
+
5
+ .. raw:: html
6
+
7
+ <style>
8
+ .yue img {
9
+ margin-top: 0;
10
+ margin-bottom: 0;
11
+ }
12
+ #head {
13
+ display: flex;
14
+ align-items: center;
15
+ justify-content: space-between;
16
+ column-gap: 20px;
17
+ }
18
+
19
+ @media (max-width: 600px) {
20
+ #head {
21
+ flex-wrap: wrap;
22
+ justify-content: center;
23
+ }
24
+ }
25
+
26
+ #head h1 {
27
+ font-size: 4.2rem;
28
+ margin-top: 3.4rem;
29
+ margin-bottom: 1rem;
30
+ font-weight: 700;
31
+ line-height: 1.2;
32
+ }
33
+ </style>
34
+
35
+ <div id="head">
36
+ <img src="https://raw.githubusercontent.com/Tobi-De/falco/main/assets/falco-logo.svg" width=200 height=200>
37
+ <div>
38
+ <h1>Falco</h1>
39
+ <div style="display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 3em;">
40
+ <img src="https://github.com/Tobi-De/falco/actions/workflows/documentation.yml/badge.svg">
41
+ <img src="https://github.com/Tobi-De/falco/actions/workflows/ci.yml/badge.svg">
42
+ <img src="https://badge.fury.io/py/falco-cli.svg">
43
+ <img src="https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg">
44
+ <img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json">
45
+ <img src="https://img.shields.io/badge/license-MIT-blue.svg">
46
+ <img src="https://img.shields.io/pypi/pyversions/falco-cli">
47
+ <img src="https://img.shields.io/pypi/frameworkversions/django/falco-cli">
48
+ <img src="https://img.shields.io/pypi/dm/falco-cli">
49
+ </div>
50
+ </div>
51
+ </div>
52
+
53
+
54
+
55
+ .. rst-class:: lead
56
+
57
+ Falco is a Django toolkit that improves development with commands for project initiation, CRUD view generation, and
58
+ guides addressing common web development issues tailored to Django.
59
+
60
+
61
+ .. container:: buttons
62
+
63
+ `Docs </install.html>`_
64
+ `GitHub <https://github.com/tobi-de/falco>`_
65
+
66
+
67
+ .. grid:: 1 1 2 3
68
+ :class-row: surface
69
+ :padding: 0
70
+ :gutter: 2
71
+
72
+ .. grid-item-card:: :octicon:`terminal` The CLI
73
+ :link: /the_cli/
74
+
75
+ The documentation for the falco command line interface (CLI).
76
+
77
+ .. grid-item-card:: :octicon:`book` Guides
78
+ :link: /guides/
79
+
80
+ A collection of guides on common web development topics and how to address them in django.
81
+
82
+ .. grid-item-card:: :octicon:`history` Changelog
83
+ :link: /changelog.html
84
+
85
+ Explore the latest updates and the change history of the Falco project.
86
+
87
+ .. grid-item-card:: :octicon:`comment-discussion` Discussion
88
+ :link: https://github.com/tobi-de/falco/discussions
89
+
90
+ Provide suggestions for improving the guides and share new ideas.
91
+
92
+ .. grid-item-card:: :octicon:`alert-fill` Issue
93
+ :link: https://github.com/tobi-de/falco/issues
94
+
95
+ Use this section to report bugs and request new features for the CLI.
96
+
97
+ .. grid-item-card:: :octicon:`people` Contributing
98
+ :link: /contributing.html
99
+
100
+ Learn how to contribute to the Falco project.
101
+
102
+ -----
103
+
104
+ .. raw:: html
105
+
106
+ <h2>Contributors</h2>
107
+
108
+ Thanks to the following wonderful people (`emoji key <https://allcontributors.org/docs/en/emoji-key>`_) who have helped build ``falco``.
109
+
110
+ .. include:: ../README.md
111
+ :parser: myst_parser.sphinx_
112
+ :start-after: <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
113
+ :end-before: <!-- ALL-CONTRIBUTORS-LIST:END -->
114
+
115
+ .. toctree::
116
+ :caption: Getting started
117
+ :hidden:
118
+
119
+ install
120
+ the_cli/index
121
+ guides/index
122
+
123
+ .. toctree::
124
+ :caption: Development
125
+ :hidden:
126
+
127
+ contributing
128
+ codeofconduct
129
+ license
130
+ changelog
@@ -13,14 +13,17 @@ Falco is available on PyPI and can be installed with pip or your favorite Python
13
13
  Next Up
14
14
  -------
15
15
 
16
- .. grid:: 2
16
+ .. grid:: 1 1 1 2
17
+ :class-row: surface
18
+ :gutter: 2
19
+ :padding: 0
17
20
 
18
- .. grid-item-card:: The CLI
21
+ .. grid-item-card:: :octicon:`terminal` The CLI
19
22
  :link: /the_cli/
20
23
 
21
24
  The documentation for the ``falco`` command line interface (CLI).
22
25
 
23
- .. grid-item-card:: Guides
26
+ .. grid-item-card:: :octicon:`book` Guides
24
27
  :link: /guides/
25
28
 
26
29
  A collection of guides on common web development topics and how to address them in django.
@@ -10,7 +10,7 @@ crud
10
10
 
11
11
  This command generates htmx-powered create, read, update, and delete views for your model. It follows a similar idea
12
12
  as `neapolitan <https://github.com/carltongibson/neapolitan>`_, but with a completely different approach. Instead of inheriting
13
- from a class as done with `neapolitan`, this command generates basic `views`, `urls`, and HTML `templates`, and updates or overrides the
13
+ from a class as you would with ``neapolitan``, this command generates basic ``views``, ``urls``, and HTML ``templates``, and updates or overrides the
14
14
  corresponding files in your project. I prefer this approach because, at the end, you'll have all the new code directly in front of you. It's easily
15
15
  accessible and you can update it as you see fit. The idea is to accelerate project prototyping. Write a model and you instantly have views ready for it.
16
16
 
@@ -19,28 +19,28 @@ accessible and you can update it as you see fit. The idea is to accelerate proje
19
19
  :class: hint dropdown
20
20
 
21
21
  I think class-based views get complex faster than function-based views. Both have their use cases, but function-based views
22
- stay simpler to manage longer in my experience. There is an excellent document on the topic, read this `django views the right way <https://spookylukey.github.io/django-views-the-right-way/>`_.
22
+ stay simpler to manage longer in my experience. There is an excellent document on the topic, read `django views the right way <https://spookylukey.github.io/django-views-the-right-way/>`_.
23
23
 
24
- If you want to see an example of the generated code, check out the `source code of the demo project <https://github.com/Tobi-De/falco/tree/main/demo/products.>`_.
24
+ If you want to see an example of the generated code, check out the `source code of the demo project <https://github.com/Tobi-De/falco/tree/main/demo/demo/products>`_.
25
25
 
26
26
  Python code
27
27
  ^^^^^^^^^^^
28
28
 
29
29
  All Python code added by this command will be in **append** mode, meaning it won't override the content of your existing files.
30
30
  Instead, it will add code at the end or create the files if they are missing. The files that will be modified
31
- are ``forms.py``, ``urls.py``, and ``views.py``. For brevity, I'll only show an example of what the `urls.py` file
31
+ are ``forms.py``, ``urls.py``, and ``views.py``. For brevity, I'll only show an example of what the ``urls.py`` file
32
32
  might look like for a model named ``Product`` in a django app named ``products``.
33
33
 
34
34
  .. code-block::bash
35
35
 
36
36
  falco crud product.products
37
37
 
38
- .. literalinclude:: ../../demo/products/urls.py
38
+ .. literalinclude:: ../../demo/demo/products/urls.py
39
39
 
40
40
  As you can see, the convention is quite simple: ``<model_name_lower>_<operation>``. Note that if you don't specify the model name and run
41
41
  ``falco crud products``, the same code with the described conventions will be generated for all the models in the ``products`` app.
42
- Now, if you're anything like me, the code above might have made you cringe due to the excessive repetitions of the term ``product``.
43
- This wouldn't have been the case if the model was called `Category`, for example. For these specific cases, there is an ``--entry-point`` option.
42
+ Now, if you're anything like me, the code above might have made you cringe due to the excessive repetitions of the word ``product``.
43
+ This wouldn't have been the case if the model was called ``Category``, for example. For these specific cases, there is an ``--entry-point`` option.
44
44
 
45
45
  Let's try it.
46
46
 
@@ -66,7 +66,7 @@ Let's try it.
66
66
  ]
67
67
 
68
68
  Much cleaner, specifying that option means you consider the ``Product`` model as the entry point of your ``products`` app.
69
- So, instead of the base URL of the app looking like "products/products/", it will just be "products/", assuming you registered your URLs in
69
+ So, instead of the base URL of the app looking like ``products/products/``, it will just be ``products/``, assuming you registered your URLs in
70
70
  your root URL config like this:
71
71
 
72
72
  .. code-block:: python
@@ -99,7 +99,7 @@ Four files are generated:
99
99
  * ``<model_name_lower>_update.html``
100
100
 
101
101
  There is no ``<model_name_lower>_delete.html`` file because deletion is handled in the ``<model_name_lower>_list.html``.
102
- Each generated HTML file expects to extend from a ``base.html`` template. Therefore, make sure you have a top-level ``base.html`` file in
102
+ Each generated HTML file extends a ``base.html`` template. Therefore, make sure you have a top-level ``base.html`` file in
103
103
  your templates directory.
104
104
 
105
105
 
@@ -0,0 +1,36 @@
1
+ The CLI
2
+ =======
3
+
4
+ The falco CLI is included with the package installation. It provides a set of commands that I hope will be useful to you throughout the
5
+ lifecycle of your project, from project setup to deployment.
6
+
7
+ .. note::
8
+
9
+ If you encounter any issues or unexpected behavior with the CLI, please report it on
10
+ `GitHub <https://github.com/tobi-de/falco/discussions>`_.
11
+
12
+
13
+ The entrypoint for the CLI is the ``falco`` command. It is used to execute all other subcommands.
14
+ Most of these commands rely on the presence of the ``manage.py`` file, so ensure that you run them from the root directory of your Django project.
15
+ Additionally, these commands require acces to your virtual environment, so make sure to activate it before executing any command.
16
+
17
+
18
+ .. important::
19
+
20
+ There is a known issue where certain commands, which depend on your Django project environment to work, such as the ``work`` or the
21
+ ``crud`` commands, might occasionally fail to run. The exact cause of this issue is not entirely clear at the moment, and I've
22
+ experienced it a few times myself. The simplest solution for now is to install the ``falco-cli`` in the same virtual environment as your project.
23
+ This should resolve the issue.
24
+
25
+ .. cappa:: falco.__main__.Falco
26
+
27
+ .. toctree::
28
+ :hidden:
29
+
30
+ start_project
31
+ crud
32
+ htmx
33
+ work
34
+ migrations
35
+ sync_dotenv
36
+ make_superuser
@@ -14,8 +14,8 @@ It is a good idea to delete all migrations and recreate them from scratch when d
14
14
  This ensures a clean base without any remnants of testing or experimentation from the initial development phase. Even during development,
15
15
  when exploring new ideas, it is often necessary to delete all migrations and start over. This command is designed for these scenarios,
16
16
  as it deletes all migrations in your project.
17
- The command checks the debug value of your project using the `manage.py` file. If the debug value is set to ``False``, the command will fail.
18
- It takes an optional argument, `apps_dir`, which specifies the directory containing your apps. If no argument is provided, it assumes that the apps
17
+ The command checks the debug value of your project using the ``manage.py`` file. If the debug value is set to ``False``, the command will fail.
18
+ It takes an optional argument, ``apps_dir``, which specifies the directory containing your apps. If no argument is provided, it assumes that the apps
19
19
  directory has the same name as the current parent directory. For example, if your project is named ``my_awesome_project``, the command will assume that
20
20
  the apps directory is a subdirectory with the same name, i.e., ``my_awesome_project/my_awesome_project``. This is the default project layout created
21
21
  by the `falco startproject </the_cli/start_project.html>`_ command.
@@ -33,8 +33,8 @@ by the `falco startproject </the_cli/start_project.html>`_ command.
33
33
  This command will delete all your migrations files, be sure to commit your changes before running this command.
34
34
 
35
35
  After deleting all your migrations, your next step might likely be to reset your database using a command like ``reset-db``
36
- from `django-extensions <https://django-extensions.readthedocs.io/en/latest/>`. However, if you want to preserve your data,
37
- then the following command might be a better option than running `rm-migrations` altogether.
36
+ from `django-extensions <https://django-extensions.readthedocs.io/en/latest/>`_. However, if you want to preserve your data,
37
+ then the following command might be a better option than running ``rm-migrations`` altogether.
38
38
 
39
39
  reset-migrations
40
40
  ----------------
@@ -58,7 +58,7 @@ This command works exactly like the ``rm-migration`` command but goes a bit furt
58
58
 
59
59
  The `migrate fake <https://docs.djangoproject.com/en/5.0/ref/django-admin/#cmdoption-migrate-fake>`_ command apply migrations without running
60
60
  the actual SQL.
61
- Since the ``reset-migrations`` depends on the `rm-migrations` command, it performs the same checks: it checks your Django ``DEBUG`` value and your Git
62
- repo needs to be in a clean state unless you use the ``skip-git-check`` option.
61
+ Since the ``reset-migrations`` depends on the ``rm-migrations`` command, it performs the same checks: it checks your Django ``DEBUG`` value and your Git
62
+ repo needs to be in a clean state unless you use the ``--skip-git-check`` option.
63
63
 
64
- This command allows you to restore your migrations to their initial state without losing any existing data
64
+ This command allows you to restore your migrations to their initial state without losing any existing data.