quicklify 0.3.0 → 0.3.2
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.
- package/README.md +16 -9
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +32 -2
- package/dist/commands/init.js.map +1 -1
- package/dist/providers/hetzner.d.ts.map +1 -1
- package/dist/providers/hetzner.js +13 -5
- package/dist/providers/hetzner.js.map +1 -1
- package/dist/utils/prompts.d.ts +1 -1
- package/dist/utils/prompts.d.ts.map +1 -1
- package/dist/utils/prompts.js +3 -2
- package/dist/utils/prompts.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -29,19 +29,19 @@ Total: ~30 minutes + manual work
|
|
|
29
29
|
|
|
30
30
|
```bash
|
|
31
31
|
npx quicklify init
|
|
32
|
-
# Hetzner: ~5 minutes | DigitalOcean: ~
|
|
32
|
+
# Hetzner: ~5 minutes | DigitalOcean: ~6 minutes
|
|
33
33
|
# Zero manual work ✨
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
## ✨ Features
|
|
37
37
|
|
|
38
38
|
- 🎯 **One Command Deploy** - VPS + Coolify with a single command
|
|
39
|
-
- 💰 **Cost Savings** - $50-200/mo (Vercel/Netlify) → €3.
|
|
39
|
+
- 💰 **Cost Savings** - $50-200/mo (Vercel/Netlify) → €3.49/mo
|
|
40
40
|
- 🔒 **Secure by Default** - Automated security setup
|
|
41
41
|
- 🌍 **Multi-Cloud** - Hetzner Cloud + DigitalOcean
|
|
42
42
|
- 💻 **Beautiful CLI** - Interactive prompts with validation
|
|
43
43
|
- 🎨 **ARM64 Ready** - Support for cost-effective ARM servers
|
|
44
|
-
- ⚡ **Fast Setup** - Hetzner ~5 min, DigitalOcean ~
|
|
44
|
+
- ⚡ **Fast Setup** - Hetzner ~5 min, DigitalOcean ~6 min
|
|
45
45
|
- ✨ **Dynamic Server Types** - Only shows compatible types for selected location
|
|
46
46
|
- 🔥 **Auto Firewall** - Ports 8000, 22, 80, 443 configured automatically
|
|
47
47
|
- 🚀 **Zero SSH Required** - Opens directly in browser after deployment
|
|
@@ -95,7 +95,7 @@ You'll be prompted for:
|
|
|
95
95
|
|
|
96
96
|
### Step 3: Access Coolify
|
|
97
97
|
|
|
98
|
-
After deployment (Hetzner ~5 min, DigitalOcean ~
|
|
98
|
+
After deployment (Hetzner ~5 min, DigitalOcean ~6 min):
|
|
99
99
|
|
|
100
100
|
```
|
|
101
101
|
✅ Deployment Successful!
|
|
@@ -121,7 +121,7 @@ For production use, we recommend setting up a domain instead of using the IP add
|
|
|
121
121
|
|
|
122
122
|
| Provider | Status | Starting Price | Architecture |
|
|
123
123
|
|----------|--------|----------------|--------------|
|
|
124
|
-
| **Hetzner Cloud** | ✅ Available | €3.
|
|
124
|
+
| **Hetzner Cloud** | ✅ Available | €3.49/mo | ARM64 + x86 |
|
|
125
125
|
| **DigitalOcean** | ✅ Available | $12/mo | x86 |
|
|
126
126
|
| **Vultr** | 📋 Planned | $2.50/mo | x86 |
|
|
127
127
|
| **Linode** | 📋 Planned | $5/mo | x86 |
|
|
@@ -148,20 +148,27 @@ For production use, we recommend setting up a domain instead of using the IP add
|
|
|
148
148
|
| Vercel (Hobby) | $20+ | 5 min | Easy |
|
|
149
149
|
| Vercel (Pro) | $50+ | 5 min | Easy |
|
|
150
150
|
| Netlify (Pro) | $19+ | 5 min | Easy |
|
|
151
|
-
| **Quicklify + Hetzner** | **€3.
|
|
152
|
-
| **Quicklify + DigitalOcean** | **$12** | **~
|
|
153
|
-
| Manual VPS + Coolify | €3.
|
|
151
|
+
| **Quicklify + Hetzner** | **€3.49** | **~5 min** | **Easy** |
|
|
152
|
+
| **Quicklify + DigitalOcean** | **$12** | **~6 min** | **Easy** |
|
|
153
|
+
| Manual VPS + Coolify | €3.49 | 30+ min | Hard |
|
|
154
154
|
|
|
155
155
|
**Savings: ~$180-240/year per project!** 💰
|
|
156
156
|
|
|
157
157
|
## 📋 Recent Updates
|
|
158
158
|
|
|
159
|
+
### v0.3.1 (2026-02-19)
|
|
160
|
+
- Hetzner pricing now shows net prices (excl. VAT), matching website display
|
|
161
|
+
- Hetzner server types use `/datacenters` API for real availability per location
|
|
162
|
+
- Replaced deprecated Hetzner server types (cpx→cx23/cx33)
|
|
163
|
+
- "Server name already used" error now prompts for a new name
|
|
164
|
+
- Location disabled retry now re-prompts for server type
|
|
165
|
+
- Back navigation works correctly in error retry flows
|
|
166
|
+
|
|
159
167
|
### v0.3.0 (2026-02-19)
|
|
160
168
|
- DigitalOcean provider support (full API integration)
|
|
161
169
|
- Interactive provider selection (Hetzner / DigitalOcean)
|
|
162
170
|
- Step-based back navigation in all prompts
|
|
163
171
|
- Network wait loop + install logging for DigitalOcean cloud-init reliability
|
|
164
|
-
- Troubleshooting info in deployment success message
|
|
165
172
|
- 143 tests with 97%+ statement coverage
|
|
166
173
|
|
|
167
174
|
### v0.2.8 (2026-02-16)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAsCA,wBAAsB,WAAW,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAsCA,wBAAsB,WAAW,kBAqNhC"}
|
package/dist/commands/init.js
CHANGED
|
@@ -99,6 +99,7 @@ export async function initCommand() {
|
|
|
99
99
|
let retries = 0;
|
|
100
100
|
const maxRetries = 2;
|
|
101
101
|
const failedTypes = [];
|
|
102
|
+
const failedLocations = [];
|
|
102
103
|
while (!server && retries <= maxRetries) {
|
|
103
104
|
const serverSpinner = createSpinner("Creating VPS server...");
|
|
104
105
|
serverSpinner.start();
|
|
@@ -114,7 +115,36 @@ export async function initCommand() {
|
|
|
114
115
|
catch (createError) {
|
|
115
116
|
serverSpinner.fail("Server creation failed");
|
|
116
117
|
const errorMsg = createError instanceof Error ? createError.message : "";
|
|
117
|
-
if (errorMsg.includes("
|
|
118
|
+
if (errorMsg.includes("already") && errorMsg.includes("used")) {
|
|
119
|
+
logger.warning(`Server name "${config.serverName}" is already in use`);
|
|
120
|
+
logger.info("Please choose a different name:");
|
|
121
|
+
let newName = BACK_SIGNAL;
|
|
122
|
+
while (newName === BACK_SIGNAL) {
|
|
123
|
+
newName = await getServerNameConfig();
|
|
124
|
+
}
|
|
125
|
+
config.serverName = newName;
|
|
126
|
+
retries++;
|
|
127
|
+
}
|
|
128
|
+
else if (errorMsg.includes("location disabled")) {
|
|
129
|
+
failedLocations.push(config.region);
|
|
130
|
+
logger.warning(`Location "${config.region}" is currently disabled for new servers`);
|
|
131
|
+
logger.info("Please select a different region and server type:");
|
|
132
|
+
let pickedSize = false;
|
|
133
|
+
while (!pickedSize) {
|
|
134
|
+
let newRegion = BACK_SIGNAL;
|
|
135
|
+
while (newRegion === BACK_SIGNAL) {
|
|
136
|
+
newRegion = await getLocationConfig(providerWithToken, failedLocations);
|
|
137
|
+
}
|
|
138
|
+
config.region = newRegion;
|
|
139
|
+
const newSize = await getServerTypeConfig(providerWithToken, config.region);
|
|
140
|
+
if (newSize === BACK_SIGNAL)
|
|
141
|
+
continue; // back to region
|
|
142
|
+
config.serverSize = newSize;
|
|
143
|
+
pickedSize = true;
|
|
144
|
+
}
|
|
145
|
+
retries++;
|
|
146
|
+
}
|
|
147
|
+
else if (errorMsg.includes("unavailable") ||
|
|
118
148
|
errorMsg.includes("not available") ||
|
|
119
149
|
errorMsg.includes("sold out") ||
|
|
120
150
|
errorMsg.includes("unsupported")) {
|
|
@@ -168,7 +198,7 @@ export async function initCommand() {
|
|
|
168
198
|
// Installing Coolify
|
|
169
199
|
const isDigitalOcean = providerChoice === "digitalocean";
|
|
170
200
|
const waitTime = isDigitalOcean ? 300000 : 180000; // DO: 5 min, Hetzner: 3 min
|
|
171
|
-
const waitLabel = isDigitalOcean ? "
|
|
201
|
+
const waitLabel = isDigitalOcean ? "4-6" : "3-5";
|
|
172
202
|
const installSpinner = createSpinner(`Installing Coolify (this takes ${waitLabel} minutes)...`);
|
|
173
203
|
installSpinner.start();
|
|
174
204
|
// Wait for Coolify installation (cloud-init runs in background)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hetzner.d.ts","sourceRoot":"","sources":["../../src/providers/hetzner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"hetzner.d.ts","sourceRoot":"","sources":["../../src/providers/hetzner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAsCxF,qBAAa,eAAgB,YAAW,aAAa;IACnD,IAAI,SAAa;IACjB,WAAW,SAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAkC;gBAErC,QAAQ,EAAE,MAAM;IAItB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW9C,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAoCzD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAWzD,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAaxD,UAAU,IAAI,MAAM,EAAE;IAStB,cAAc,IAAI,UAAU,EAAE;IASxB,qBAAqB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAe1C,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CA+CvE"}
|
|
@@ -76,10 +76,10 @@ export class HetznerProvider {
|
|
|
76
76
|
}
|
|
77
77
|
getServerSizes() {
|
|
78
78
|
return [
|
|
79
|
-
{ id: "cax11", name: "CAX11", vcpu: 2, ram: 4, disk: 40, price: "€3.
|
|
80
|
-
{ id: "
|
|
81
|
-
{ id: "cax21", name: "CAX21", vcpu: 4, ram: 8, disk: 80, price: "€
|
|
82
|
-
{ id: "
|
|
79
|
+
{ id: "cax11", name: "CAX11", vcpu: 2, ram: 4, disk: 40, price: "€3.79/mo" },
|
|
80
|
+
{ id: "cx23", name: "CX23", vcpu: 2, ram: 4, disk: 40, price: "€3.49/mo" },
|
|
81
|
+
{ id: "cax21", name: "CAX21", vcpu: 4, ram: 8, disk: 80, price: "€6.49/mo" },
|
|
82
|
+
{ id: "cx33", name: "CX33", vcpu: 4, ram: 8, disk: 80, price: "€5.49/mo" },
|
|
83
83
|
];
|
|
84
84
|
}
|
|
85
85
|
async getAvailableLocations() {
|
|
@@ -99,19 +99,27 @@ export class HetznerProvider {
|
|
|
99
99
|
}
|
|
100
100
|
async getAvailableServerTypes(location) {
|
|
101
101
|
try {
|
|
102
|
+
// Get actually available server type IDs from datacenter
|
|
103
|
+
const dcResponse = await axios.get(`${this.baseUrl}/datacenters`, {
|
|
104
|
+
headers: { Authorization: `Bearer ${this.apiToken}` },
|
|
105
|
+
});
|
|
106
|
+
const datacenter = dcResponse.data.datacenters.find((dc) => dc.location.name === location);
|
|
107
|
+
const availableIds = datacenter?.server_types?.available || [];
|
|
108
|
+
// Get server type details
|
|
102
109
|
const response = await axios.get(`${this.baseUrl}/server_types`, {
|
|
103
110
|
headers: { Authorization: `Bearer ${this.apiToken}` },
|
|
104
111
|
});
|
|
105
112
|
const MIN_RAM_GB = 2; // Coolify requires at least 2GB RAM
|
|
106
113
|
const types = response.data.server_types.filter((type) => !type.deprecation &&
|
|
107
114
|
type.memory >= MIN_RAM_GB &&
|
|
115
|
+
availableIds.includes(type.id) &&
|
|
108
116
|
type.prices.some((p) => p.location === location));
|
|
109
117
|
if (types.length === 0) {
|
|
110
118
|
return this.getServerSizes();
|
|
111
119
|
}
|
|
112
120
|
return types.map((type) => {
|
|
113
121
|
const price = type.prices.find((p) => p.location === location);
|
|
114
|
-
const rawPrice = price?.price_monthly?.
|
|
122
|
+
const rawPrice = price?.price_monthly?.net;
|
|
115
123
|
const priceMonthly = rawPrice ? parseFloat(rawPrice).toFixed(2) : "N/A";
|
|
116
124
|
return {
|
|
117
125
|
id: type.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hetzner.js","sourceRoot":"","sources":["../../src/providers/hetzner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"hetzner.js","sourceRoot":"","sources":["../../src/providers/hetzner.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/prompts.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export declare function getProviderConfig(): Promise<{
|
|
|
5
5
|
provider: string;
|
|
6
6
|
}>;
|
|
7
7
|
export declare function getDeploymentConfig(provider: CloudProvider): Promise<DeploymentConfig>;
|
|
8
|
-
export declare function getLocationConfig(provider: CloudProvider): Promise<string>;
|
|
8
|
+
export declare function getLocationConfig(provider: CloudProvider, exclude?: string[]): Promise<string>;
|
|
9
9
|
export declare function getServerTypeConfig(provider: CloudProvider, location: string, exclude?: string[]): Promise<string>;
|
|
10
10
|
export declare function getServerNameConfig(): Promise<string>;
|
|
11
11
|
export declare function confirmDeployment(config: DeploymentConfig, provider: CloudProvider): Promise<boolean | string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,eAAO,MAAM,WAAW,aAAa,CAAC;AAEtC,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAcvE;AAED,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAsB5F;AAED,wBAAsB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,eAAO,MAAM,WAAW,aAAa,CAAC;AAEtC,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAcvE;AAED,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAsB5F;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,MAAM,EAAO,GACrB,OAAO,CAAC,MAAM,CAAC,CAuBjB;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,MAAM,EAAO,GACrB,OAAO,CAAC,MAAM,CAAC,CAuBjB;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAwB3D;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,aAAa,GACtB,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,CAsC3B"}
|
package/dist/utils/prompts.js
CHANGED
|
@@ -36,8 +36,9 @@ export async function getDeploymentConfig(provider) {
|
|
|
36
36
|
serverName: "",
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
|
-
export async function getLocationConfig(provider) {
|
|
40
|
-
const
|
|
39
|
+
export async function getLocationConfig(provider, exclude = []) {
|
|
40
|
+
const allLocations = await provider.getAvailableLocations();
|
|
41
|
+
const locations = exclude.length > 0 ? allLocations.filter((r) => !exclude.includes(r.id)) : allLocations;
|
|
41
42
|
const { region } = await inquirer.prompt([
|
|
42
43
|
{
|
|
43
44
|
type: "list",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACzC;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,wBAAwB;YACjC,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE;gBAC3C,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;aAChD;SACF;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,QAAuB;IAC/D,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACzC;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,cAAc,QAAQ,CAAC,WAAW,aAAa;YACxD,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC1B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxC,OAAO,uBAAuB,CAAC;gBACjC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;SACF;KACF,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,IAAI;QACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;QACzB,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,EAAE;KACf,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"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"}
|