@claude-code-mastery/starter-kit 1.0.0 → 1.1.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/.claude/commands/show-user-guide.md +22 -20
- package/.dockerignore +39 -0
- package/.env.example +74 -0
- package/.gitignore +70 -0
- package/CLAUDE.md +838 -0
- package/README.md +111 -2073
- package/README.npm.md +190 -0
- package/bin/cli.js +22 -0
- package/package.json +14 -4
- package/playwright.config.ts +79 -0
- package/scripts/.gitkeep +0 -0
- package/scripts/build-content.ts +108 -0
- package/scripts/content/html-template.ts +144 -0
- package/scripts/content/markdown-processor.ts +261 -0
- package/scripts/content/seo-generator.ts +42 -0
- package/scripts/content/sidebar-generator.ts +71 -0
- package/scripts/content/types.ts +72 -0
- package/scripts/content.config.json +49 -0
- package/scripts/db-query.ts +143 -0
- package/scripts/queries/example-count-docs.ts +25 -0
- package/scripts/queries/example-find-user.ts +32 -0
- package/scripts/scaffold-clean.sh +571 -0
- package/scripts/scaffold-default.sh +1236 -0
- package/tsconfig.json +25 -0
- package/vitest.config.ts +15 -0
|
@@ -8,43 +8,46 @@ Open the User Guide for the Claude Code Mastery Project Starter Kit.
|
|
|
8
8
|
|
|
9
9
|
## Steps
|
|
10
10
|
|
|
11
|
-
1. **
|
|
12
|
-
|
|
13
|
-
2. **Open in browser** — try the GitHub Pages URL first, fall back to local file:
|
|
11
|
+
1. **Open the User Guide** — try the GitHub Pages URL first, then fall back to a local copy if one exists:
|
|
14
12
|
|
|
15
13
|
**Primary (online):**
|
|
16
14
|
```
|
|
17
15
|
https://thedecipherist.github.io/claude-code-mastery-project-starter-kit/user-guide.html
|
|
18
16
|
```
|
|
19
17
|
|
|
20
|
-
**
|
|
18
|
+
**Local fallback** (only if the repo was cloned):
|
|
21
19
|
```
|
|
22
20
|
docs/user-guide.html
|
|
23
21
|
```
|
|
24
22
|
|
|
25
|
-
|
|
23
|
+
2. **Detect the environment** and use the correct open command:
|
|
26
24
|
- **WSL:** `wslview <url>`
|
|
27
25
|
- **macOS:** `open <url>`
|
|
28
26
|
- **Linux:** `xdg-open <url>`
|
|
29
27
|
|
|
30
|
-
4. **Also mention** the markdown version is available at `USER_GUIDE.md` in the project root for reading directly in GitHub or a text editor.
|
|
31
|
-
|
|
32
28
|
## Detection Logic
|
|
33
29
|
|
|
34
30
|
```bash
|
|
35
|
-
# Detect platform and open URL
|
|
36
31
|
URL="https://thedecipherist.github.io/claude-code-mastery-project-starter-kit/user-guide.html"
|
|
37
|
-
LOCAL="docs/user-guide.html"
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
elif [[ "$OSTYPE" == "darwin"* ]]; then
|
|
43
|
-
|
|
44
|
-
|
|
32
|
+
LOCAL="$(pwd)/docs/user-guide.html"
|
|
33
|
+
|
|
34
|
+
open_url() {
|
|
35
|
+
if grep -qi microsoft /proc/version 2>/dev/null; then
|
|
36
|
+
wslview "$1" 2>/dev/null
|
|
37
|
+
elif [[ "$OSTYPE" == "darwin"* ]]; then
|
|
38
|
+
open "$1" 2>/dev/null
|
|
39
|
+
else
|
|
40
|
+
xdg-open "$1" 2>/dev/null
|
|
41
|
+
fi
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
# Always try online first
|
|
45
|
+
if open_url "$URL"; then
|
|
46
|
+
echo "Opened online User Guide."
|
|
47
|
+
elif [ -f "$LOCAL" ] && open_url "$LOCAL"; then
|
|
48
|
+
echo "Opened local User Guide."
|
|
45
49
|
else
|
|
46
|
-
|
|
47
|
-
xdg-open "$URL" 2>/dev/null || xdg-open "$LOCAL" 2>/dev/null || echo "Could not open browser. Visit: $URL"
|
|
50
|
+
echo "Could not open browser. Visit: $URL"
|
|
48
51
|
fi
|
|
49
52
|
```
|
|
50
53
|
|
|
@@ -52,7 +55,6 @@ fi
|
|
|
52
55
|
|
|
53
56
|
After opening, tell the user:
|
|
54
57
|
|
|
55
|
-
> User Guide opened
|
|
58
|
+
> User Guide opened.
|
|
56
59
|
> - **Online:** https://thedecipherist.github.io/claude-code-mastery-project-starter-kit/user-guide.html
|
|
57
|
-
> - **Markdown:** `USER_GUIDE.md` (project root)
|
|
58
60
|
> - **Tip:** Use `/help` to see all available commands at any time.
|
package/.dockerignore
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Environment & Secrets
|
|
2
|
+
.env
|
|
3
|
+
.env.*
|
|
4
|
+
.env.local
|
|
5
|
+
secrets.json
|
|
6
|
+
credentials.json
|
|
7
|
+
|
|
8
|
+
# Git
|
|
9
|
+
.git/
|
|
10
|
+
.gitignore
|
|
11
|
+
|
|
12
|
+
# Dependencies
|
|
13
|
+
node_modules/
|
|
14
|
+
|
|
15
|
+
# Build & IDE
|
|
16
|
+
dist/
|
|
17
|
+
.next/
|
|
18
|
+
.vscode/
|
|
19
|
+
.idea/
|
|
20
|
+
|
|
21
|
+
# Claude Code
|
|
22
|
+
.claude/
|
|
23
|
+
CLAUDE.md
|
|
24
|
+
CLAUDE.local.md
|
|
25
|
+
|
|
26
|
+
# Testing
|
|
27
|
+
coverage/
|
|
28
|
+
test-results/
|
|
29
|
+
playwright-report/
|
|
30
|
+
|
|
31
|
+
# Documentation (not needed in container)
|
|
32
|
+
project-docs/
|
|
33
|
+
docs/
|
|
34
|
+
*.md
|
|
35
|
+
!README.md
|
|
36
|
+
|
|
37
|
+
# OS
|
|
38
|
+
.DS_Store
|
|
39
|
+
Thumbs.db
|
package/.env.example
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# ==========================================
|
|
2
|
+
# Environment Variables
|
|
3
|
+
# ==========================================
|
|
4
|
+
# Copy this to .env and fill in real values
|
|
5
|
+
# NEVER commit .env to git
|
|
6
|
+
#
|
|
7
|
+
# Run /setup for interactive configuration
|
|
8
|
+
# ==========================================
|
|
9
|
+
|
|
10
|
+
# ------------------------------------------
|
|
11
|
+
# Application
|
|
12
|
+
# ------------------------------------------
|
|
13
|
+
NODE_ENV=development
|
|
14
|
+
# Port assignment: Website=3000, API=3001, Dashboard=3002 (see CLAUDE.md port table)
|
|
15
|
+
PORT=3000
|
|
16
|
+
|
|
17
|
+
# ------------------------------------------
|
|
18
|
+
# Database (StrictDB — auto-detects backend from URI scheme)
|
|
19
|
+
# ------------------------------------------
|
|
20
|
+
STRICTDB_URI=YOUR_DATABASE_CONNECTION_STRING_HERE
|
|
21
|
+
|
|
22
|
+
# Multi-region database (uncomment if using /setup with multi-region)
|
|
23
|
+
# STRICTDB_URI_US=YOUR_US_DATABASE_URI_HERE
|
|
24
|
+
# STRICTDB_URI_EU=YOUR_EU_DATABASE_URI_HERE
|
|
25
|
+
|
|
26
|
+
# ------------------------------------------
|
|
27
|
+
# Authentication
|
|
28
|
+
# ------------------------------------------
|
|
29
|
+
JWT_SECRET=YOUR_JWT_SECRET_HERE
|
|
30
|
+
|
|
31
|
+
# ------------------------------------------
|
|
32
|
+
# GitHub
|
|
33
|
+
# ------------------------------------------
|
|
34
|
+
GITHUB_USERNAME=YOUR_GITHUB_USERNAME_HERE
|
|
35
|
+
|
|
36
|
+
# ------------------------------------------
|
|
37
|
+
# Analytics (Rybbit)
|
|
38
|
+
# ------------------------------------------
|
|
39
|
+
NEXT_PUBLIC_RYBBIT_SITE_ID=YOUR_RYBBIT_SITE_ID_HERE
|
|
40
|
+
NEXT_PUBLIC_RYBBIT_URL=https://app.rybbit.io
|
|
41
|
+
|
|
42
|
+
# ------------------------------------------
|
|
43
|
+
# Docker
|
|
44
|
+
# ------------------------------------------
|
|
45
|
+
DOCKER_HUB_USER=YOUR_DOCKER_HUB_USERNAME_HERE
|
|
46
|
+
DOCKER_IMAGE_NAME=YOUR_DOCKER_HUB_USER/YOUR_PROJECT_NAME
|
|
47
|
+
|
|
48
|
+
# ------------------------------------------
|
|
49
|
+
# Deployment (single-server)
|
|
50
|
+
# ------------------------------------------
|
|
51
|
+
VPS_IP=YOUR_VPS_IP_HERE
|
|
52
|
+
DOKPLOY_URL=YOUR_DOKPLOY_URL_HERE
|
|
53
|
+
DOKPLOY_API_KEY=YOUR_DOKPLOY_API_KEY_HERE
|
|
54
|
+
DOKPLOY_APP_ID=YOUR_DOKPLOY_APP_ID_HERE
|
|
55
|
+
DOKPLOY_REFRESH_TOKEN=YOUR_DOKPLOY_REFRESH_TOKEN_HERE
|
|
56
|
+
|
|
57
|
+
# Multi-region deployment (uncomment if using /setup with multi-region)
|
|
58
|
+
# VPS_IP_US=YOUR_US_VPS_IP_HERE
|
|
59
|
+
# VPS_IP_EU=YOUR_EU_VPS_IP_HERE
|
|
60
|
+
# DOKPLOY_URL_US=YOUR_US_DOKPLOY_URL_HERE
|
|
61
|
+
# DOKPLOY_URL_EU=YOUR_EU_DOKPLOY_URL_HERE
|
|
62
|
+
# DOKPLOY_API_KEY_US=YOUR_US_DOKPLOY_API_KEY_HERE
|
|
63
|
+
# DOKPLOY_API_KEY_EU=YOUR_EU_DOKPLOY_API_KEY_HERE
|
|
64
|
+
# DOKPLOY_APP_ID_US=YOUR_US_DOKPLOY_APP_ID_HERE
|
|
65
|
+
# DOKPLOY_APP_ID_EU=YOUR_EU_DOKPLOY_APP_ID_HERE
|
|
66
|
+
# DOKPLOY_REFRESH_TOKEN_US=YOUR_US_DOKPLOY_REFRESH_TOKEN_HERE
|
|
67
|
+
# DOKPLOY_REFRESH_TOKEN_EU=YOUR_EU_DOKPLOY_REFRESH_TOKEN_HERE
|
|
68
|
+
# DEPLOY_REGION=us
|
|
69
|
+
|
|
70
|
+
# ------------------------------------------
|
|
71
|
+
# Monitoring (RuleCatch)
|
|
72
|
+
# ------------------------------------------
|
|
73
|
+
RULECATCH_API_KEY=YOUR_RULECATCH_API_KEY_HERE
|
|
74
|
+
RULECATCH_REGION=us
|
package/.gitignore
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Environment & Secrets
|
|
2
|
+
.env
|
|
3
|
+
.env.local
|
|
4
|
+
.env.production
|
|
5
|
+
.env.staging
|
|
6
|
+
secrets.json
|
|
7
|
+
credentials.json
|
|
8
|
+
service-account.json
|
|
9
|
+
|
|
10
|
+
# Claude Code personal overrides
|
|
11
|
+
CLAUDE.local.md
|
|
12
|
+
.claude/settings.local.json
|
|
13
|
+
|
|
14
|
+
# Dependencies
|
|
15
|
+
node_modules/
|
|
16
|
+
|
|
17
|
+
# Build output
|
|
18
|
+
dist/
|
|
19
|
+
build/
|
|
20
|
+
.next/
|
|
21
|
+
out/
|
|
22
|
+
|
|
23
|
+
# TypeScript
|
|
24
|
+
*.tsbuildinfo
|
|
25
|
+
|
|
26
|
+
# Testing
|
|
27
|
+
coverage/
|
|
28
|
+
.nyc_output/
|
|
29
|
+
test-results/
|
|
30
|
+
playwright-report/
|
|
31
|
+
|
|
32
|
+
# IDE
|
|
33
|
+
.vscode/settings.json
|
|
34
|
+
.idea/
|
|
35
|
+
*.swp
|
|
36
|
+
*.swo
|
|
37
|
+
*~
|
|
38
|
+
|
|
39
|
+
# OS
|
|
40
|
+
.DS_Store
|
|
41
|
+
Thumbs.db
|
|
42
|
+
|
|
43
|
+
# Logs
|
|
44
|
+
*.log
|
|
45
|
+
npm-debug.log*
|
|
46
|
+
yarn-debug.log*
|
|
47
|
+
yarn-error.log*
|
|
48
|
+
|
|
49
|
+
# Temporary AI research files
|
|
50
|
+
_ai_temp/
|
|
51
|
+
|
|
52
|
+
# MDD working directory (docs, audit notes, reports)
|
|
53
|
+
.mdd/
|
|
54
|
+
|
|
55
|
+
# Misc
|
|
56
|
+
*.bak
|
|
57
|
+
*.tmp
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
.code-workspace
|
|
61
|
+
|
|
62
|
+
mdd_dashboard_prompt.md
|
|
63
|
+
# MDD audit reports (ephemeral — regenerated by /mdd audit)
|
|
64
|
+
.mdd/audits/
|
|
65
|
+
# MDD active jobs (ephemeral — deleted on completion)
|
|
66
|
+
.mdd/jobs/
|
|
67
|
+
|
|
68
|
+
*.Zone.Identifier
|
|
69
|
+
_.claude/
|
|
70
|
+
_gh_readme.md
|