quickscale-cli 0.57.1__tar.gz → 0.58.0__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.
@@ -0,0 +1,163 @@
1
+ Metadata-Version: 2.1
2
+ Name: quickscale-cli
3
+ Version: 0.58.0
4
+ Summary: Command-line interface for QuickScale Django project generator
5
+ Home-page: https://github.com/Experto-AI/quickscale
6
+ License: Apache-2.0
7
+ Keywords: django,cli,project-generator,saas
8
+ Author: Experto AI
9
+ Author-email: victor@experto.ai
10
+ Requires-Python: >=3.10,<4.0
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Framework :: Django
13
+ Classifier: Framework :: Django :: 4.2
14
+ Classifier: Framework :: Django :: 5.0
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: License :: OSI Approved :: Apache Software License
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Requires-Dist: click (>=8.1.0,<9.0.0)
22
+ Requires-Dist: quickscale-core (>=0.58.0,<0.59.0)
23
+ Project-URL: Documentation, https://github.com/Experto-AI/quickscale/tree/main/docs
24
+ Project-URL: Repository, https://github.com/Experto-AI/quickscale
25
+ Description-Content-Type: text/markdown
26
+
27
+ # 🚀 QuickScale
28
+
29
+ <!--
30
+ README.md - User-Focused Introduction
31
+
32
+ PURPOSE: This file serves as the first contact point for users, developers, and evaluators visiting the QuickScale project.
33
+
34
+ CONTENT GUIDELINES:
35
+ - Keep content user-facing and accessible to newcomers
36
+ - Focus on "what" and "how to get started" rather than "why" or technical details
37
+ - Include quick examples and development workflows
38
+ - Avoid deep architectural explanations (those belong in DECISIONS.md)
39
+ - Avoid competitive analysis or strategic context (those belong in QUICKSCALE.md)
40
+ - Maximum length: ~200 lines to ensure quick readability
41
+ - Link to other documents for detailed information
42
+
43
+ TARGET AUDIENCE: New users, potential adopters, GitHub visitors, developers evaluating QuickScale
44
+ -->
45
+
46
+ ---
47
+
48
+ ## QuickScale: Compose your Django SaaS.
49
+
50
+ QuickScale is a **composable Django framework** for building client SaaS applications. Start with a stable core, add reusable modules, customize themes, and deploy faster—while maintaining the flexibility to create commercial extensions and build a community ecosystem.
51
+
52
+ ---
53
+
54
+ ## What is QuickScale?
55
+
56
+ QuickScale is a **composable Django framework** designed for **solo developers and development agencies** who build multiple client SaaS applications. It provides a stable foundation with reusable components, enabling you to:
57
+
58
+ - **Build once, reuse everywhere**: Create modules and themes that work across all your client projects
59
+ - **Maintain commercial flexibility**: Keep core components open source while offering premium modules/themes via subscriptions
60
+ - **Scale your development business**: Standardize your tech stack and accelerate client project delivery
61
+ - **Build a community ecosystem**: Share and monetize your extensions while benefiting from community contributions
62
+
63
+ 🧭 **Evolution Snapshot**: QuickScale intentionally ships as a personal toolkit today and only grows into a community platform when real demand emerges. Catch the full story in the [evolution overview](./docs/overview/quickscale.md#evolution-strategy-personal-toolkit-first).
64
+
65
+ ## Documentation Guide
66
+
67
+ **Start here for your needs:**
68
+ - 📖 **New user?** You're in the right place. This README shows you what QuickScale is and how to get started.
69
+ - 🔧 **Need commands?** See [user_manual.md](./docs/technical/user_manual.md) for all commands and workflows
70
+ - 📋 **Planning a feature?** Check [decisions.md](./docs/technical/decisions.md) for the authoritative MVP scope and technical rules
71
+ - 🗓️ **Timeline & tasks?** See [roadmap.md](./docs/technical/roadmap.md)
72
+ - 🏗️ **Project structure?** See [scaffolding.md](./docs/technical/scaffolding.md) for complete directory layouts
73
+ - 🎯 **Why QuickScale?** See [quickscale.md](./docs/overview/quickscale.md) for competitive positioning
74
+
75
+ **Quick Reference:**
76
+ - **MVP** = Phase 1 (Personal Toolkit)
77
+ - **Post-MVP** = Phase 2+ (Modules & Themes)
78
+ - **Generated Project** = Output of `quickscale init`
79
+
80
+ See [decisions.md - Glossary section](./docs/technical/decisions.md#document-responsibilities-short) for complete terminology and Single Source of Truth reference
81
+
82
+
83
+ ### Primary Use Cases:
84
+ - **Solo Developer**: Build client projects faster with reusable components you maintain
85
+ - **Development Agency**: Standardize your tech stack across multiple client engagements
86
+ - **Commercial Extension Developer**: Create and sell premium modules/themes
87
+ - **Open Source Contributor**: Extend the ecosystem with new modules and themes
88
+
89
+ ### Development Flow (MVP)
90
+ 1. `quickscale init myapp`
91
+ - Generates the minimal Django starter described in the MVP Feature Matrix
92
+ - Ships with standalone `settings.py` by default; there is NO automatic settings inheritance. Advanced users who manually embed `quickscale_core` via git subtree may opt-in to inherit from `quickscale_core.settings` (see [decisions.md](./docs/technical/decisions.md#mvp-feature-matrix-authoritative)).
93
+ - **Optional**: Embed `quickscale_core` via git subtree after generation; follow the [Personal Toolkit workflow](./docs/technical/decisions.md#integration-note-personal-toolkit-git-subtree) for canonical commands and helper roadmap
94
+ 2. Add your custom Django apps and features
95
+ 3. Adopt optional inheritance or module extraction patterns only when you embed the core; the rules and best practices stay centralized in `DECISIONS.md`
96
+ 4. Build your unique client application
97
+ 5. Deploy using standard Django deployment patterns
98
+
99
+ ℹ️ QuickScale's MVP centers on the personal toolkit workflow. Extraction patterns, module packaging, and subtree helper command plans stay documented in `docs/technical/decisions.md` so this README can stay concise.
100
+
101
+ 🔎 **Scope note**: The [MVP Feature Matrix](./docs/technical/decisions.md#mvp-feature-matrix-authoritative) is the single source of truth for what's in or out.
102
+
103
+ ### What You Get
104
+
105
+ Running `quickscale init myapp` generates a **production-ready Django project** with:
106
+
107
+ - ✅ **Docker** setup (development + production)
108
+ - ✅ **PostgreSQL** configuration
109
+ - ✅ **Environment-based** settings (dev/prod split)
110
+ - ✅ **Security** best practices (SECRET_KEY, ALLOWED_HOSTS, etc.)
111
+ - ✅ **Testing** infrastructure (pytest + factory_boy)
112
+ - ✅ **CI/CD** pipeline (GitHub Actions)
113
+ - ✅ **Code quality** hooks (ruff format + ruff check)
114
+ - ✅ **Poetry** for dependency management
115
+
116
+ **See the complete project structure:** [scaffolding.md - Generated Project Output](./docs/technical/scaffolding.md#5-generated-project-output)
117
+
118
+ The generated project is **yours to own and modify** - no vendor lock-in, just Django best practices.
119
+
120
+ ## Why QuickScale?
121
+
122
+ ✅ **Production-ready from day one** - Docker, PostgreSQL, pytest, CI/CD, security best practices
123
+ ✅ **Built on Django** - No magic, just excellent Django patterns and battle-tested packages
124
+ ✅ **Shared improvements** - Security fixes and updates flow across all your projects via git subtree
125
+ ✅ **Full ownership** - Generated projects are 100% yours, no vendor lock-in
126
+
127
+ **QuickScale is a development accelerator**, not a complete solution. You start with production-ready foundations and build your unique client application on top.
128
+
129
+ See [competitive_analysis.md](./docs/overview/competitive_analysis.md) for detailed comparison with SaaS Pegasus and Cookiecutter.
130
+
131
+ ---
132
+
133
+
134
+ ## Quick Start
135
+
136
+ ```bash
137
+ # Install QuickScale globally
138
+ ./scripts/install_global.sh
139
+
140
+ # Create your first project
141
+ quickscale init myapp
142
+
143
+ # Start developing
144
+ cd myapp
145
+ poetry install
146
+ poetry run python manage.py migrate
147
+ poetry run python manage.py runserver
148
+ ```
149
+
150
+ **That's it!** Visit http://localhost:8000 to see your new Django project.
151
+
152
+ **For complete command reference and workflows**, see the [user_manual.md](./docs/technical/user_manual.md).
153
+
154
+ ## Learn More
155
+
156
+ - **[decisions.md](./docs/technical/decisions.md)** - Technical specifications and implementation rules
157
+ - **[quickscale.md](./docs/overview/quickscale.md)** - Strategic vision and competitive positioning
158
+ - **[competitive_analysis.md](./docs/overview/competitive_analysis.md)** - Comparison vs SaaS Pegasus and alternatives
159
+ - **[roadmap.md](./docs/technical/roadmap.md)** - Development roadmap and implementation plan
160
+ - **[user_manual.md](./docs/technical/user_manual.md)** - Commands and workflows
161
+ - **[contributing.md](./docs/contrib/contributing.md)** - Development workflow and coding standards
162
+
163
+
@@ -0,0 +1,136 @@
1
+ # 🚀 QuickScale
2
+
3
+ <!--
4
+ README.md - User-Focused Introduction
5
+
6
+ PURPOSE: This file serves as the first contact point for users, developers, and evaluators visiting the QuickScale project.
7
+
8
+ CONTENT GUIDELINES:
9
+ - Keep content user-facing and accessible to newcomers
10
+ - Focus on "what" and "how to get started" rather than "why" or technical details
11
+ - Include quick examples and development workflows
12
+ - Avoid deep architectural explanations (those belong in DECISIONS.md)
13
+ - Avoid competitive analysis or strategic context (those belong in QUICKSCALE.md)
14
+ - Maximum length: ~200 lines to ensure quick readability
15
+ - Link to other documents for detailed information
16
+
17
+ TARGET AUDIENCE: New users, potential adopters, GitHub visitors, developers evaluating QuickScale
18
+ -->
19
+
20
+ ---
21
+
22
+ ## QuickScale: Compose your Django SaaS.
23
+
24
+ QuickScale is a **composable Django framework** for building client SaaS applications. Start with a stable core, add reusable modules, customize themes, and deploy faster—while maintaining the flexibility to create commercial extensions and build a community ecosystem.
25
+
26
+ ---
27
+
28
+ ## What is QuickScale?
29
+
30
+ QuickScale is a **composable Django framework** designed for **solo developers and development agencies** who build multiple client SaaS applications. It provides a stable foundation with reusable components, enabling you to:
31
+
32
+ - **Build once, reuse everywhere**: Create modules and themes that work across all your client projects
33
+ - **Maintain commercial flexibility**: Keep core components open source while offering premium modules/themes via subscriptions
34
+ - **Scale your development business**: Standardize your tech stack and accelerate client project delivery
35
+ - **Build a community ecosystem**: Share and monetize your extensions while benefiting from community contributions
36
+
37
+ 🧭 **Evolution Snapshot**: QuickScale intentionally ships as a personal toolkit today and only grows into a community platform when real demand emerges. Catch the full story in the [evolution overview](./docs/overview/quickscale.md#evolution-strategy-personal-toolkit-first).
38
+
39
+ ## Documentation Guide
40
+
41
+ **Start here for your needs:**
42
+ - 📖 **New user?** You're in the right place. This README shows you what QuickScale is and how to get started.
43
+ - 🔧 **Need commands?** See [user_manual.md](./docs/technical/user_manual.md) for all commands and workflows
44
+ - 📋 **Planning a feature?** Check [decisions.md](./docs/technical/decisions.md) for the authoritative MVP scope and technical rules
45
+ - 🗓️ **Timeline & tasks?** See [roadmap.md](./docs/technical/roadmap.md)
46
+ - 🏗️ **Project structure?** See [scaffolding.md](./docs/technical/scaffolding.md) for complete directory layouts
47
+ - 🎯 **Why QuickScale?** See [quickscale.md](./docs/overview/quickscale.md) for competitive positioning
48
+
49
+ **Quick Reference:**
50
+ - **MVP** = Phase 1 (Personal Toolkit)
51
+ - **Post-MVP** = Phase 2+ (Modules & Themes)
52
+ - **Generated Project** = Output of `quickscale init`
53
+
54
+ See [decisions.md - Glossary section](./docs/technical/decisions.md#document-responsibilities-short) for complete terminology and Single Source of Truth reference
55
+
56
+
57
+ ### Primary Use Cases:
58
+ - **Solo Developer**: Build client projects faster with reusable components you maintain
59
+ - **Development Agency**: Standardize your tech stack across multiple client engagements
60
+ - **Commercial Extension Developer**: Create and sell premium modules/themes
61
+ - **Open Source Contributor**: Extend the ecosystem with new modules and themes
62
+
63
+ ### Development Flow (MVP)
64
+ 1. `quickscale init myapp`
65
+ - Generates the minimal Django starter described in the MVP Feature Matrix
66
+ - Ships with standalone `settings.py` by default; there is NO automatic settings inheritance. Advanced users who manually embed `quickscale_core` via git subtree may opt-in to inherit from `quickscale_core.settings` (see [decisions.md](./docs/technical/decisions.md#mvp-feature-matrix-authoritative)).
67
+ - **Optional**: Embed `quickscale_core` via git subtree after generation; follow the [Personal Toolkit workflow](./docs/technical/decisions.md#integration-note-personal-toolkit-git-subtree) for canonical commands and helper roadmap
68
+ 2. Add your custom Django apps and features
69
+ 3. Adopt optional inheritance or module extraction patterns only when you embed the core; the rules and best practices stay centralized in `DECISIONS.md`
70
+ 4. Build your unique client application
71
+ 5. Deploy using standard Django deployment patterns
72
+
73
+ ℹ️ QuickScale's MVP centers on the personal toolkit workflow. Extraction patterns, module packaging, and subtree helper command plans stay documented in `docs/technical/decisions.md` so this README can stay concise.
74
+
75
+ 🔎 **Scope note**: The [MVP Feature Matrix](./docs/technical/decisions.md#mvp-feature-matrix-authoritative) is the single source of truth for what's in or out.
76
+
77
+ ### What You Get
78
+
79
+ Running `quickscale init myapp` generates a **production-ready Django project** with:
80
+
81
+ - ✅ **Docker** setup (development + production)
82
+ - ✅ **PostgreSQL** configuration
83
+ - ✅ **Environment-based** settings (dev/prod split)
84
+ - ✅ **Security** best practices (SECRET_KEY, ALLOWED_HOSTS, etc.)
85
+ - ✅ **Testing** infrastructure (pytest + factory_boy)
86
+ - ✅ **CI/CD** pipeline (GitHub Actions)
87
+ - ✅ **Code quality** hooks (ruff format + ruff check)
88
+ - ✅ **Poetry** for dependency management
89
+
90
+ **See the complete project structure:** [scaffolding.md - Generated Project Output](./docs/technical/scaffolding.md#5-generated-project-output)
91
+
92
+ The generated project is **yours to own and modify** - no vendor lock-in, just Django best practices.
93
+
94
+ ## Why QuickScale?
95
+
96
+ ✅ **Production-ready from day one** - Docker, PostgreSQL, pytest, CI/CD, security best practices
97
+ ✅ **Built on Django** - No magic, just excellent Django patterns and battle-tested packages
98
+ ✅ **Shared improvements** - Security fixes and updates flow across all your projects via git subtree
99
+ ✅ **Full ownership** - Generated projects are 100% yours, no vendor lock-in
100
+
101
+ **QuickScale is a development accelerator**, not a complete solution. You start with production-ready foundations and build your unique client application on top.
102
+
103
+ See [competitive_analysis.md](./docs/overview/competitive_analysis.md) for detailed comparison with SaaS Pegasus and Cookiecutter.
104
+
105
+ ---
106
+
107
+
108
+ ## Quick Start
109
+
110
+ ```bash
111
+ # Install QuickScale globally
112
+ ./scripts/install_global.sh
113
+
114
+ # Create your first project
115
+ quickscale init myapp
116
+
117
+ # Start developing
118
+ cd myapp
119
+ poetry install
120
+ poetry run python manage.py migrate
121
+ poetry run python manage.py runserver
122
+ ```
123
+
124
+ **That's it!** Visit http://localhost:8000 to see your new Django project.
125
+
126
+ **For complete command reference and workflows**, see the [user_manual.md](./docs/technical/user_manual.md).
127
+
128
+ ## Learn More
129
+
130
+ - **[decisions.md](./docs/technical/decisions.md)** - Technical specifications and implementation rules
131
+ - **[quickscale.md](./docs/overview/quickscale.md)** - Strategic vision and competitive positioning
132
+ - **[competitive_analysis.md](./docs/overview/competitive_analysis.md)** - Comparison vs SaaS Pegasus and alternatives
133
+ - **[roadmap.md](./docs/technical/roadmap.md)** - Development roadmap and implementation plan
134
+ - **[user_manual.md](./docs/technical/user_manual.md)** - Commands and workflows
135
+ - **[contributing.md](./docs/contrib/contributing.md)** - Development workflow and coding standards
136
+
@@ -1,9 +1,10 @@
1
1
  [tool.poetry]
2
2
  name = "quickscale-cli"
3
- version = "0.57.1"
3
+ version = "0.58.0"
4
4
  description = "Command-line interface for QuickScale Django project generator"
5
5
  authors = ["Experto AI <victor@experto.ai>"]
6
6
  license = "Apache-2.0"
7
+ readme = "README.md"
7
8
  keywords = ["django", "cli", "project-generator", "saas"]
8
9
  homepage = "https://github.com/Experto-AI/quickscale"
9
10
  repository = "https://github.com/Experto-AI/quickscale"
@@ -25,7 +26,7 @@ packages = [{include = "quickscale_cli", from = "src"}]
25
26
  [tool.poetry.dependencies]
26
27
  python = "^3.10"
27
28
  click = "^8.1.0"
28
- quickscale-core = "^0.57.1"
29
+ quickscale-core = "^0.58.0"
29
30
 
30
31
  [tool.poetry.group.dev.dependencies]
31
32
  pytest = "^7.4.0"
@@ -1,4 +1,5 @@
1
- """QuickScale CLI package.
1
+ """
2
+ QuickScale CLI package.
2
3
 
3
4
  Reads the canonical version from the repository-level `VERSION` file so the CLI
4
5
  stays in sync with other packages when the release is bumped in one place.
@@ -7,14 +8,13 @@ stays in sync with other packages when the release is bumped in one place.
7
8
  from __future__ import annotations
8
9
 
9
10
  from pathlib import Path
10
- from typing import Tuple
11
11
 
12
12
  __author__ = "Experto AI"
13
13
  __email__ = "victor@experto.ai"
14
14
 
15
15
  # Prefer an embedded package-level `_version.py` if it exists (build step).
16
16
  try:
17
- from ._version import __version__ # type: ignore
17
+ from ._version import __version__
18
18
  except Exception:
19
19
  _root = Path(__file__).resolve().parents[3]
20
20
  _version_file = _root / "VERSION"
@@ -25,7 +25,7 @@ except Exception:
25
25
 
26
26
  # Version tuple for programmatic access
27
27
  parts = __version__.split("-")[0].split(".")
28
- VERSION: Tuple[int, int, int] = (
28
+ VERSION: tuple[int, int, int] = (
29
29
  int(parts[0]) if len(parts) > 0 else 0,
30
30
  int(parts[1]) if len(parts) > 1 else 0,
31
31
  int(parts[2]) if len(parts) > 2 else 0,
@@ -1,2 +1,2 @@
1
1
  # Auto-generated by scripts/version_tool.sh
2
- __version__ = "0.57.0"
2
+ __version__ = "0.58.0"
@@ -1,24 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: quickscale-cli
3
- Version: 0.57.1
4
- Summary: Command-line interface for QuickScale Django project generator
5
- Home-page: https://github.com/Experto-AI/quickscale
6
- License: Apache-2.0
7
- Keywords: django,cli,project-generator,saas
8
- Author: Experto AI
9
- Author-email: victor@experto.ai
10
- Requires-Python: >=3.10,<4.0
11
- Classifier: Development Status :: 3 - Alpha
12
- Classifier: Framework :: Django
13
- Classifier: Framework :: Django :: 4.2
14
- Classifier: Framework :: Django :: 5.0
15
- Classifier: Intended Audience :: Developers
16
- Classifier: License :: OSI Approved :: Apache Software License
17
- Classifier: Programming Language :: Python :: 3
18
- Classifier: Programming Language :: Python :: 3.10
19
- Classifier: Programming Language :: Python :: 3.11
20
- Classifier: Programming Language :: Python :: 3.12
21
- Requires-Dist: click (>=8.1.0,<9.0.0)
22
- Requires-Dist: quickscale-core (>=0.57.1,<0.58.0)
23
- Project-URL: Documentation, https://github.com/Experto-AI/quickscale/tree/main/docs
24
- Project-URL: Repository, https://github.com/Experto-AI/quickscale