claude-code-marketplace 0.2.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 +85 -0
- package/package.json +55 -0
- package/public/app.js +1088 -0
- package/public/icons/icon-192.png +0 -0
- package/public/icons/icon-512.png +0 -0
- package/public/icons/icon-svg.svg +9 -0
- package/public/index.html +151 -0
- package/public/manifest.json +14 -0
- package/public/style.css +1242 -0
- package/public/sw.js +33 -0
- package/server.js +733 -0
package/README.md
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# Claude Code Marketplace
|
|
2
|
+
|
|
3
|
+
A web-based dashboard for browsing, installing, and managing [Claude Code](https://docs.anthropic.com/en/docs/claude-code) plugins across multiple marketplaces.
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="assets/main-dark.png" alt="Marketplace — dark theme" width="100%">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<details>
|
|
10
|
+
<summary>Light theme & file preview</summary>
|
|
11
|
+
|
|
12
|
+
<p align="center">
|
|
13
|
+
<img src="assets/main-light.png" alt="Marketplace — light theme" width="100%">
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
<p align="center">
|
|
17
|
+
<img src="assets/prevew-light.png" alt="Plugin file preview" width="100%">
|
|
18
|
+
</p>
|
|
19
|
+
|
|
20
|
+
</details>
|
|
21
|
+
|
|
22
|
+
## Quick Start
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npx claude-code-marketplace --open
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Or with a custom port:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npx claude-code-marketplace --port 8080
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Options
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
--port <number> Custom port (default: 3457)
|
|
38
|
+
--project <path> Project directory for project-scoped plugins
|
|
39
|
+
--open Open browser on start
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Features
|
|
43
|
+
|
|
44
|
+
- **Multi-marketplace browser** — aggregate plugins from GitHub repos, git URLs, and local directories
|
|
45
|
+
- **Scope management** — install, enable, and disable plugins per scope (user / project / local)
|
|
46
|
+
- **Component inspection** — browse skills, commands, agents, MCP servers, hooks, and LSP servers inside each plugin
|
|
47
|
+
- **File preview** — read plugin source files directly in the browser with syntax highlighting
|
|
48
|
+
- **Marketplace actions** — add, update, and remove marketplace sources
|
|
49
|
+
- **PWA support** — installable as a standalone desktop app with offline caching
|
|
50
|
+
- **Dark / light theme** — styled with IBM Plex Mono, orange accent palette
|
|
51
|
+
- **Keyboard-first** — vim-style navigation, press `?` for shortcuts
|
|
52
|
+
|
|
53
|
+
## How It Works
|
|
54
|
+
|
|
55
|
+
The server reads `~/.claude/plugins/` to discover installed marketplaces and plugin registries. Each marketplace points to a directory containing a `.claude-plugin/marketplace.json` manifest listing available plugins.
|
|
56
|
+
|
|
57
|
+
The UI renders a tree of marketplaces with their plugins. Clicking a plugin opens its detail panel showing description, version, scope installation matrix, and filesystem-based component breakdown.
|
|
58
|
+
|
|
59
|
+
All plugin management operations (install, uninstall, enable, disable) delegate to `claude plugin` CLI commands.
|
|
60
|
+
|
|
61
|
+
## Tech Stack
|
|
62
|
+
|
|
63
|
+
- **Frontend** — vanilla JS single-page app, no framework dependencies
|
|
64
|
+
- **Backend** — Express.js serving static files + REST API
|
|
65
|
+
- **Styling** — CSS custom properties with dark/light theme support
|
|
66
|
+
- **Icons** — inline SVG (Feather-style, 24x24 viewBox)
|
|
67
|
+
- **Linter** — Biome with husky pre-commit hook
|
|
68
|
+
|
|
69
|
+
## Development
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
git clone https://github.com/NikiforovAll/claude-code-marketplace.git
|
|
73
|
+
cd claude-code-marketplace
|
|
74
|
+
npm install
|
|
75
|
+
npm run dev
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npm run lint # check with biome
|
|
80
|
+
npm run lint:fix # auto-fix
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## License
|
|
84
|
+
|
|
85
|
+
MIT
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "claude-code-marketplace",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Web UI for browsing and managing Claude Code marketplace plugins",
|
|
5
|
+
"main": "server.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"claude-code-marketplace": "server.js"
|
|
8
|
+
},
|
|
9
|
+
"keywords": [
|
|
10
|
+
"claude",
|
|
11
|
+
"claude-code",
|
|
12
|
+
"marketplace",
|
|
13
|
+
"plugins",
|
|
14
|
+
"anthropic",
|
|
15
|
+
"ai",
|
|
16
|
+
"cli",
|
|
17
|
+
"dashboard",
|
|
18
|
+
"skills",
|
|
19
|
+
"mcp",
|
|
20
|
+
"agents"
|
|
21
|
+
],
|
|
22
|
+
"homepage": "https://nikiforovall.blog/claude-code-marketplace/",
|
|
23
|
+
"repository": {
|
|
24
|
+
"type": "git",
|
|
25
|
+
"url": "git+https://github.com/NikiforovAll/claude-code-marketplace.git"
|
|
26
|
+
},
|
|
27
|
+
"bugs": {
|
|
28
|
+
"url": "https://github.com/NikiforovAll/claude-code-marketplace/issues"
|
|
29
|
+
},
|
|
30
|
+
"author": "NikiforovAll",
|
|
31
|
+
"license": "MIT",
|
|
32
|
+
"files": [
|
|
33
|
+
"server.js",
|
|
34
|
+
"public/",
|
|
35
|
+
"README.md",
|
|
36
|
+
"LICENSE"
|
|
37
|
+
],
|
|
38
|
+
"scripts": {
|
|
39
|
+
"start": "node server.js",
|
|
40
|
+
"dev": "node server.js --open",
|
|
41
|
+
"lint": "npx @biomejs/biome check public/app.js public/style.css",
|
|
42
|
+
"lint:fix": "npx @biomejs/biome check --fix public/app.js public/style.css",
|
|
43
|
+
"prepare": "husky"
|
|
44
|
+
},
|
|
45
|
+
"engines": {
|
|
46
|
+
"node": ">=18.0.0"
|
|
47
|
+
},
|
|
48
|
+
"dependencies": {
|
|
49
|
+
"express": "^4.18.2",
|
|
50
|
+
"open": "^10.0.0"
|
|
51
|
+
},
|
|
52
|
+
"devDependencies": {
|
|
53
|
+
"husky": "^9.1.7"
|
|
54
|
+
}
|
|
55
|
+
}
|