quickscale-cli 0.59.0__tar.gz → 0.61.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.
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/PKG-INFO +51 -31
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/README.md +49 -29
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/pyproject.toml +2 -2
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/_version.py +1 -1
- quickscale_cli-0.61.0/src/quickscale_cli/commands/deployment_commands.py +447 -0
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/commands/development_commands.py +33 -6
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/main.py +62 -8
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/utils/docker_utils.py +6 -0
- quickscale_cli-0.61.0/src/quickscale_cli/utils/railway_utils.py +664 -0
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/__init__.py +0 -0
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/commands/__init__.py +0 -0
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/utils/__init__.py +0 -0
- {quickscale_cli-0.59.0 → quickscale_cli-0.61.0}/src/quickscale_cli/utils/project_manager.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: quickscale-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.61.0
|
|
4
4
|
Summary: Command-line interface for QuickScale Django project generator
|
|
5
5
|
Home-page: https://github.com/Experto-AI/quickscale
|
|
6
6
|
License: Apache-2.0
|
|
@@ -19,7 +19,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
19
19
|
Classifier: Programming Language :: Python :: 3.11
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.12
|
|
21
21
|
Requires-Dist: click (>=8.1.0,<9.0.0)
|
|
22
|
-
Requires-Dist: quickscale-core (>=0.
|
|
22
|
+
Requires-Dist: quickscale-core (>=0.61.0,<0.62.0)
|
|
23
23
|
Project-URL: Documentation, https://github.com/Experto-AI/quickscale/tree/main/docs
|
|
24
24
|
Project-URL: Repository, https://github.com/Experto-AI/quickscale
|
|
25
25
|
Description-Content-Type: text/markdown
|
|
@@ -53,14 +53,14 @@ QuickScale is a **composable Django framework** for building client SaaS applica
|
|
|
53
53
|
|
|
54
54
|
## What is QuickScale?
|
|
55
55
|
|
|
56
|
-
QuickScale is a **
|
|
56
|
+
QuickScale is a **Django project generator** that creates production-ready SaaS applications with one command. Designed for **solo developers and development agencies**, it gives you:
|
|
57
57
|
|
|
58
|
-
- **
|
|
59
|
-
- **
|
|
60
|
-
- **
|
|
61
|
-
- **
|
|
58
|
+
- **Production-ready foundations**: Docker, PostgreSQL, testing, CI/CD, and security out-of-the-box
|
|
59
|
+
- **One-command deployment**: Deploy to Railway with `quickscale deploy railway`
|
|
60
|
+
- **Full ownership**: Generated projects are 100% yours to customize—no vendor lock-in
|
|
61
|
+
- **Standardized stack**: Build multiple client projects faster with consistent best practices
|
|
62
62
|
|
|
63
|
-
🧭 **
|
|
63
|
+
🧭 **Future Vision**: QuickScale will evolve to support reusable modules and themes. Today it's a personal toolkit; tomorrow it becomes a community platform when demand emerges. [Read the full evolution strategy](./docs/overview/quickscale.md#evolution-strategy-personal-toolkit-first).
|
|
64
64
|
|
|
65
65
|
## Documentation Guide
|
|
66
66
|
|
|
@@ -81,11 +81,13 @@ QuickScale is a **composable Django framework** designed for **solo developers a
|
|
|
81
81
|
See [decisions.md - Glossary section](./docs/technical/decisions.md#document-responsibilities-short) for complete terminology and Single Source of Truth reference
|
|
82
82
|
|
|
83
83
|
|
|
84
|
-
### Primary Use Cases:
|
|
85
|
-
- **Solo Developer**: Build client projects faster with
|
|
86
|
-
- **Development Agency**: Standardize your tech stack across
|
|
84
|
+
### Primary Use Cases (MVP):
|
|
85
|
+
- **Solo Developer**: Build client projects faster with production-ready foundations
|
|
86
|
+
- **Development Agency**: Standardize your tech stack across client engagements
|
|
87
|
+
|
|
88
|
+
### Future Use Cases (Post-MVP):
|
|
87
89
|
- **Commercial Extension Developer**: Create and sell premium modules/themes
|
|
88
|
-
- **Open Source Contributor**: Extend the ecosystem with
|
|
90
|
+
- **Open Source Contributor**: Extend the ecosystem with modules and themes
|
|
89
91
|
|
|
90
92
|
### Development Flow (MVP)
|
|
91
93
|
1. `quickscale init myapp`
|
|
@@ -95,7 +97,7 @@ See [decisions.md - Glossary section](./docs/technical/decisions.md#document-res
|
|
|
95
97
|
2. Add your custom Django apps and features
|
|
96
98
|
3. Adopt optional inheritance or module extraction patterns only when you embed the core; the rules and best practices stay centralized in `DECISIONS.md`
|
|
97
99
|
4. Build your unique client application
|
|
98
|
-
5. Deploy
|
|
100
|
+
5. Deploy to Railway with `quickscale deploy railway` (or use standard Django deployment)
|
|
99
101
|
|
|
100
102
|
ℹ️ 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.
|
|
101
103
|
|
|
@@ -113,17 +115,18 @@ Running `quickscale init myapp` generates a **production-ready Django project**
|
|
|
113
115
|
- ✅ **CI/CD** pipeline (GitHub Actions)
|
|
114
116
|
- ✅ **Code quality** hooks (ruff format + ruff check)
|
|
115
117
|
- ✅ **Poetry** for dependency management
|
|
118
|
+
- ✅ **One-Command Deployment**: Deploy to Railway with `quickscale deploy railway` - fully automated setup
|
|
116
119
|
|
|
117
120
|
**See the complete project structure:** [scaffolding.md - Generated Project Output](./docs/technical/scaffolding.md#5-generated-project-output)
|
|
118
121
|
|
|
119
122
|
The generated project is **yours to own and modify** - no vendor lock-in, just Django best practices.
|
|
120
123
|
|
|
121
|
-
## Why QuickScale?
|
|
124
|
+
## Why QuickScale vs. Alternatives?
|
|
122
125
|
|
|
123
|
-
✅ **
|
|
124
|
-
✅ **
|
|
125
|
-
✅ **
|
|
126
|
-
✅ **
|
|
126
|
+
✅ **Faster than Cookiecutter** - One command vs. 30+ interactive prompts
|
|
127
|
+
✅ **More flexible than SaaS Pegasus** - Open source with full code ownership ($0 vs. $349+)
|
|
128
|
+
✅ **Simpler than building from scratch** - Production-ready in 5 minutes vs. days of setup
|
|
129
|
+
✅ **Railway deployment automation** - Competitors require manual platform configuration
|
|
127
130
|
|
|
128
131
|
**QuickScale is a development accelerator**, not a complete solution. You start with production-ready foundations and build your unique client application on top.
|
|
129
132
|
|
|
@@ -140,31 +143,31 @@ See [competitive_analysis.md](./docs/overview/competitive_analysis.md) for detai
|
|
|
140
143
|
|
|
141
144
|
# Create your first project
|
|
142
145
|
quickscale init myapp
|
|
143
|
-
|
|
144
|
-
# Start developing
|
|
145
146
|
cd myapp
|
|
146
|
-
poetry install
|
|
147
|
-
poetry run python manage.py migrate
|
|
148
|
-
poetry run python manage.py runserver
|
|
149
|
-
```
|
|
150
147
|
|
|
151
|
-
|
|
148
|
+
# Or choose a specific theme (v0.61.0+)
|
|
149
|
+
# quickscale init myapp --theme starter_html # Default HTML theme
|
|
150
|
+
# quickscale init myapp --theme starter_htmx # HTMX theme (coming in v0.67.0)
|
|
151
|
+
# quickscale init myapp --theme starter_react # React theme (coming in v0.68.0)
|
|
152
|
+
```
|
|
152
153
|
|
|
153
|
-
|
|
154
|
+
**Choose your development workflow:**
|
|
154
155
|
|
|
155
|
-
|
|
156
|
+
### Option 1: Docker (Recommended for production parity)
|
|
156
157
|
|
|
157
158
|
```bash
|
|
158
159
|
# Start all services (web + database)
|
|
159
160
|
quickscale up
|
|
160
161
|
|
|
161
|
-
#
|
|
162
|
-
quickscale logs -f web
|
|
163
|
-
|
|
164
|
-
# Run Django commands
|
|
162
|
+
# Run migrations
|
|
165
163
|
quickscale manage migrate
|
|
164
|
+
|
|
165
|
+
# Create superuser
|
|
166
166
|
quickscale manage createsuperuser
|
|
167
167
|
|
|
168
|
+
# View logs
|
|
169
|
+
quickscale logs -f web
|
|
170
|
+
|
|
168
171
|
# Open a shell in the container
|
|
169
172
|
quickscale shell
|
|
170
173
|
|
|
@@ -172,6 +175,23 @@ quickscale shell
|
|
|
172
175
|
quickscale down
|
|
173
176
|
```
|
|
174
177
|
|
|
178
|
+
**Visit http://localhost:8000** - Your app is running in Docker with PostgreSQL!
|
|
179
|
+
|
|
180
|
+
### Option 2: Native Poetry (Simpler for quick testing)
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
# Install dependencies
|
|
184
|
+
poetry install
|
|
185
|
+
|
|
186
|
+
# Run migrations
|
|
187
|
+
poetry run python manage.py migrate
|
|
188
|
+
|
|
189
|
+
# Start development server
|
|
190
|
+
poetry run python manage.py runserver
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**Visit http://localhost:8000** - Your app is running natively!
|
|
194
|
+
|
|
175
195
|
**For complete command reference and workflows**, see the [user_manual.md](./docs/technical/user_manual.md).
|
|
176
196
|
|
|
177
197
|
## Learn More
|
|
@@ -27,14 +27,14 @@ QuickScale is a **composable Django framework** for building client SaaS applica
|
|
|
27
27
|
|
|
28
28
|
## What is QuickScale?
|
|
29
29
|
|
|
30
|
-
QuickScale is a **
|
|
30
|
+
QuickScale is a **Django project generator** that creates production-ready SaaS applications with one command. Designed for **solo developers and development agencies**, it gives you:
|
|
31
31
|
|
|
32
|
-
- **
|
|
33
|
-
- **
|
|
34
|
-
- **
|
|
35
|
-
- **
|
|
32
|
+
- **Production-ready foundations**: Docker, PostgreSQL, testing, CI/CD, and security out-of-the-box
|
|
33
|
+
- **One-command deployment**: Deploy to Railway with `quickscale deploy railway`
|
|
34
|
+
- **Full ownership**: Generated projects are 100% yours to customize—no vendor lock-in
|
|
35
|
+
- **Standardized stack**: Build multiple client projects faster with consistent best practices
|
|
36
36
|
|
|
37
|
-
🧭 **
|
|
37
|
+
🧭 **Future Vision**: QuickScale will evolve to support reusable modules and themes. Today it's a personal toolkit; tomorrow it becomes a community platform when demand emerges. [Read the full evolution strategy](./docs/overview/quickscale.md#evolution-strategy-personal-toolkit-first).
|
|
38
38
|
|
|
39
39
|
## Documentation Guide
|
|
40
40
|
|
|
@@ -55,11 +55,13 @@ QuickScale is a **composable Django framework** designed for **solo developers a
|
|
|
55
55
|
See [decisions.md - Glossary section](./docs/technical/decisions.md#document-responsibilities-short) for complete terminology and Single Source of Truth reference
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
### Primary Use Cases:
|
|
59
|
-
- **Solo Developer**: Build client projects faster with
|
|
60
|
-
- **Development Agency**: Standardize your tech stack across
|
|
58
|
+
### Primary Use Cases (MVP):
|
|
59
|
+
- **Solo Developer**: Build client projects faster with production-ready foundations
|
|
60
|
+
- **Development Agency**: Standardize your tech stack across client engagements
|
|
61
|
+
|
|
62
|
+
### Future Use Cases (Post-MVP):
|
|
61
63
|
- **Commercial Extension Developer**: Create and sell premium modules/themes
|
|
62
|
-
- **Open Source Contributor**: Extend the ecosystem with
|
|
64
|
+
- **Open Source Contributor**: Extend the ecosystem with modules and themes
|
|
63
65
|
|
|
64
66
|
### Development Flow (MVP)
|
|
65
67
|
1. `quickscale init myapp`
|
|
@@ -69,7 +71,7 @@ See [decisions.md - Glossary section](./docs/technical/decisions.md#document-res
|
|
|
69
71
|
2. Add your custom Django apps and features
|
|
70
72
|
3. Adopt optional inheritance or module extraction patterns only when you embed the core; the rules and best practices stay centralized in `DECISIONS.md`
|
|
71
73
|
4. Build your unique client application
|
|
72
|
-
5. Deploy
|
|
74
|
+
5. Deploy to Railway with `quickscale deploy railway` (or use standard Django deployment)
|
|
73
75
|
|
|
74
76
|
ℹ️ 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.
|
|
75
77
|
|
|
@@ -87,17 +89,18 @@ Running `quickscale init myapp` generates a **production-ready Django project**
|
|
|
87
89
|
- ✅ **CI/CD** pipeline (GitHub Actions)
|
|
88
90
|
- ✅ **Code quality** hooks (ruff format + ruff check)
|
|
89
91
|
- ✅ **Poetry** for dependency management
|
|
92
|
+
- ✅ **One-Command Deployment**: Deploy to Railway with `quickscale deploy railway` - fully automated setup
|
|
90
93
|
|
|
91
94
|
**See the complete project structure:** [scaffolding.md - Generated Project Output](./docs/technical/scaffolding.md#5-generated-project-output)
|
|
92
95
|
|
|
93
96
|
The generated project is **yours to own and modify** - no vendor lock-in, just Django best practices.
|
|
94
97
|
|
|
95
|
-
## Why QuickScale?
|
|
98
|
+
## Why QuickScale vs. Alternatives?
|
|
96
99
|
|
|
97
|
-
✅ **
|
|
98
|
-
✅ **
|
|
99
|
-
✅ **
|
|
100
|
-
✅ **
|
|
100
|
+
✅ **Faster than Cookiecutter** - One command vs. 30+ interactive prompts
|
|
101
|
+
✅ **More flexible than SaaS Pegasus** - Open source with full code ownership ($0 vs. $349+)
|
|
102
|
+
✅ **Simpler than building from scratch** - Production-ready in 5 minutes vs. days of setup
|
|
103
|
+
✅ **Railway deployment automation** - Competitors require manual platform configuration
|
|
101
104
|
|
|
102
105
|
**QuickScale is a development accelerator**, not a complete solution. You start with production-ready foundations and build your unique client application on top.
|
|
103
106
|
|
|
@@ -114,31 +117,31 @@ See [competitive_analysis.md](./docs/overview/competitive_analysis.md) for detai
|
|
|
114
117
|
|
|
115
118
|
# Create your first project
|
|
116
119
|
quickscale init myapp
|
|
117
|
-
|
|
118
|
-
# Start developing
|
|
119
120
|
cd myapp
|
|
120
|
-
poetry install
|
|
121
|
-
poetry run python manage.py migrate
|
|
122
|
-
poetry run python manage.py runserver
|
|
123
|
-
```
|
|
124
121
|
|
|
125
|
-
|
|
122
|
+
# Or choose a specific theme (v0.61.0+)
|
|
123
|
+
# quickscale init myapp --theme starter_html # Default HTML theme
|
|
124
|
+
# quickscale init myapp --theme starter_htmx # HTMX theme (coming in v0.67.0)
|
|
125
|
+
# quickscale init myapp --theme starter_react # React theme (coming in v0.68.0)
|
|
126
|
+
```
|
|
126
127
|
|
|
127
|
-
|
|
128
|
+
**Choose your development workflow:**
|
|
128
129
|
|
|
129
|
-
|
|
130
|
+
### Option 1: Docker (Recommended for production parity)
|
|
130
131
|
|
|
131
132
|
```bash
|
|
132
133
|
# Start all services (web + database)
|
|
133
134
|
quickscale up
|
|
134
135
|
|
|
135
|
-
#
|
|
136
|
-
quickscale logs -f web
|
|
137
|
-
|
|
138
|
-
# Run Django commands
|
|
136
|
+
# Run migrations
|
|
139
137
|
quickscale manage migrate
|
|
138
|
+
|
|
139
|
+
# Create superuser
|
|
140
140
|
quickscale manage createsuperuser
|
|
141
141
|
|
|
142
|
+
# View logs
|
|
143
|
+
quickscale logs -f web
|
|
144
|
+
|
|
142
145
|
# Open a shell in the container
|
|
143
146
|
quickscale shell
|
|
144
147
|
|
|
@@ -146,6 +149,23 @@ quickscale shell
|
|
|
146
149
|
quickscale down
|
|
147
150
|
```
|
|
148
151
|
|
|
152
|
+
**Visit http://localhost:8000** - Your app is running in Docker with PostgreSQL!
|
|
153
|
+
|
|
154
|
+
### Option 2: Native Poetry (Simpler for quick testing)
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
# Install dependencies
|
|
158
|
+
poetry install
|
|
159
|
+
|
|
160
|
+
# Run migrations
|
|
161
|
+
poetry run python manage.py migrate
|
|
162
|
+
|
|
163
|
+
# Start development server
|
|
164
|
+
poetry run python manage.py runserver
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
**Visit http://localhost:8000** - Your app is running natively!
|
|
168
|
+
|
|
149
169
|
**For complete command reference and workflows**, see the [user_manual.md](./docs/technical/user_manual.md).
|
|
150
170
|
|
|
151
171
|
## Learn More
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "quickscale-cli"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.61.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"
|
|
@@ -26,7 +26,7 @@ packages = [{include = "quickscale_cli", from = "src"}]
|
|
|
26
26
|
[tool.poetry.dependencies]
|
|
27
27
|
python = "^3.10"
|
|
28
28
|
click = "^8.1.0"
|
|
29
|
-
quickscale-core = "^0.
|
|
29
|
+
quickscale-core = "^0.61.0"
|
|
30
30
|
|
|
31
31
|
[tool.poetry.group.dev.dependencies]
|
|
32
32
|
pytest = "^7.4.0"
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
# Auto-generated by scripts/version_tool.sh
|
|
2
|
-
__version__ = "0.
|
|
2
|
+
__version__ = "0.61.0"
|