falco-cli 0.0.4__tar.gz → 0.0.6__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.
- {falco_cli-0.0.4 → falco_cli-0.0.6}/.github/workflows/documentation.yml +1 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/PKG-INFO +6 -3
- {falco_cli-0.0.4 → falco_cli-0.0.6}/README.md +4 -1
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/.rich-codex.yml +1 -1
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/conf.py +1 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/avoiding_god_models.rst +1 -3
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/deployment.rst +6 -10
- falco_cli-0.0.6/docs/images/crud.svg +134 -0
- falco_cli-0.0.6/docs/images/project-tree.svg +194 -0
- falco_cli-0.0.6/docs/index.rst +41 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/the_cli/start_project.rst +2 -2
- {falco_cli-0.0.4 → falco_cli-0.0.6}/pyproject.toml +4 -1
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/__about__.py +1 -1
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/__main__.py +9 -1
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/htmx.py +17 -5
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/htmx_extension.py +3 -1
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/model_crud.py +105 -52
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/rm_migrations.py +3 -1
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/sync_dotenv.py +6 -2
- falco_cli-0.0.4/docs/images/crud.svg +0 -122
- falco_cli-0.0.4/docs/images/project-tree.svg +0 -70
- falco_cli-0.0.4/docs/index.rst +0 -23
- {falco_cli-0.0.4 → falco_cli-0.0.6}/.github/dependabot.yml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/.github/workflows/ci.yml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/.github/workflows/pre-commit-auto-update.yml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/.gitignore +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/.pre-commit-config.yaml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/CODE_OF_CONDUCT.md +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/LICENSE +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/assets/falco-logo.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/demo/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/demo/asgi.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/demo/settings.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/demo/urls.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/demo/wsgi.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/manage.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/products/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/products/admin.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/products/apps.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/products/migrations/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/products/models.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/demo/products/tests.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/Makefile +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/_templates/partials/globaltoc-above.html +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/codeofconduct.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/contributing.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/database_tips.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/dynamic_model_schema.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/index.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/interactive_user_experience_with_htmx.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/logging_and_monitoring.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/multitenancy.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/optimizing_database_access.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/permissions_and_authorization.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/realtime.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/running_project_in_a_container.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/task_queues_and_schedulers.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/use_sqlite_in_production.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/writing_documentation.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/writing_tests.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/guides/writting_async_code.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/E1.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/falco.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/htmx-ext.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/htmx.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/logo_with_text.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/rm-migrations.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/start-project.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/sync-dotenv.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/images/work.svg +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/install.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/license.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/make.bat +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/the_cli/crud.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/the_cli/htmx.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/the_cli/index.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/the_cli/rm_migrations.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/the_cli/sync_dotenv.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/the_cli/work.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/docs/tips_and_extra.rst +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/keep_readme_up_to_date.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/start_project.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/commands/work.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco/utils.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/__init__.py +0 -0
- /falco_cli-0.0.4/src/falco_blueprints/crud/forms.py.tpl → /falco_cli-0.0.6/src/falco_blueprints/crud/forms.py.bp +0 -0
- /falco_cli-0.0.4/src/falco_blueprints/crud/views.py.tpl → /falco_cli-0.0.6/src/falco_blueprints/crud/views.py.bp +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/.env.template +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/.github/dependabot.yml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/.github/workflows/ci.yml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/.gitignore +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/.pre-commit-config.yaml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/README.md +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/config/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/config/asgi.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/config/settings.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/config/urls.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/config/wsgi.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/docker/Dockerfile +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/docker/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/docker/entrypoint.sh +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/manage.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/playground.ipynb +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/core/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/core/apps.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/core/management/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/core/management/commands/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/core/management/commands/makesuperuser.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/static/vendors/htmx/htmx.min.js +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/templates/base.html +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/templates/home.html +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/users/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/users/admin.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/users/apps.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/users/migrations/0001_initial.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/users/migrations/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/project_name/users/models.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/src/falco_blueprints/project_name/pyproject.toml +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/tests/__init__.py +0 -0
- {falco_cli-0.0.4 → falco_cli-0.0.6}/tests/conftest.py +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: falco-cli
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.6
|
|
4
|
+
Project-URL: Homepage, https://falco.oluwatobi.dev/
|
|
4
5
|
Project-URL: Documentation, https://falco.oluwatobi.dev/
|
|
5
6
|
Project-URL: Issues, https://github.com/tobi-de/falco/issues
|
|
6
7
|
Project-URL: Source, https://github.com/tobi-de/falco
|
|
@@ -27,7 +28,6 @@ Requires-Dist: cappa
|
|
|
27
28
|
Requires-Dist: django<5
|
|
28
29
|
Requires-Dist: honcho
|
|
29
30
|
Requires-Dist: httpx
|
|
30
|
-
Requires-Dist: hupper
|
|
31
31
|
Requires-Dist: isort
|
|
32
32
|
Requires-Dist: python-dotenv
|
|
33
33
|
Requires-Dist: rich
|
|
@@ -53,6 +53,7 @@ Description-Content-Type: text/markdown
|
|
|
53
53
|
> [!WARNING]
|
|
54
54
|
> This is a work in progress (WIP), this is also [fuzzy-couscous](https://github.com/Tobi-De/fuzzy-couscous) new cooler brother.
|
|
55
55
|
|
|
56
|
+
<!-- start-docs -->
|
|
56
57
|
|
|
57
58
|
Intro here....
|
|
58
59
|
|
|
@@ -101,7 +102,7 @@ If you don't find any use of the CLI, I hope you will in these guides. This is a
|
|
|
101
102
|
- [Task Queues and Schedulers](https://falco.oluwatobi.dev/guides/task_queues_and_schedulers.html)
|
|
102
103
|
- [Interactive UX (User Experience) with HTMX](https://falco.oluwatobi.dev/guides/interactive_user_experience_with_htmx.html)
|
|
103
104
|
- [Running your project in a single container](https://falco.oluwatobi.dev/guides/running_project_in_a_container.html)
|
|
104
|
-
- [
|
|
105
|
+
- [Deploy your app](https://falco.oluwatobi.dev/guides/deployment.html)
|
|
105
106
|
- [Permissions and authorizations](https://falco.oluwatobi.dev/guides/permissions_and_authorization.html)
|
|
106
107
|
- [Writing tests](https://falco.oluwatobi.dev/guides/writing_tests.html)
|
|
107
108
|
- [Logging and monitoring](https://falco.oluwatobi.dev/guides/logging_and_monitoring.html)
|
|
@@ -114,3 +115,5 @@ Falco is inspired by (and borrows elements from) some excellent starter template
|
|
|
114
115
|
- [cookiecutter-django](https://github.com/cookiecutter/cookiecutter-django)
|
|
115
116
|
- [django-hatch-startproject](https://github.com/oliverandrich/django-hatch-startproject)
|
|
116
117
|
- [django-unicorn](https://github.com/adamghill/django-unicorn) (Inspiration for the logo)
|
|
118
|
+
|
|
119
|
+
<!-- end-docs -->
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
> [!WARNING]
|
|
18
18
|
> This is a work in progress (WIP), this is also [fuzzy-couscous](https://github.com/Tobi-De/fuzzy-couscous) new cooler brother.
|
|
19
19
|
|
|
20
|
+
<!-- start-docs -->
|
|
20
21
|
|
|
21
22
|
Intro here....
|
|
22
23
|
|
|
@@ -65,7 +66,7 @@ If you don't find any use of the CLI, I hope you will in these guides. This is a
|
|
|
65
66
|
- [Task Queues and Schedulers](https://falco.oluwatobi.dev/guides/task_queues_and_schedulers.html)
|
|
66
67
|
- [Interactive UX (User Experience) with HTMX](https://falco.oluwatobi.dev/guides/interactive_user_experience_with_htmx.html)
|
|
67
68
|
- [Running your project in a single container](https://falco.oluwatobi.dev/guides/running_project_in_a_container.html)
|
|
68
|
-
- [
|
|
69
|
+
- [Deploy your app](https://falco.oluwatobi.dev/guides/deployment.html)
|
|
69
70
|
- [Permissions and authorizations](https://falco.oluwatobi.dev/guides/permissions_and_authorization.html)
|
|
70
71
|
- [Writing tests](https://falco.oluwatobi.dev/guides/writing_tests.html)
|
|
71
72
|
- [Logging and monitoring](https://falco.oluwatobi.dev/guides/logging_and_monitoring.html)
|
|
@@ -78,3 +79,5 @@ Falco is inspired by (and borrows elements from) some excellent starter template
|
|
|
78
79
|
- [cookiecutter-django](https://github.com/cookiecutter/cookiecutter-django)
|
|
79
80
|
- [django-hatch-startproject](https://github.com/oliverandrich/django-hatch-startproject)
|
|
80
81
|
- [django-unicorn](https://github.com/adamghill/django-unicorn) (Inspiration for the logo)
|
|
82
|
+
|
|
83
|
+
<!-- end-docs -->
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
:description: Smooth Deployment Strategies for django projects
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
Deploy your app
|
|
4
|
+
===============
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
Intro
|
|
@@ -63,15 +63,11 @@ to ease your burden or a least docker as a bare minimum. Deployment is not worth
|
|
|
63
63
|
Paas and rent a VPS
|
|
64
64
|
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
Managed solutions
|
|
67
|
+
^^^^^^^^^^^^^^^^^
|
|
68
68
|
|
|
69
69
|
I don't have much experience with these, but are relatively similarly price and quite easy to use, so you can just use one.
|
|
70
70
|
|
|
71
|
-
|
|
72
|
-
P.A.A.S
|
|
73
|
-
*******
|
|
74
|
-
|
|
75
71
|
* `Fly <https://fly.io/>`_
|
|
76
72
|
* `Render <https://render.com/>`_
|
|
77
73
|
* `AWS Elastic Beanstalk <https://aws.amazon.com/elasticbeanstalk/>`_
|
|
@@ -80,8 +76,8 @@ P.A.A.S
|
|
|
80
76
|
* `Appliku <https://appliku.com>`_
|
|
81
77
|
|
|
82
78
|
|
|
83
|
-
Self
|
|
84
|
-
|
|
79
|
+
Self-Managed solutions
|
|
80
|
+
^^^^^^^^^^^^^^^^^^^^^^
|
|
85
81
|
|
|
86
82
|
If you are new to it, the term **self-hosting** might be misguidind, usually people use self-hosting to just mean you rent a vps and to the work yourself
|
|
87
83
|
instead of paying someone else to do it for you. It might be cheaper but if you want to do real **self-hosting** you technically need to by you own hardware.
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
<svg class="rich-terminal" viewBox="0 0 994 538.0" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<!-- Generated with Rich https://www.textualize.io -->
|
|
3
|
+
<style>
|
|
4
|
+
|
|
5
|
+
@font-face {
|
|
6
|
+
font-family: "Fira Code";
|
|
7
|
+
src: local("FiraCode-Regular"),
|
|
8
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
|
9
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
|
10
|
+
font-style: normal;
|
|
11
|
+
font-weight: 400;
|
|
12
|
+
}
|
|
13
|
+
@font-face {
|
|
14
|
+
font-family: "Fira Code";
|
|
15
|
+
src: local("FiraCode-Bold"),
|
|
16
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
|
17
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
|
18
|
+
font-style: bold;
|
|
19
|
+
font-weight: 700;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.terminal-1926350139-matrix {
|
|
23
|
+
font-family: Fira Code, monospace;
|
|
24
|
+
font-size: 20px;
|
|
25
|
+
line-height: 24.4px;
|
|
26
|
+
font-variant-east-asian: full-width;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.terminal-1926350139-title {
|
|
30
|
+
font-size: 18px;
|
|
31
|
+
font-weight: bold;
|
|
32
|
+
font-family: arial;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.terminal-1926350139-r1 { fill: #d9d9d9 }
|
|
36
|
+
</style>
|
|
37
|
+
|
|
38
|
+
<defs>
|
|
39
|
+
<clipPath id="terminal-1926350139-clip-terminal">
|
|
40
|
+
<rect x="0" y="0" width="975.0" height="487.0" />
|
|
41
|
+
</clipPath>
|
|
42
|
+
<clipPath id="terminal-1926350139-line-0">
|
|
43
|
+
<rect x="0" y="1.5" width="976" height="24.65"/>
|
|
44
|
+
</clipPath>
|
|
45
|
+
<clipPath id="terminal-1926350139-line-1">
|
|
46
|
+
<rect x="0" y="25.9" width="976" height="24.65"/>
|
|
47
|
+
</clipPath>
|
|
48
|
+
<clipPath id="terminal-1926350139-line-2">
|
|
49
|
+
<rect x="0" y="50.3" width="976" height="24.65"/>
|
|
50
|
+
</clipPath>
|
|
51
|
+
<clipPath id="terminal-1926350139-line-3">
|
|
52
|
+
<rect x="0" y="74.7" width="976" height="24.65"/>
|
|
53
|
+
</clipPath>
|
|
54
|
+
<clipPath id="terminal-1926350139-line-4">
|
|
55
|
+
<rect x="0" y="99.1" width="976" height="24.65"/>
|
|
56
|
+
</clipPath>
|
|
57
|
+
<clipPath id="terminal-1926350139-line-5">
|
|
58
|
+
<rect x="0" y="123.5" width="976" height="24.65"/>
|
|
59
|
+
</clipPath>
|
|
60
|
+
<clipPath id="terminal-1926350139-line-6">
|
|
61
|
+
<rect x="0" y="147.9" width="976" height="24.65"/>
|
|
62
|
+
</clipPath>
|
|
63
|
+
<clipPath id="terminal-1926350139-line-7">
|
|
64
|
+
<rect x="0" y="172.3" width="976" height="24.65"/>
|
|
65
|
+
</clipPath>
|
|
66
|
+
<clipPath id="terminal-1926350139-line-8">
|
|
67
|
+
<rect x="0" y="196.7" width="976" height="24.65"/>
|
|
68
|
+
</clipPath>
|
|
69
|
+
<clipPath id="terminal-1926350139-line-9">
|
|
70
|
+
<rect x="0" y="221.1" width="976" height="24.65"/>
|
|
71
|
+
</clipPath>
|
|
72
|
+
<clipPath id="terminal-1926350139-line-10">
|
|
73
|
+
<rect x="0" y="245.5" width="976" height="24.65"/>
|
|
74
|
+
</clipPath>
|
|
75
|
+
<clipPath id="terminal-1926350139-line-11">
|
|
76
|
+
<rect x="0" y="269.9" width="976" height="24.65"/>
|
|
77
|
+
</clipPath>
|
|
78
|
+
<clipPath id="terminal-1926350139-line-12">
|
|
79
|
+
<rect x="0" y="294.3" width="976" height="24.65"/>
|
|
80
|
+
</clipPath>
|
|
81
|
+
<clipPath id="terminal-1926350139-line-13">
|
|
82
|
+
<rect x="0" y="318.7" width="976" height="24.65"/>
|
|
83
|
+
</clipPath>
|
|
84
|
+
<clipPath id="terminal-1926350139-line-14">
|
|
85
|
+
<rect x="0" y="343.1" width="976" height="24.65"/>
|
|
86
|
+
</clipPath>
|
|
87
|
+
<clipPath id="terminal-1926350139-line-15">
|
|
88
|
+
<rect x="0" y="367.5" width="976" height="24.65"/>
|
|
89
|
+
</clipPath>
|
|
90
|
+
<clipPath id="terminal-1926350139-line-16">
|
|
91
|
+
<rect x="0" y="391.9" width="976" height="24.65"/>
|
|
92
|
+
</clipPath>
|
|
93
|
+
<clipPath id="terminal-1926350139-line-17">
|
|
94
|
+
<rect x="0" y="416.3" width="976" height="24.65"/>
|
|
95
|
+
</clipPath>
|
|
96
|
+
<clipPath id="terminal-1926350139-line-18">
|
|
97
|
+
<rect x="0" y="440.7" width="976" height="24.65"/>
|
|
98
|
+
</clipPath>
|
|
99
|
+
</defs>
|
|
100
|
+
|
|
101
|
+
<rect fill="#0c0c0c" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="992" height="536" rx="8"/>
|
|
102
|
+
<g transform="translate(26,22)">
|
|
103
|
+
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
|
104
|
+
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
|
105
|
+
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
|
106
|
+
</g>
|
|
107
|
+
|
|
108
|
+
<g transform="translate(9, 41)" clip-path="url(#terminal-1926350139-clip-terminal)">
|
|
109
|
+
|
|
110
|
+
<g class="terminal-1926350139-matrix">
|
|
111
|
+
<text class="terminal-1926350139-r1" x="0" y="20" textLength="231.8" clip-path="url(#terminal-1926350139-line-0)">$ falco crud --help</text><text class="terminal-1926350139-r1" x="976" y="20" textLength="12.2" clip-path="url(#terminal-1926350139-line-0)">
|
|
112
|
+
</text><text class="terminal-1926350139-r1" x="0" y="44.4" textLength="866.2" clip-path="url(#terminal-1926350139-line-1)">Usage: falco crud [-s SETTINGS_MODULE] [-b BLUEPRINTS] [--only-python] </text><text class="terminal-1926350139-r1" x="976" y="44.4" textLength="12.2" clip-path="url(#terminal-1926350139-line-1)">
|
|
113
|
+
</text><text class="terminal-1926350139-r1" x="0" y="68.8" textLength="353.8" clip-path="url(#terminal-1926350139-line-2)">[--only-html] MODEL_PATH [-h]</text><text class="terminal-1926350139-r1" x="976" y="68.8" textLength="12.2" clip-path="url(#terminal-1926350139-line-2)">
|
|
114
|
+
</text><text class="terminal-1926350139-r1" x="976" y="93.2" textLength="12.2" clip-path="url(#terminal-1926350139-line-3)">
|
|
115
|
+
</text><text class="terminal-1926350139-r1" x="0" y="117.6" textLength="976" clip-path="url(#terminal-1926350139-line-4)">  Generate CRUD (Create, Read, Update, Delete) views for a model.               </text><text class="terminal-1926350139-r1" x="976" y="117.6" textLength="12.2" clip-path="url(#terminal-1926350139-line-4)">
|
|
116
|
+
</text><text class="terminal-1926350139-r1" x="976" y="142" textLength="12.2" clip-path="url(#terminal-1926350139-line-5)">
|
|
117
|
+
</text><text class="terminal-1926350139-r1" x="0" y="166.4" textLength="976" clip-path="url(#terminal-1926350139-line-6)">  Options                                                                       </text><text class="terminal-1926350139-r1" x="976" y="166.4" textLength="12.2" clip-path="url(#terminal-1926350139-line-6)">
|
|
118
|
+
</text><text class="terminal-1926350139-r1" x="0" y="190.8" textLength="976" clip-path="url(#terminal-1926350139-line-7)">    [-s, --settings SETTINGS_MODULE]  The django settings module to use.        </text><text class="terminal-1926350139-r1" x="976" y="190.8" textLength="12.2" clip-path="url(#terminal-1926350139-line-7)">
|
|
119
|
+
</text><text class="terminal-1926350139-r1" x="0" y="215.2" textLength="976" clip-path="url(#terminal-1926350139-line-8)">    [-b, --blueprints BLUEPRINTS]     The path to custom html templates that    </text><text class="terminal-1926350139-r1" x="976" y="215.2" textLength="12.2" clip-path="url(#terminal-1926350139-line-8)">
|
|
120
|
+
</text><text class="terminal-1926350139-r1" x="0" y="239.6" textLength="976" clip-path="url(#terminal-1926350139-line-9)">                                      will server as blueprints.                </text><text class="terminal-1926350139-r1" x="976" y="239.6" textLength="12.2" clip-path="url(#terminal-1926350139-line-9)">
|
|
121
|
+
</text><text class="terminal-1926350139-r1" x="0" y="264" textLength="976" clip-path="url(#terminal-1926350139-line-10)">    [--only-python]                   Generate only python.                     </text><text class="terminal-1926350139-r1" x="976" y="264" textLength="12.2" clip-path="url(#terminal-1926350139-line-10)">
|
|
122
|
+
</text><text class="terminal-1926350139-r1" x="0" y="288.4" textLength="976" clip-path="url(#terminal-1926350139-line-11)">    [--only-html]                     Generate only html.                       </text><text class="terminal-1926350139-r1" x="976" y="288.4" textLength="12.2" clip-path="url(#terminal-1926350139-line-11)">
|
|
123
|
+
</text><text class="terminal-1926350139-r1" x="976" y="312.8" textLength="12.2" clip-path="url(#terminal-1926350139-line-12)">
|
|
124
|
+
</text><text class="terminal-1926350139-r1" x="0" y="337.2" textLength="976" clip-path="url(#terminal-1926350139-line-13)">  Arguments                                                                     </text><text class="terminal-1926350139-r1" x="976" y="337.2" textLength="12.2" clip-path="url(#terminal-1926350139-line-13)">
|
|
125
|
+
</text><text class="terminal-1926350139-r1" x="0" y="361.6" textLength="976" clip-path="url(#terminal-1926350139-line-14)">    MODEL_PATH                        The path (<app_label>.<model name>) of the</text><text class="terminal-1926350139-r1" x="976" y="361.6" textLength="12.2" clip-path="url(#terminal-1926350139-line-14)">
|
|
126
|
+
</text><text class="terminal-1926350139-r1" x="0" y="386" textLength="976" clip-path="url(#terminal-1926350139-line-15)">                                      model to generate CRUD views for. Ex:     </text><text class="terminal-1926350139-r1" x="976" y="386" textLength="12.2" clip-path="url(#terminal-1926350139-line-15)">
|
|
127
|
+
</text><text class="terminal-1926350139-r1" x="0" y="410.4" textLength="976" clip-path="url(#terminal-1926350139-line-16)">                                      myapp.product                             </text><text class="terminal-1926350139-r1" x="976" y="410.4" textLength="12.2" clip-path="url(#terminal-1926350139-line-16)">
|
|
128
|
+
</text><text class="terminal-1926350139-r1" x="976" y="434.8" textLength="12.2" clip-path="url(#terminal-1926350139-line-17)">
|
|
129
|
+
</text><text class="terminal-1926350139-r1" x="0" y="459.2" textLength="976" clip-path="url(#terminal-1926350139-line-18)">  Help                                                                          </text><text class="terminal-1926350139-r1" x="976" y="459.2" textLength="12.2" clip-path="url(#terminal-1926350139-line-18)">
|
|
130
|
+
</text><text class="terminal-1926350139-r1" x="0" y="483.6" textLength="793" clip-path="url(#terminal-1926350139-line-19)">    [-h, --help]                      Show this message and exit.</text><text class="terminal-1926350139-r1" x="976" y="483.6" textLength="12.2" clip-path="url(#terminal-1926350139-line-19)">
|
|
131
|
+
</text>
|
|
132
|
+
</g>
|
|
133
|
+
</g>
|
|
134
|
+
</svg>
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
<svg class="rich-terminal" viewBox="0 0 994 904.0" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<!-- Generated with Rich https://www.textualize.io -->
|
|
3
|
+
<style>
|
|
4
|
+
|
|
5
|
+
@font-face {
|
|
6
|
+
font-family: "Fira Code";
|
|
7
|
+
src: local("FiraCode-Regular"),
|
|
8
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
|
9
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
|
10
|
+
font-style: normal;
|
|
11
|
+
font-weight: 400;
|
|
12
|
+
}
|
|
13
|
+
@font-face {
|
|
14
|
+
font-family: "Fira Code";
|
|
15
|
+
src: local("FiraCode-Bold"),
|
|
16
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
|
17
|
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
|
18
|
+
font-style: bold;
|
|
19
|
+
font-weight: 700;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.terminal-1521612260-matrix {
|
|
23
|
+
font-family: Fira Code, monospace;
|
|
24
|
+
font-size: 20px;
|
|
25
|
+
line-height: 24.4px;
|
|
26
|
+
font-variant-east-asian: full-width;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.terminal-1521612260-title {
|
|
30
|
+
font-size: 18px;
|
|
31
|
+
font-weight: bold;
|
|
32
|
+
font-family: arial;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.terminal-1521612260-r1 { fill: #d9d9d9 }
|
|
36
|
+
</style>
|
|
37
|
+
|
|
38
|
+
<defs>
|
|
39
|
+
<clipPath id="terminal-1521612260-clip-terminal">
|
|
40
|
+
<rect x="0" y="0" width="975.0" height="853.0" />
|
|
41
|
+
</clipPath>
|
|
42
|
+
<clipPath id="terminal-1521612260-line-0">
|
|
43
|
+
<rect x="0" y="1.5" width="976" height="24.65"/>
|
|
44
|
+
</clipPath>
|
|
45
|
+
<clipPath id="terminal-1521612260-line-1">
|
|
46
|
+
<rect x="0" y="25.9" width="976" height="24.65"/>
|
|
47
|
+
</clipPath>
|
|
48
|
+
<clipPath id="terminal-1521612260-line-2">
|
|
49
|
+
<rect x="0" y="50.3" width="976" height="24.65"/>
|
|
50
|
+
</clipPath>
|
|
51
|
+
<clipPath id="terminal-1521612260-line-3">
|
|
52
|
+
<rect x="0" y="74.7" width="976" height="24.65"/>
|
|
53
|
+
</clipPath>
|
|
54
|
+
<clipPath id="terminal-1521612260-line-4">
|
|
55
|
+
<rect x="0" y="99.1" width="976" height="24.65"/>
|
|
56
|
+
</clipPath>
|
|
57
|
+
<clipPath id="terminal-1521612260-line-5">
|
|
58
|
+
<rect x="0" y="123.5" width="976" height="24.65"/>
|
|
59
|
+
</clipPath>
|
|
60
|
+
<clipPath id="terminal-1521612260-line-6">
|
|
61
|
+
<rect x="0" y="147.9" width="976" height="24.65"/>
|
|
62
|
+
</clipPath>
|
|
63
|
+
<clipPath id="terminal-1521612260-line-7">
|
|
64
|
+
<rect x="0" y="172.3" width="976" height="24.65"/>
|
|
65
|
+
</clipPath>
|
|
66
|
+
<clipPath id="terminal-1521612260-line-8">
|
|
67
|
+
<rect x="0" y="196.7" width="976" height="24.65"/>
|
|
68
|
+
</clipPath>
|
|
69
|
+
<clipPath id="terminal-1521612260-line-9">
|
|
70
|
+
<rect x="0" y="221.1" width="976" height="24.65"/>
|
|
71
|
+
</clipPath>
|
|
72
|
+
<clipPath id="terminal-1521612260-line-10">
|
|
73
|
+
<rect x="0" y="245.5" width="976" height="24.65"/>
|
|
74
|
+
</clipPath>
|
|
75
|
+
<clipPath id="terminal-1521612260-line-11">
|
|
76
|
+
<rect x="0" y="269.9" width="976" height="24.65"/>
|
|
77
|
+
</clipPath>
|
|
78
|
+
<clipPath id="terminal-1521612260-line-12">
|
|
79
|
+
<rect x="0" y="294.3" width="976" height="24.65"/>
|
|
80
|
+
</clipPath>
|
|
81
|
+
<clipPath id="terminal-1521612260-line-13">
|
|
82
|
+
<rect x="0" y="318.7" width="976" height="24.65"/>
|
|
83
|
+
</clipPath>
|
|
84
|
+
<clipPath id="terminal-1521612260-line-14">
|
|
85
|
+
<rect x="0" y="343.1" width="976" height="24.65"/>
|
|
86
|
+
</clipPath>
|
|
87
|
+
<clipPath id="terminal-1521612260-line-15">
|
|
88
|
+
<rect x="0" y="367.5" width="976" height="24.65"/>
|
|
89
|
+
</clipPath>
|
|
90
|
+
<clipPath id="terminal-1521612260-line-16">
|
|
91
|
+
<rect x="0" y="391.9" width="976" height="24.65"/>
|
|
92
|
+
</clipPath>
|
|
93
|
+
<clipPath id="terminal-1521612260-line-17">
|
|
94
|
+
<rect x="0" y="416.3" width="976" height="24.65"/>
|
|
95
|
+
</clipPath>
|
|
96
|
+
<clipPath id="terminal-1521612260-line-18">
|
|
97
|
+
<rect x="0" y="440.7" width="976" height="24.65"/>
|
|
98
|
+
</clipPath>
|
|
99
|
+
<clipPath id="terminal-1521612260-line-19">
|
|
100
|
+
<rect x="0" y="465.1" width="976" height="24.65"/>
|
|
101
|
+
</clipPath>
|
|
102
|
+
<clipPath id="terminal-1521612260-line-20">
|
|
103
|
+
<rect x="0" y="489.5" width="976" height="24.65"/>
|
|
104
|
+
</clipPath>
|
|
105
|
+
<clipPath id="terminal-1521612260-line-21">
|
|
106
|
+
<rect x="0" y="513.9" width="976" height="24.65"/>
|
|
107
|
+
</clipPath>
|
|
108
|
+
<clipPath id="terminal-1521612260-line-22">
|
|
109
|
+
<rect x="0" y="538.3" width="976" height="24.65"/>
|
|
110
|
+
</clipPath>
|
|
111
|
+
<clipPath id="terminal-1521612260-line-23">
|
|
112
|
+
<rect x="0" y="562.7" width="976" height="24.65"/>
|
|
113
|
+
</clipPath>
|
|
114
|
+
<clipPath id="terminal-1521612260-line-24">
|
|
115
|
+
<rect x="0" y="587.1" width="976" height="24.65"/>
|
|
116
|
+
</clipPath>
|
|
117
|
+
<clipPath id="terminal-1521612260-line-25">
|
|
118
|
+
<rect x="0" y="611.5" width="976" height="24.65"/>
|
|
119
|
+
</clipPath>
|
|
120
|
+
<clipPath id="terminal-1521612260-line-26">
|
|
121
|
+
<rect x="0" y="635.9" width="976" height="24.65"/>
|
|
122
|
+
</clipPath>
|
|
123
|
+
<clipPath id="terminal-1521612260-line-27">
|
|
124
|
+
<rect x="0" y="660.3" width="976" height="24.65"/>
|
|
125
|
+
</clipPath>
|
|
126
|
+
<clipPath id="terminal-1521612260-line-28">
|
|
127
|
+
<rect x="0" y="684.7" width="976" height="24.65"/>
|
|
128
|
+
</clipPath>
|
|
129
|
+
<clipPath id="terminal-1521612260-line-29">
|
|
130
|
+
<rect x="0" y="709.1" width="976" height="24.65"/>
|
|
131
|
+
</clipPath>
|
|
132
|
+
<clipPath id="terminal-1521612260-line-30">
|
|
133
|
+
<rect x="0" y="733.5" width="976" height="24.65"/>
|
|
134
|
+
</clipPath>
|
|
135
|
+
<clipPath id="terminal-1521612260-line-31">
|
|
136
|
+
<rect x="0" y="757.9" width="976" height="24.65"/>
|
|
137
|
+
</clipPath>
|
|
138
|
+
<clipPath id="terminal-1521612260-line-32">
|
|
139
|
+
<rect x="0" y="782.3" width="976" height="24.65"/>
|
|
140
|
+
</clipPath>
|
|
141
|
+
<clipPath id="terminal-1521612260-line-33">
|
|
142
|
+
<rect x="0" y="806.7" width="976" height="24.65"/>
|
|
143
|
+
</clipPath>
|
|
144
|
+
</defs>
|
|
145
|
+
|
|
146
|
+
<rect fill="#0c0c0c" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="992" height="902" rx="8"/>
|
|
147
|
+
<g transform="translate(26,22)">
|
|
148
|
+
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
|
149
|
+
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
|
150
|
+
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
|
151
|
+
</g>
|
|
152
|
+
|
|
153
|
+
<g transform="translate(9, 41)" clip-path="url(#terminal-1521612260-clip-terminal)">
|
|
154
|
+
|
|
155
|
+
<g class="terminal-1521612260-matrix">
|
|
156
|
+
<text class="terminal-1521612260-r1" x="0" y="20" textLength="549" clip-path="url(#terminal-1521612260-line-0)">$ tree -L 3 src/falco_blueprints/project_name</text><text class="terminal-1521612260-r1" x="976" y="20" textLength="12.2" clip-path="url(#terminal-1521612260-line-0)">
|
|
157
|
+
</text><text class="terminal-1521612260-r1" x="0" y="44.4" textLength="402.6" clip-path="url(#terminal-1521612260-line-1)">src/falco_blueprints/project_name</text><text class="terminal-1521612260-r1" x="976" y="44.4" textLength="12.2" clip-path="url(#terminal-1521612260-line-1)">
|
|
158
|
+
</text><text class="terminal-1521612260-r1" x="0" y="68.8" textLength="158.6" clip-path="url(#terminal-1521612260-line-2)">├── README.md</text><text class="terminal-1521612260-r1" x="976" y="68.8" textLength="12.2" clip-path="url(#terminal-1521612260-line-2)">
|
|
159
|
+
</text><text class="terminal-1521612260-r1" x="0" y="93.2" textLength="122" clip-path="url(#terminal-1521612260-line-3)">├── config</text><text class="terminal-1521612260-r1" x="976" y="93.2" textLength="12.2" clip-path="url(#terminal-1521612260-line-3)">
|
|
160
|
+
</text><text class="terminal-1521612260-r1" x="0" y="117.6" textLength="231.8" clip-path="url(#terminal-1521612260-line-4)">│  ├── __init__.py</text><text class="terminal-1521612260-r1" x="976" y="117.6" textLength="12.2" clip-path="url(#terminal-1521612260-line-4)">
|
|
161
|
+
</text><text class="terminal-1521612260-r1" x="0" y="142" textLength="183" clip-path="url(#terminal-1521612260-line-5)">│  ├── asgi.py</text><text class="terminal-1521612260-r1" x="976" y="142" textLength="12.2" clip-path="url(#terminal-1521612260-line-5)">
|
|
162
|
+
</text><text class="terminal-1521612260-r1" x="0" y="166.4" textLength="231.8" clip-path="url(#terminal-1521612260-line-6)">│  ├── settings.py</text><text class="terminal-1521612260-r1" x="976" y="166.4" textLength="12.2" clip-path="url(#terminal-1521612260-line-6)">
|
|
163
|
+
</text><text class="terminal-1521612260-r1" x="0" y="190.8" textLength="183" clip-path="url(#terminal-1521612260-line-7)">│  ├── urls.py</text><text class="terminal-1521612260-r1" x="976" y="190.8" textLength="12.2" clip-path="url(#terminal-1521612260-line-7)">
|
|
164
|
+
</text><text class="terminal-1521612260-r1" x="0" y="215.2" textLength="183" clip-path="url(#terminal-1521612260-line-8)">│  └── wsgi.py</text><text class="terminal-1521612260-r1" x="976" y="215.2" textLength="12.2" clip-path="url(#terminal-1521612260-line-8)">
|
|
165
|
+
</text><text class="terminal-1521612260-r1" x="0" y="239.6" textLength="122" clip-path="url(#terminal-1521612260-line-9)">├── docker</text><text class="terminal-1521612260-r1" x="976" y="239.6" textLength="12.2" clip-path="url(#terminal-1521612260-line-9)">
|
|
166
|
+
</text><text class="terminal-1521612260-r1" x="0" y="264" textLength="219.6" clip-path="url(#terminal-1521612260-line-10)">│  ├── Dockerfile</text><text class="terminal-1521612260-r1" x="976" y="264" textLength="12.2" clip-path="url(#terminal-1521612260-line-10)">
|
|
167
|
+
</text><text class="terminal-1521612260-r1" x="0" y="288.4" textLength="231.8" clip-path="url(#terminal-1521612260-line-11)">│  ├── __init__.py</text><text class="terminal-1521612260-r1" x="976" y="288.4" textLength="12.2" clip-path="url(#terminal-1521612260-line-11)">
|
|
168
|
+
</text><text class="terminal-1521612260-r1" x="0" y="312.8" textLength="256.2" clip-path="url(#terminal-1521612260-line-12)">│  └── entrypoint.sh</text><text class="terminal-1521612260-r1" x="976" y="312.8" textLength="12.2" clip-path="url(#terminal-1521612260-line-12)">
|
|
169
|
+
</text><text class="terminal-1521612260-r1" x="0" y="337.2" textLength="158.6" clip-path="url(#terminal-1521612260-line-13)">├── manage.py</text><text class="terminal-1521612260-r1" x="976" y="337.2" textLength="12.2" clip-path="url(#terminal-1521612260-line-13)">
|
|
170
|
+
</text><text class="terminal-1521612260-r1" x="0" y="361.6" textLength="244" clip-path="url(#terminal-1521612260-line-14)">├── playground.ipynb</text><text class="terminal-1521612260-r1" x="976" y="361.6" textLength="12.2" clip-path="url(#terminal-1521612260-line-14)">
|
|
171
|
+
</text><text class="terminal-1521612260-r1" x="0" y="386" textLength="195.2" clip-path="url(#terminal-1521612260-line-15)">├── project_name</text><text class="terminal-1521612260-r1" x="976" y="386" textLength="12.2" clip-path="url(#terminal-1521612260-line-15)">
|
|
172
|
+
</text><text class="terminal-1521612260-r1" x="0" y="410.4" textLength="231.8" clip-path="url(#terminal-1521612260-line-16)">│  ├── __init__.py</text><text class="terminal-1521612260-r1" x="976" y="410.4" textLength="12.2" clip-path="url(#terminal-1521612260-line-16)">
|
|
173
|
+
</text><text class="terminal-1521612260-r1" x="0" y="434.8" textLength="146.4" clip-path="url(#terminal-1521612260-line-17)">│  ├── core</text><text class="terminal-1521612260-r1" x="976" y="434.8" textLength="12.2" clip-path="url(#terminal-1521612260-line-17)">
|
|
174
|
+
</text><text class="terminal-1521612260-r1" x="0" y="459.2" textLength="280.6" clip-path="url(#terminal-1521612260-line-18)">│  │  ├── __init__.py</text><text class="terminal-1521612260-r1" x="976" y="459.2" textLength="12.2" clip-path="url(#terminal-1521612260-line-18)">
|
|
175
|
+
</text><text class="terminal-1521612260-r1" x="0" y="483.6" textLength="231.8" clip-path="url(#terminal-1521612260-line-19)">│  │  ├── apps.py</text><text class="terminal-1521612260-r1" x="976" y="483.6" textLength="12.2" clip-path="url(#terminal-1521612260-line-19)">
|
|
176
|
+
</text><text class="terminal-1521612260-r1" x="0" y="508" textLength="268.4" clip-path="url(#terminal-1521612260-line-20)">│  │  └── management</text><text class="terminal-1521612260-r1" x="976" y="508" textLength="12.2" clip-path="url(#terminal-1521612260-line-20)">
|
|
177
|
+
</text><text class="terminal-1521612260-r1" x="0" y="532.4" textLength="170.8" clip-path="url(#terminal-1521612260-line-21)">│  ├── static</text><text class="terminal-1521612260-r1" x="976" y="532.4" textLength="12.2" clip-path="url(#terminal-1521612260-line-21)">
|
|
178
|
+
</text><text class="terminal-1521612260-r1" x="0" y="556.8" textLength="231.8" clip-path="url(#terminal-1521612260-line-22)">│  │  └── vendors</text><text class="terminal-1521612260-r1" x="976" y="556.8" textLength="12.2" clip-path="url(#terminal-1521612260-line-22)">
|
|
179
|
+
</text><text class="terminal-1521612260-r1" x="0" y="581.2" textLength="207.4" clip-path="url(#terminal-1521612260-line-23)">│  ├── templates</text><text class="terminal-1521612260-r1" x="976" y="581.2" textLength="12.2" clip-path="url(#terminal-1521612260-line-23)">
|
|
180
|
+
</text><text class="terminal-1521612260-r1" x="0" y="605.6" textLength="256.2" clip-path="url(#terminal-1521612260-line-24)">│  │  ├── base.html</text><text class="terminal-1521612260-r1" x="976" y="605.6" textLength="12.2" clip-path="url(#terminal-1521612260-line-24)">
|
|
181
|
+
</text><text class="terminal-1521612260-r1" x="0" y="630" textLength="256.2" clip-path="url(#terminal-1521612260-line-25)">│  │  └── home.html</text><text class="terminal-1521612260-r1" x="976" y="630" textLength="12.2" clip-path="url(#terminal-1521612260-line-25)">
|
|
182
|
+
</text><text class="terminal-1521612260-r1" x="0" y="654.4" textLength="158.6" clip-path="url(#terminal-1521612260-line-26)">│  └── users</text><text class="terminal-1521612260-r1" x="976" y="654.4" textLength="12.2" clip-path="url(#terminal-1521612260-line-26)">
|
|
183
|
+
</text><text class="terminal-1521612260-r1" x="0" y="678.8" textLength="280.6" clip-path="url(#terminal-1521612260-line-27)">│      ├── __init__.py</text><text class="terminal-1521612260-r1" x="976" y="678.8" textLength="12.2" clip-path="url(#terminal-1521612260-line-27)">
|
|
184
|
+
</text><text class="terminal-1521612260-r1" x="0" y="703.2" textLength="244" clip-path="url(#terminal-1521612260-line-28)">│      ├── admin.py</text><text class="terminal-1521612260-r1" x="976" y="703.2" textLength="12.2" clip-path="url(#terminal-1521612260-line-28)">
|
|
185
|
+
</text><text class="terminal-1521612260-r1" x="0" y="727.6" textLength="231.8" clip-path="url(#terminal-1521612260-line-29)">│      ├── apps.py</text><text class="terminal-1521612260-r1" x="976" y="727.6" textLength="12.2" clip-path="url(#terminal-1521612260-line-29)">
|
|
186
|
+
</text><text class="terminal-1521612260-r1" x="0" y="752" textLength="268.4" clip-path="url(#terminal-1521612260-line-30)">│      ├── migrations</text><text class="terminal-1521612260-r1" x="976" y="752" textLength="12.2" clip-path="url(#terminal-1521612260-line-30)">
|
|
187
|
+
</text><text class="terminal-1521612260-r1" x="0" y="776.4" textLength="256.2" clip-path="url(#terminal-1521612260-line-31)">│      └── models.py</text><text class="terminal-1521612260-r1" x="976" y="776.4" textLength="12.2" clip-path="url(#terminal-1521612260-line-31)">
|
|
188
|
+
</text><text class="terminal-1521612260-r1" x="0" y="800.8" textLength="219.6" clip-path="url(#terminal-1521612260-line-32)">└── pyproject.toml</text><text class="terminal-1521612260-r1" x="976" y="800.8" textLength="12.2" clip-path="url(#terminal-1521612260-line-32)">
|
|
189
|
+
</text><text class="terminal-1521612260-r1" x="976" y="825.2" textLength="12.2" clip-path="url(#terminal-1521612260-line-33)">
|
|
190
|
+
</text><text class="terminal-1521612260-r1" x="0" y="849.6" textLength="292.8" clip-path="url(#terminal-1521612260-line-34)">11 directories, 21 files</text><text class="terminal-1521612260-r1" x="976" y="849.6" textLength="12.2" clip-path="url(#terminal-1521612260-line-34)">
|
|
191
|
+
</text>
|
|
192
|
+
</g>
|
|
193
|
+
</g>
|
|
194
|
+
</svg>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
|
|
2
|
+
.. figure:: https://raw.githubusercontent.com/Tobi-De/falco/main/assets/falco-logo.svg
|
|
3
|
+
:width: 200
|
|
4
|
+
:height: 200
|
|
5
|
+
:align: center
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
.. raw:: html
|
|
9
|
+
|
|
10
|
+
<div style="display: flex; flex-wrap: wrap; gap: 10px;">
|
|
11
|
+
<img src="https://github.com/Tobi-De/falco/actions/workflows/documentation.yml/badge.svg">
|
|
12
|
+
<img src="https://github.com/Tobi-De/falco/actions/workflows/ci.yml/badge.svg">
|
|
13
|
+
<img src="https://badge.fury.io/py/falco-cli.svg">
|
|
14
|
+
<img src="https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg">
|
|
15
|
+
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json">
|
|
16
|
+
<img src="https://img.shields.io/badge/license-MIT-blue.svg">
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
.. include:: ../README.md
|
|
21
|
+
:parser: myst_parser.sphinx_
|
|
22
|
+
:start-after: <!-- start-docs -->
|
|
23
|
+
:end-before: <!-- end-docs -->
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
.. toctree::
|
|
27
|
+
:caption: Getting started
|
|
28
|
+
:hidden:
|
|
29
|
+
|
|
30
|
+
install
|
|
31
|
+
the_cli/index
|
|
32
|
+
guides/index
|
|
33
|
+
tips_and_extra
|
|
34
|
+
|
|
35
|
+
.. toctree::
|
|
36
|
+
:caption: Development
|
|
37
|
+
:hidden:
|
|
38
|
+
|
|
39
|
+
contributing
|
|
40
|
+
codeofconduct
|
|
41
|
+
license
|
|
@@ -41,7 +41,7 @@ Features
|
|
|
41
41
|
- `Sentry <https://sentry.io/welcome/>`_ for performance/error monitoring
|
|
42
42
|
- Serve static files with `Whitenoise <https://whitenoise.evans.io/en/latest/>`_
|
|
43
43
|
- Default integration with `pre-commit <https://github.com/pre-commit/pre-commit>`_ for identifying simple issues before submission to code review
|
|
44
|
-
- Dependency management using `hatch <https://github.com/pypa/hatch>`_
|
|
44
|
+
- Dependency management using `hatch <https://github.com/pypa/hatch>`_
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
|
|
@@ -104,7 +104,7 @@ Browser reload
|
|
|
104
104
|
--------------
|
|
105
105
|
|
|
106
106
|
Debug Toolbar
|
|
107
|
-
|
|
107
|
+
-------------
|
|
108
108
|
|
|
109
109
|
|
|
110
110
|
Logging
|
|
@@ -29,7 +29,7 @@ classifiers = [
|
|
|
29
29
|
]
|
|
30
30
|
dependencies = [
|
|
31
31
|
"django<5",
|
|
32
|
-
"
|
|
32
|
+
# "cappa @ git+https://github.com/DanCardin/cappa.git@dc90d801f247a802e82f3a888cba553d114e0569",
|
|
33
33
|
"cappa",
|
|
34
34
|
"rich",
|
|
35
35
|
"httpx",
|
|
@@ -40,11 +40,14 @@ dependencies = [
|
|
|
40
40
|
"black",
|
|
41
41
|
"isort",
|
|
42
42
|
]
|
|
43
|
+
[tool.hatch.metadata]
|
|
44
|
+
allow-direct-references = true
|
|
43
45
|
|
|
44
46
|
[project.scripts]
|
|
45
47
|
falco = "falco.__main__:main"
|
|
46
48
|
|
|
47
49
|
[project.urls]
|
|
50
|
+
Homepage = "https://falco.oluwatobi.dev/"
|
|
48
51
|
Documentation = "https://falco.oluwatobi.dev/"
|
|
49
52
|
Issues = "https://github.com/tobi-de/falco/issues"
|
|
50
53
|
Source = "https://github.com/tobi-de/falco"
|
|
@@ -16,7 +16,15 @@ from falco.commands import Work
|
|
|
16
16
|
""",
|
|
17
17
|
)
|
|
18
18
|
class Falco:
|
|
19
|
-
subcommand: cappa.Subcommands[
|
|
19
|
+
subcommand: cappa.Subcommands[
|
|
20
|
+
StartProject
|
|
21
|
+
| ModelCRUD
|
|
22
|
+
| Htmx
|
|
23
|
+
| HtmxExtension
|
|
24
|
+
| Work
|
|
25
|
+
| SyncDotenv
|
|
26
|
+
| RmMigrations
|
|
27
|
+
]
|
|
20
28
|
|
|
21
29
|
|
|
22
30
|
def main():
|