create-manifest 1.3.4 → 2.0.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.
- package/README.md +40 -21
- package/index.js +51 -0
- package/package.json +11 -89
- package/starter/.claude/settings.local.json +21 -0
- package/starter/.env.example +1 -0
- package/starter/@/components/table.tsx +478 -0
- package/starter/@/components/ui/button.tsx +62 -0
- package/starter/@/components/ui/checkbox.tsx +30 -0
- package/starter/README-DEV.md +167 -0
- package/starter/components.json +24 -0
- package/starter/package.json +42 -0
- package/starter/src/flows/list-pokemons.flow.ts +131 -0
- package/starter/src/server.ts +165 -0
- package/starter/src/web/PokemonList.tsx +125 -0
- package/starter/src/web/components/blog-post-card.tsx +286 -0
- package/starter/src/web/components/blog-post-list.tsx +291 -0
- package/starter/src/web/components/ui/.gitkeep +0 -0
- package/starter/src/web/components/ui/button.tsx +62 -0
- package/starter/src/web/globals.css +98 -0
- package/starter/src/web/hooks/.gitkeep +0 -0
- package/starter/src/web/lib/utils.ts +6 -0
- package/starter/src/web/root.tsx +36 -0
- package/starter/src/web/tsconfig.json +3 -0
- package/starter/tsconfig.json +21 -0
- package/starter/tsconfig.web.json +24 -0
- package/starter/vite.config.ts +36 -0
- package/assets/monorepo/README.md +0 -52
- package/assets/monorepo/api-package.json +0 -9
- package/assets/monorepo/api-readme.md +0 -50
- package/assets/monorepo/manifest.yml +0 -34
- package/assets/monorepo/root-package.json +0 -15
- package/assets/monorepo/web-package.json +0 -10
- package/assets/monorepo/web-readme.md +0 -9
- package/assets/standalone/README.md +0 -50
- package/assets/standalone/api-package.json +0 -9
- package/assets/standalone/manifest.yml +0 -34
- package/bin/dev.cmd +0 -3
- package/bin/dev.js +0 -5
- package/bin/run.cmd +0 -3
- package/bin/run.js +0 -5
- package/dist/commands/index.d.ts +0 -65
- package/dist/commands/index.js +0 -480
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/utils/GetBackendFileContent.d.ts +0 -1
- package/dist/utils/GetBackendFileContent.js +0 -21
- package/dist/utils/GetLatestPackageVersion.d.ts +0 -1
- package/dist/utils/GetLatestPackageVersion.js +0 -5
- package/dist/utils/UpdateExtensionJsonFile.d.ts +0 -6
- package/dist/utils/UpdateExtensionJsonFile.js +0 -8
- package/dist/utils/UpdatePackageJsonFile.d.ts +0 -18
- package/dist/utils/UpdatePackageJsonFile.js +0 -21
- package/dist/utils/UpdateSettingsJsonFile.d.ts +0 -4
- package/dist/utils/UpdateSettingsJsonFile.js +0 -6
- package/dist/utils/helpers.d.ts +0 -1
- package/dist/utils/helpers.js +0 -11
- package/oclif.manifest.json +0 -47
package/README.md
CHANGED
|
@@ -1,38 +1,57 @@
|
|
|
1
1
|
# create-manifest
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Create a new Manifest MCP server project with a single command.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
4
6
|
|
|
5
7
|
```bash
|
|
6
|
-
npx create-manifest
|
|
8
|
+
npx create-manifest my-app
|
|
7
9
|
```
|
|
8
10
|
|
|
9
|
-
This will
|
|
10
|
-
If you leave out the name, the CLI will ask you for it during setup.
|
|
11
|
+
This will:
|
|
11
12
|
|
|
12
|
-
|
|
13
|
+
1. Create a new directory `my-app`
|
|
14
|
+
2. Copy the starter template
|
|
15
|
+
3. Install dependencies
|
|
16
|
+
4. Start the development server
|
|
13
17
|
|
|
14
|
-
|
|
15
|
-
- `--copilot` for **GitHub Copilot**
|
|
16
|
-
- `--windsurf` for **Windsurf**
|
|
18
|
+
## What's Included
|
|
17
19
|
|
|
18
|
-
|
|
20
|
+
The starter template includes:
|
|
19
21
|
|
|
20
|
-
|
|
22
|
+
- MCP server setup with Express
|
|
23
|
+
- TypeScript configuration
|
|
24
|
+
- Hot reload with Nodemon
|
|
25
|
+
- Vite for building web components
|
|
21
26
|
|
|
22
|
-
|
|
23
|
-
npm install
|
|
27
|
+
## Requirements
|
|
24
28
|
|
|
25
|
-
|
|
26
|
-
mkdir test-folder
|
|
27
|
-
cd test-folder
|
|
28
|
-
../bin/dev.js
|
|
29
|
-
```
|
|
29
|
+
- Node.js 22+
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
## After Creation
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
Your project will be running at `http://localhost:3000`.
|
|
34
|
+
|
|
35
|
+
To restart the dev server later:
|
|
34
36
|
|
|
35
37
|
```bash
|
|
36
|
-
|
|
37
|
-
npm
|
|
38
|
+
cd my-app
|
|
39
|
+
npm run dev
|
|
38
40
|
```
|
|
41
|
+
|
|
42
|
+
## Available Scripts
|
|
43
|
+
|
|
44
|
+
Inside the created project, you can run:
|
|
45
|
+
|
|
46
|
+
- `npm run dev` - Start development server with hot reload
|
|
47
|
+
- `npm run build` - Build for production
|
|
48
|
+
- `npm start` - Run production build
|
|
49
|
+
|
|
50
|
+
## Learn More
|
|
51
|
+
|
|
52
|
+
- [Manifest Documentation](https://manifest.build)
|
|
53
|
+
- [MCP Protocol](https://modelcontextprotocol.io)
|
|
54
|
+
|
|
55
|
+
## License
|
|
56
|
+
|
|
57
|
+
MIT
|
package/index.js
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { cpSync, readFileSync, writeFileSync } from 'node:fs'
|
|
4
|
+
import { join, dirname } from 'node:path'
|
|
5
|
+
import { fileURLToPath } from 'node:url'
|
|
6
|
+
import { execSync, spawn } from 'node:child_process'
|
|
7
|
+
|
|
8
|
+
const __dirname = dirname(fileURLToPath(import.meta.url))
|
|
9
|
+
|
|
10
|
+
const projectName = process.argv[2]
|
|
11
|
+
|
|
12
|
+
if (!projectName) {
|
|
13
|
+
console.error('Please provide a project name:')
|
|
14
|
+
console.error(' npx create-manifest my-app')
|
|
15
|
+
process.exit(1)
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const targetDir = join(process.cwd(), projectName)
|
|
19
|
+
const starterDir = join(__dirname, 'starter')
|
|
20
|
+
|
|
21
|
+
console.log(`\nCreating a new Manifest project in ${targetDir}...\n`)
|
|
22
|
+
|
|
23
|
+
// Copy starter folder to target directory
|
|
24
|
+
cpSync(starterDir, targetDir, { recursive: true })
|
|
25
|
+
|
|
26
|
+
// Update package.json with the project name
|
|
27
|
+
const packageJsonPath = join(targetDir, 'package.json')
|
|
28
|
+
const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'))
|
|
29
|
+
packageJson.name = projectName
|
|
30
|
+
writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2) + '\n')
|
|
31
|
+
|
|
32
|
+
console.log('Installing dependencies...\n')
|
|
33
|
+
|
|
34
|
+
// Install dependencies
|
|
35
|
+
execSync('npm install', {
|
|
36
|
+
cwd: targetDir,
|
|
37
|
+
stdio: 'inherit'
|
|
38
|
+
})
|
|
39
|
+
|
|
40
|
+
console.log('\nStarting development server...\n')
|
|
41
|
+
|
|
42
|
+
// Run dev script
|
|
43
|
+
const dev = spawn('npm', ['run', 'dev'], {
|
|
44
|
+
cwd: targetDir,
|
|
45
|
+
stdio: 'inherit',
|
|
46
|
+
shell: true
|
|
47
|
+
})
|
|
48
|
+
|
|
49
|
+
dev.on('close', (code) => {
|
|
50
|
+
process.exit(code)
|
|
51
|
+
})
|
package/package.json
CHANGED
|
@@ -1,99 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-manifest",
|
|
3
|
-
"version": "
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"homepage": "https://manifest.build",
|
|
7
|
-
"license": "MIT",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"description": "Create a new Manifest project",
|
|
5
|
+
"type": "module",
|
|
8
6
|
"bin": {
|
|
9
|
-
"create-manifest": "./
|
|
10
|
-
},
|
|
11
|
-
"scripts": {
|
|
12
|
-
"build": "shx rm -rf dist && tsc -b",
|
|
13
|
-
"watch": "tsc -b --watch",
|
|
14
|
-
"postpack": "shx rm -f oclif.manifest.json",
|
|
15
|
-
"posttest": "npm run lint",
|
|
16
|
-
"prepack": "npm run build && oclif manifest && oclif readme",
|
|
17
|
-
"prepare": "npm run build",
|
|
18
|
-
"version": "oclif readme && git add README.md"
|
|
19
|
-
},
|
|
20
|
-
"oclif": {
|
|
21
|
-
"bin": "create-manifest",
|
|
22
|
-
"dirname": "create-manifest",
|
|
23
|
-
"commands": {
|
|
24
|
-
"strategy": "single",
|
|
25
|
-
"target": "./dist/commands/index.js"
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
"plugins": [
|
|
29
|
-
"@oclif/plugin-help",
|
|
30
|
-
"@oclif/plugin-plugins"
|
|
31
|
-
],
|
|
32
|
-
"topicSeparator": " ",
|
|
33
|
-
"topics": {
|
|
34
|
-
"create": {
|
|
35
|
-
"description": "Create a new Manifest backend"
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
|
-
"dependencies": {
|
|
39
|
-
"@inquirer/prompts": "^7.5.1",
|
|
40
|
-
"@oclif/core": "^4",
|
|
41
|
-
"@oclif/plugin-help": "^6",
|
|
42
|
-
"@oclif/plugin-plugins": "^5",
|
|
43
|
-
"axios": "^1.9.0",
|
|
44
|
-
"chalk": "^5.4.1",
|
|
45
|
-
"fs": "^0.0.1-security",
|
|
46
|
-
"jsonc-parser": "^3.3.1",
|
|
47
|
-
"ora": "^8.2.0",
|
|
48
|
-
"path": "^0.12.7",
|
|
49
|
-
"tree-kill": "^1.2.2",
|
|
50
|
-
"url": "^0.11.4"
|
|
51
|
-
},
|
|
52
|
-
"devDependencies": {
|
|
53
|
-
"@oclif/prettier-config": "^0.2.1",
|
|
54
|
-
"@oclif/test": "^4",
|
|
55
|
-
"oclif": "^4.17.46",
|
|
56
|
-
"shx": "^0.4.0",
|
|
57
|
-
"ts-node": "^10.9.2",
|
|
58
|
-
"typescript": "^5"
|
|
59
|
-
},
|
|
60
|
-
"engines": {
|
|
61
|
-
"node": ">=18.0.0"
|
|
7
|
+
"create-manifest": "./index.js"
|
|
62
8
|
},
|
|
63
9
|
"files": [
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"/assets",
|
|
67
|
-
"/oclif.manifest.json"
|
|
10
|
+
"index.js",
|
|
11
|
+
"starter"
|
|
68
12
|
],
|
|
69
|
-
"main": "",
|
|
70
|
-
"repository": {
|
|
71
|
-
"type": "git",
|
|
72
|
-
"url": "git+https://github.com/mnfst/manifest.git"
|
|
73
|
-
},
|
|
74
|
-
"bugs": "https://github.com/mnfst/manifest/issues",
|
|
75
13
|
"keywords": [
|
|
76
14
|
"manifest",
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"AI code tool",
|
|
81
|
-
"backend for vibe coding",
|
|
82
|
-
"backend for modern workflows",
|
|
83
|
-
"vibe coding",
|
|
84
|
-
"vibe coding backend",
|
|
85
|
-
"vibe coding api",
|
|
86
|
-
"AI assisted coding",
|
|
87
|
-
"AI coding",
|
|
88
|
-
"windsurf",
|
|
89
|
-
"copilot",
|
|
90
|
-
"micro-backend",
|
|
91
|
-
"backend",
|
|
92
|
-
"headless",
|
|
93
|
-
"install",
|
|
94
|
-
"rest"
|
|
15
|
+
"mcp",
|
|
16
|
+
"create",
|
|
17
|
+
"cli"
|
|
95
18
|
],
|
|
96
|
-
"
|
|
97
|
-
"
|
|
98
|
-
"type": "module"
|
|
19
|
+
"author": "MNFST, Inc.",
|
|
20
|
+
"license": "MIT"
|
|
99
21
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"permissions": {
|
|
3
|
+
"allow": [
|
|
4
|
+
"Bash(cat:*)",
|
|
5
|
+
"Bash(npm install:*)",
|
|
6
|
+
"Bash(npm --version:*)",
|
|
7
|
+
"Bash(node --version:*)",
|
|
8
|
+
"Bash(npm cache clean:*)",
|
|
9
|
+
"Bash(npm ls:*)",
|
|
10
|
+
"Bash(npm run build:*)",
|
|
11
|
+
"WebFetch(domain:github.com)",
|
|
12
|
+
"WebFetch(domain:raw.githubusercontent.com)",
|
|
13
|
+
"WebSearch",
|
|
14
|
+
"WebFetch(domain:xmcp.dev)",
|
|
15
|
+
"WebFetch(domain:dev.to)",
|
|
16
|
+
"WebFetch(domain:www.skybridge.tech)",
|
|
17
|
+
"WebFetch(domain:gadget.dev)",
|
|
18
|
+
"Bash(curl:*)"
|
|
19
|
+
]
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
PORT=3000
|