promptlineapp 1.3.11 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +8 -10
  2. package/bin/cli.js +19 -28
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
- # create-promptline-app
1
+ # promptlineapp
2
2
 
3
3
  Create AI-powered applications with [PromptLine](https://promptlineops.com) - no configuration needed.
4
4
 
5
5
  ## Quick Start
6
6
 
7
7
  ```bash
8
- npx create-promptline-app my-app
8
+ npx promptlineapp my-app
9
9
  cd my-app
10
10
  ```
11
11
 
@@ -16,7 +16,7 @@ That's it! You now have a fully-configured PromptLine package ready for developm
16
16
  ### Interactive Mode (Recommended)
17
17
 
18
18
  ```bash
19
- npx create-promptline-app my-app
19
+ npx promptlineapp my-app
20
20
  ```
21
21
 
22
22
  You'll be prompted for:
@@ -29,22 +29,20 @@ You'll be prompted for:
29
29
  ### Non-Interactive Mode
30
30
 
31
31
  ```bash
32
- npx create-promptline-app my-app --yes
33
- npx create-promptline-app my-app --preset saas -y
32
+ npx promptlineapp my-app --yes
33
+ npx promptlineapp my-app --preset full-app -y
34
34
  ```
35
35
 
36
36
  ## Template Presets
37
37
 
38
38
  | Preset | Description | Best For |
39
39
  |--------|-------------|----------|
40
- | `contact` | Landing page + contact form + dashboard | Marketing sites, lead generation |
41
- | `saas` | Full app with auth, dashboard, settings | SaaS products, internal tools |
40
+ | `full-app` | Complete app with landing, dashboard, settings & AI | SaaS products, internal tools (default) |
42
41
  | `api` | Minimal frontend, backend-focused | API services, integrations |
43
- | `blank` | Empty template | Custom builds from scratch |
44
42
 
45
43
  ```bash
46
- npx create-promptline-app my-app --preset saas
47
- npx create-promptline-app my-api --preset api
44
+ npx promptlineapp my-app --preset full-app
45
+ npx promptlineapp my-api --preset api
48
46
  ```
49
47
 
50
48
  ## What You Get
package/bin/cli.js CHANGED
@@ -1621,7 +1621,7 @@ async function createPackage(name, options = {}) {
1621
1621
  description: 'My PromptLine application',
1622
1622
  primaryColor: '#6366f1',
1623
1623
  contactEmail: 'contact@example.com',
1624
- preset: options.preset || 'contact',
1624
+ preset: options.preset || 'full-app',
1625
1625
  };
1626
1626
 
1627
1627
  // Interactive mode
@@ -1683,10 +1683,8 @@ async function createPackage(name, options = {}) {
1683
1683
 
1684
1684
  if (!options.preset) {
1685
1685
  const presets = [
1686
- { name: 'Contact Form', description: 'Landing + form + dashboard', value: 'contact' },
1687
- { name: 'SaaS', description: 'Full app with auth & billing', value: 'saas' },
1688
- { name: 'API', description: 'Backend-focused, minimal UI', value: 'api' },
1689
- { name: 'Blank', description: 'Empty template', value: 'blank' },
1686
+ { name: 'Full App', description: 'Complete app with pages, dashboard & AI', value: 'full-app' },
1687
+ { name: 'API', description: 'Backend-focused, minimal frontend', value: 'api' },
1690
1688
  ];
1691
1689
  config.preset = await prompt.select('Select a template:', presets);
1692
1690
  }
@@ -1715,25 +1713,20 @@ async function createPackage(name, options = {}) {
1715
1713
  success('Created assets/');
1716
1714
 
1717
1715
  // Create files based on preset
1718
- if (config.preset === 'blank') {
1719
- fs.writeFileSync(path.join(targetDir, 'public', 'index.tsx'), templates.blankIndex(config));
1720
- success('Created public/index.tsx');
1721
- } else {
1722
- // Contact, SaaS, API all start with similar base
1723
- fs.writeFileSync(path.join(targetDir, 'public', 'index.tsx'), templates.publicIndex(config));
1724
- success('Created public/index.tsx');
1725
-
1726
- if (config.preset !== 'api') {
1727
- fs.writeFileSync(path.join(targetDir, 'private', 'dashboard.tsx'), templates.privateDashboard(config));
1728
- fs.writeFileSync(path.join(targetDir, 'private', 'settings.tsx'), templates.privateSettings(config));
1729
- success('Created private/dashboard.tsx');
1730
- success('Created private/settings.tsx');
1731
- }
1732
-
1733
- fs.writeFileSync(path.join(targetDir, 'backend', 'api.py'), templates.backendApi(config));
1734
- success('Created backend/api.py');
1716
+ fs.writeFileSync(path.join(targetDir, 'public', 'index.tsx'), templates.publicIndex(config));
1717
+ success('Created public/index.tsx');
1718
+
1719
+ if (config.preset !== 'api') {
1720
+ // Full-app preset gets dashboard and settings pages
1721
+ fs.writeFileSync(path.join(targetDir, 'private', 'dashboard.tsx'), templates.privateDashboard(config));
1722
+ fs.writeFileSync(path.join(targetDir, 'private', 'settings.tsx'), templates.privateSettings(config));
1723
+ success('Created private/dashboard.tsx');
1724
+ success('Created private/settings.tsx');
1735
1725
  }
1736
1726
 
1727
+ fs.writeFileSync(path.join(targetDir, 'backend', 'api.py'), templates.backendApi(config));
1728
+ success('Created backend/api.py');
1729
+
1737
1730
  // Common files
1738
1731
  fs.writeFileSync(path.join(targetDir, 'promptline.yaml'), templates.config(config));
1739
1732
  success('Created promptline.yaml');
@@ -1750,7 +1743,7 @@ async function createPackage(name, options = {}) {
1750
1743
 
1751
1744
  // Collect page names for router
1752
1745
  const pages = { public: ['index'], private: [] };
1753
- if (config.preset !== 'blank' && config.preset !== 'api') {
1746
+ if (config.preset !== 'api') {
1754
1747
  pages.private = ['dashboard', 'settings'];
1755
1748
  }
1756
1749
 
@@ -1855,7 +1848,7 @@ ${c.bold}Usage:${c.reset}
1855
1848
  npx create-promptline-app <app-name> [options]
1856
1849
 
1857
1850
  ${c.bold}Options:${c.reset}
1858
- -p, --preset <preset> Template preset (contact, saas, api, blank)
1851
+ -p, --preset <preset> Template preset (full-app, api)
1859
1852
  -y, --yes Skip prompts, use defaults
1860
1853
  -h, --help Show this help
1861
1854
  -v, --version Show version
@@ -1866,10 +1859,8 @@ ${c.bold}Examples:${c.reset}
1866
1859
  npx create-promptline-app my-app -y
1867
1860
 
1868
1861
  ${c.bold}Presets:${c.reset}
1869
- contact Landing page + contact form + dashboard (default)
1870
- saas Full SaaS with auth, dashboard, billing
1871
- api Backend-focused, minimal frontend
1872
- blank Empty template
1862
+ full-app Complete app with pages, dashboard & AI (default)
1863
+ api Backend-focused, minimal frontend
1873
1864
 
1874
1865
  ${c.bold}Documentation:${c.reset}
1875
1866
  https://docs.promptlineops.com/packages
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "promptlineapp",
3
- "version": "1.3.11",
3
+ "version": "1.4.0",
4
4
  "description": "Create PromptLine applications with ease",
5
5
  "author": "PromptLine <support@promptlineops.com>",
6
6
  "license": "MIT",