achira-wf 3.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/.achira/ARCHITECTURE.md +296 -0
- package/.achira/core/agents/backend-specialist.md +263 -0
- package/.achira/core/agents/code-archaeologist.md +106 -0
- package/.achira/core/agents/database-architect.md +226 -0
- package/.achira/core/agents/debugger.md +225 -0
- package/.achira/core/agents/devops-engineer.md +242 -0
- package/.achira/core/agents/documentation-writer.md +104 -0
- package/.achira/core/agents/explorer-agent.md +73 -0
- package/.achira/core/agents/frontend-specialist.md +593 -0
- package/.achira/core/agents/game-developer.md +162 -0
- package/.achira/core/agents/mobile-developer.md +377 -0
- package/.achira/core/agents/orchestrator.md +416 -0
- package/.achira/core/agents/penetration-tester.md +188 -0
- package/.achira/core/agents/performance-optimizer.md +187 -0
- package/.achira/core/agents/product-manager.md +112 -0
- package/.achira/core/agents/product-owner.md +95 -0
- package/.achira/core/agents/project-planner.md +413 -0
- package/.achira/core/agents/qa-automation-engineer.md +103 -0
- package/.achira/core/agents/security-auditor.md +170 -0
- package/.achira/core/agents/seo-specialist.md +111 -0
- package/.achira/core/agents/test-engineer.md +158 -0
- package/.achira/core/mcp_config.json +24 -0
- package/.achira/core/shared/ui-ux-pro-max/data/charts.csv +26 -0
- package/.achira/core/shared/ui-ux-pro-max/data/colors.csv +97 -0
- package/.achira/core/shared/ui-ux-pro-max/data/icons.csv +101 -0
- package/.achira/core/shared/ui-ux-pro-max/data/landing.csv +31 -0
- package/.achira/core/shared/ui-ux-pro-max/data/products.csv +97 -0
- package/.achira/core/shared/ui-ux-pro-max/data/prompts.csv +24 -0
- package/.achira/core/shared/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/.achira/core/shared/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/.achira/core/shared/ui-ux-pro-max/data/styles.csv +59 -0
- package/.achira/core/shared/ui-ux-pro-max/data/typography.csv +58 -0
- package/.achira/core/shared/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/.achira/core/shared/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/.achira/core/shared/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/.achira/core/shared/ui-ux-pro-max/scripts/__pycache__/core.cpython-313.pyc +0 -0
- package/.achira/core/shared/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-313.pyc +0 -0
- package/.achira/core/shared/ui-ux-pro-max/scripts/__pycache__/generate_theme.cpython-314.pyc +0 -0
- package/.achira/core/shared/ui-ux-pro-max/scripts/core.py +258 -0
- package/.achira/core/shared/ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/.achira/core/shared/ui-ux-pro-max/scripts/generate_theme.py +99 -0
- package/.achira/core/shared/ui-ux-pro-max/scripts/search.py +106 -0
- package/.achira/core/skills/api-patterns/SKILL.md +81 -0
- package/.achira/core/skills/api-patterns/api-style.md +42 -0
- package/.achira/core/skills/api-patterns/auth.md +24 -0
- package/.achira/core/skills/api-patterns/documentation.md +26 -0
- package/.achira/core/skills/api-patterns/graphql.md +41 -0
- package/.achira/core/skills/api-patterns/rate-limiting.md +31 -0
- package/.achira/core/skills/api-patterns/response.md +37 -0
- package/.achira/core/skills/api-patterns/rest.md +40 -0
- package/.achira/core/skills/api-patterns/scripts/api_validator.py +211 -0
- package/.achira/core/skills/api-patterns/security-testing.md +122 -0
- package/.achira/core/skills/api-patterns/trpc.md +41 -0
- package/.achira/core/skills/api-patterns/versioning.md +22 -0
- package/.achira/core/skills/app-builder/SKILL.md +98 -0
- package/.achira/core/skills/app-builder/agent-coordination.md +71 -0
- package/.achira/core/skills/app-builder/feature-building.md +53 -0
- package/.achira/core/skills/app-builder/project-detection.md +34 -0
- package/.achira/core/skills/app-builder/scaffolding.md +118 -0
- package/.achira/core/skills/app-builder/tech-stack.md +40 -0
- package/.achira/core/skills/app-builder/templates/SKILL.md +39 -0
- package/.achira/core/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/.achira/core/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/.achira/core/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/.achira/core/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/.achira/core/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/.achira/core/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/.achira/core/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/.achira/core/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +122 -0
- package/.achira/core/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +122 -0
- package/.achira/core/skills/app-builder/templates/nextjs-static/TEMPLATE.md +169 -0
- package/.achira/core/skills/app-builder/templates/nuxt-app/TEMPLATE.md +134 -0
- package/.achira/core/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/.achira/core/skills/app-builder/templates/react-native-app/TEMPLATE.md +119 -0
- package/.achira/core/skills/architecture/SKILL.md +55 -0
- package/.achira/core/skills/architecture/context-discovery.md +43 -0
- package/.achira/core/skills/architecture/examples.md +94 -0
- package/.achira/core/skills/architecture/pattern-selection.md +68 -0
- package/.achira/core/skills/architecture/patterns-reference.md +50 -0
- package/.achira/core/skills/architecture/trade-off-analysis.md +77 -0
- package/.achira/core/skills/bash-linux/SKILL.md +199 -0
- package/.achira/core/skills/behavioral-modes/SKILL.md +242 -0
- package/.achira/core/skills/brainstorming/SKILL.md +163 -0
- package/.achira/core/skills/brainstorming/dynamic-questioning.md +350 -0
- package/.achira/core/skills/clean-code/SKILL.md +201 -0
- package/.achira/core/skills/code-review-checklist/SKILL.md +109 -0
- package/.achira/core/skills/database-design/SKILL.md +52 -0
- package/.achira/core/skills/database-design/database-selection.md +43 -0
- package/.achira/core/skills/database-design/indexing.md +39 -0
- package/.achira/core/skills/database-design/migrations.md +48 -0
- package/.achira/core/skills/database-design/optimization.md +36 -0
- package/.achira/core/skills/database-design/orm-selection.md +30 -0
- package/.achira/core/skills/database-design/schema-design.md +56 -0
- package/.achira/core/skills/database-design/scripts/schema_validator.py +172 -0
- package/.achira/core/skills/deployment-procedures/SKILL.md +241 -0
- package/.achira/core/skills/doc.md +177 -0
- package/.achira/core/skills/documentation-templates/SKILL.md +194 -0
- package/.achira/core/skills/frontend-design/SKILL.md +418 -0
- package/.achira/core/skills/frontend-design/animation-guide.md +331 -0
- package/.achira/core/skills/frontend-design/color-system.md +311 -0
- package/.achira/core/skills/frontend-design/decision-trees.md +418 -0
- package/.achira/core/skills/frontend-design/motion-graphics.md +306 -0
- package/.achira/core/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/.achira/core/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/.achira/core/skills/frontend-design/typography-system.md +345 -0
- package/.achira/core/skills/frontend-design/ux-psychology.md +1116 -0
- package/.achira/core/skills/frontend-design/visual-effects.md +383 -0
- package/.achira/core/skills/game-development/2d-games/SKILL.md +119 -0
- package/.achira/core/skills/game-development/3d-games/SKILL.md +135 -0
- package/.achira/core/skills/game-development/SKILL.md +167 -0
- package/.achira/core/skills/game-development/game-art/SKILL.md +185 -0
- package/.achira/core/skills/game-development/game-audio/SKILL.md +190 -0
- package/.achira/core/skills/game-development/game-design/SKILL.md +129 -0
- package/.achira/core/skills/game-development/mobile-games/SKILL.md +108 -0
- package/.achira/core/skills/game-development/multiplayer/SKILL.md +132 -0
- package/.achira/core/skills/game-development/pc-games/SKILL.md +144 -0
- package/.achira/core/skills/game-development/vr-ar/SKILL.md +123 -0
- package/.achira/core/skills/game-development/web-games/SKILL.md +150 -0
- package/.achira/core/skills/geo-fundamentals/SKILL.md +156 -0
- package/.achira/core/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/.achira/core/skills/i18n-localization/SKILL.md +154 -0
- package/.achira/core/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/.achira/core/skills/intelligent-routing/SKILL.md +335 -0
- package/.achira/core/skills/lint-and-validate/SKILL.md +45 -0
- package/.achira/core/skills/lint-and-validate/scripts/lint_runner.py +184 -0
- package/.achira/core/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/.achira/core/skills/mcp-builder/SKILL.md +176 -0
- package/.achira/core/skills/mobile-design/SKILL.md +394 -0
- package/.achira/core/skills/mobile-design/decision-trees.md +516 -0
- package/.achira/core/skills/mobile-design/mobile-backend.md +491 -0
- package/.achira/core/skills/mobile-design/mobile-color-system.md +420 -0
- package/.achira/core/skills/mobile-design/mobile-debugging.md +122 -0
- package/.achira/core/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/.achira/core/skills/mobile-design/mobile-navigation.md +458 -0
- package/.achira/core/skills/mobile-design/mobile-performance.md +767 -0
- package/.achira/core/skills/mobile-design/mobile-testing.md +356 -0
- package/.achira/core/skills/mobile-design/mobile-typography.md +433 -0
- package/.achira/core/skills/mobile-design/platform-android.md +666 -0
- package/.achira/core/skills/mobile-design/platform-ios.md +561 -0
- package/.achira/core/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/.achira/core/skills/mobile-design/touch-psychology.md +537 -0
- package/.achira/core/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +312 -0
- package/.achira/core/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +240 -0
- package/.achira/core/skills/nextjs-react-expert/3-server-server-side-performance.md +490 -0
- package/.achira/core/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +264 -0
- package/.achira/core/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +581 -0
- package/.achira/core/skills/nextjs-react-expert/6-rendering-rendering-performance.md +432 -0
- package/.achira/core/skills/nextjs-react-expert/7-js-javascript-performance.md +684 -0
- package/.achira/core/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +150 -0
- package/.achira/core/skills/nextjs-react-expert/SKILL.md +286 -0
- package/.achira/core/skills/nextjs-react-expert/scripts/convert_rules.py +222 -0
- package/.achira/core/skills/nextjs-react-expert/scripts/react_performance_checker.py +252 -0
- package/.achira/core/skills/nodejs-best-practices/SKILL.md +333 -0
- package/.achira/core/skills/parallel-agents/SKILL.md +175 -0
- package/.achira/core/skills/performance-profiling/SKILL.md +143 -0
- package/.achira/core/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/.achira/core/skills/plan-writing/SKILL.md +152 -0
- package/.achira/core/skills/powershell-windows/SKILL.md +167 -0
- package/.achira/core/skills/project-setup/SKILL.md +291 -0
- package/.achira/core/skills/python-patterns/SKILL.md +441 -0
- package/.achira/core/skills/red-team-tactics/SKILL.md +199 -0
- package/.achira/core/skills/rust-pro/SKILL.md +176 -0
- package/.achira/core/skills/seo-fundamentals/SKILL.md +129 -0
- package/.achira/core/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/.achira/core/skills/server-management/SKILL.md +161 -0
- package/.achira/core/skills/systematic-debugging/SKILL.md +109 -0
- package/.achira/core/skills/tailwind-patterns/SKILL.md +269 -0
- package/.achira/core/skills/tdd-workflow/SKILL.md +149 -0
- package/.achira/core/skills/testing-patterns/SKILL.md +178 -0
- package/.achira/core/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/.achira/core/skills/vulnerability-scanner/SKILL.md +276 -0
- package/.achira/core/skills/vulnerability-scanner/checklists.md +121 -0
- package/.achira/core/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/.achira/core/skills/web-design-guidelines/SKILL.md +57 -0
- package/.achira/core/skills/webapp-testing/SKILL.md +187 -0
- package/.achira/core/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/.achira/rules/GEMINI.md +273 -0
- package/.achira/scripts/__pycache__/checklist.cpython-314.pyc +0 -0
- package/.achira/scripts/__pycache__/shared_utils.cpython-314.pyc +0 -0
- package/.achira/scripts/__pycache__/verify_all.cpython-314.pyc +0 -0
- package/.achira/scripts/auto_preview.py +148 -0
- package/.achira/scripts/checklist.py +193 -0
- package/.achira/scripts/session_manager.py +120 -0
- package/.achira/scripts/shared_utils.py +64 -0
- package/.achira/scripts/verify_all.py +304 -0
- package/.achira/workflows/brainstorm.md +113 -0
- package/.achira/workflows/create.md +59 -0
- package/.achira/workflows/debug.md +103 -0
- package/.achira/workflows/deploy.md +176 -0
- package/.achira/workflows/enhance.md +63 -0
- package/.achira/workflows/html+js+css.md +363 -0
- package/.achira/workflows/next.js.md +316 -0
- package/.achira/workflows/orchestrate.md +237 -0
- package/.achira/workflows/plan.md +89 -0
- package/.achira/workflows/preview.md +81 -0
- package/.achira/workflows/react+vite.md +280 -0
- package/.achira/workflows/registry.json +35 -0
- package/.achira/workflows/status.md +86 -0
- package/.achira/workflows/test.md +144 -0
- package/.achira/workflows/ui-ux-pro-max.md +296 -0
- package/.agent/workflows/brainstorm.md +113 -0
- package/.agent/workflows/create.md +59 -0
- package/.agent/workflows/debug.md +103 -0
- package/.agent/workflows/deploy.md +176 -0
- package/.agent/workflows/enhance.md +63 -0
- package/.agent/workflows/html+js+css.md +363 -0
- package/.agent/workflows/next.js.md +316 -0
- package/.agent/workflows/orchestrate.md +237 -0
- package/.agent/workflows/plan.md +89 -0
- package/.agent/workflows/preview.md +81 -0
- package/.agent/workflows/react+vite.md +280 -0
- package/.agent/workflows/status.md +86 -0
- package/.agent/workflows/test.md +144 -0
- package/.agent/workflows/ui-ux-pro-max.md +296 -0
- package/LICENSE +21 -0
- package/README.md +110 -0
- package/cli.js +293 -0
- package/package.json +48 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Debugging command. Activates DEBUG mode for systematic problem investigation.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /debug - Systematic Problem Investigation
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This command activates DEBUG mode for systematic investigation of issues, errors, or unexpected behavior.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Behavior
|
|
18
|
+
|
|
19
|
+
When `/debug` is triggered:
|
|
20
|
+
|
|
21
|
+
1. **Gather information**
|
|
22
|
+
- Error message
|
|
23
|
+
- Reproduction steps
|
|
24
|
+
- Expected vs actual behavior
|
|
25
|
+
- Recent changes
|
|
26
|
+
|
|
27
|
+
2. **Form hypotheses**
|
|
28
|
+
- List possible causes
|
|
29
|
+
- Order by likelihood
|
|
30
|
+
|
|
31
|
+
3. **Investigate systematically**
|
|
32
|
+
- Test each hypothesis
|
|
33
|
+
- Check logs, data flow
|
|
34
|
+
- Use elimination method
|
|
35
|
+
|
|
36
|
+
4. **Fix and prevent**
|
|
37
|
+
- Apply fix
|
|
38
|
+
- Explain root cause
|
|
39
|
+
- Add prevention measures
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Output Format
|
|
44
|
+
|
|
45
|
+
```markdown
|
|
46
|
+
## 🔍 Debug: [Issue]
|
|
47
|
+
|
|
48
|
+
### 1. Symptom
|
|
49
|
+
[What's happening]
|
|
50
|
+
|
|
51
|
+
### 2. Information Gathered
|
|
52
|
+
- Error: `[error message]`
|
|
53
|
+
- File: `[filepath]`
|
|
54
|
+
- Line: [line number]
|
|
55
|
+
|
|
56
|
+
### 3. Hypotheses
|
|
57
|
+
1. ❓ [Most likely cause]
|
|
58
|
+
2. ❓ [Second possibility]
|
|
59
|
+
3. ❓ [Less likely cause]
|
|
60
|
+
|
|
61
|
+
### 4. Investigation
|
|
62
|
+
|
|
63
|
+
**Testing hypothesis 1:**
|
|
64
|
+
[What I checked] → [Result]
|
|
65
|
+
|
|
66
|
+
**Testing hypothesis 2:**
|
|
67
|
+
[What I checked] → [Result]
|
|
68
|
+
|
|
69
|
+
### 5. Root Cause
|
|
70
|
+
🎯 **[Explanation of why this happened]**
|
|
71
|
+
|
|
72
|
+
### 6. Fix
|
|
73
|
+
```[language]
|
|
74
|
+
// Before
|
|
75
|
+
[broken code]
|
|
76
|
+
|
|
77
|
+
// After
|
|
78
|
+
[fixed code]
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### 7. Prevention
|
|
82
|
+
🛡️ [How to prevent this in the future]
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Examples
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
/debug login not working
|
|
91
|
+
/debug API returns 500
|
|
92
|
+
/debug form doesn't submit
|
|
93
|
+
/debug data not saving
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Key Principles
|
|
99
|
+
|
|
100
|
+
- **Ask before assuming** - get full error context
|
|
101
|
+
- **Test hypotheses** - don't guess randomly
|
|
102
|
+
- **Explain why** - not just what to fix
|
|
103
|
+
- **Prevent recurrence** - add tests, validation
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Deployment command for production releases. Pre-flight checks and deployment execution.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /deploy - Production Deployment
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This command handles production deployment with pre-flight checks, deployment execution, and verification.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Sub-commands
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
/deploy - Interactive deployment wizard
|
|
21
|
+
/deploy check - Run pre-deployment checks only
|
|
22
|
+
/deploy preview - Deploy to preview/staging
|
|
23
|
+
/deploy production - Deploy to production
|
|
24
|
+
/deploy rollback - Rollback to previous version
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Pre-Deployment Checklist
|
|
30
|
+
|
|
31
|
+
Before any deployment:
|
|
32
|
+
|
|
33
|
+
```markdown
|
|
34
|
+
## 🚀 Pre-Deploy Checklist
|
|
35
|
+
|
|
36
|
+
### Code Quality
|
|
37
|
+
- [ ] No TypeScript errors (`npx tsc --noEmit`)
|
|
38
|
+
- [ ] ESLint passing (`npx eslint .`)
|
|
39
|
+
- [ ] All tests passing (`npm test`)
|
|
40
|
+
|
|
41
|
+
### Security
|
|
42
|
+
- [ ] No hardcoded secrets
|
|
43
|
+
- [ ] Environment variables documented
|
|
44
|
+
- [ ] Dependencies audited (`npm audit`)
|
|
45
|
+
|
|
46
|
+
### Performance
|
|
47
|
+
- [ ] Bundle size acceptable
|
|
48
|
+
- [ ] No console.log statements
|
|
49
|
+
- [ ] Images optimized
|
|
50
|
+
|
|
51
|
+
### Documentation
|
|
52
|
+
- [ ] README updated
|
|
53
|
+
- [ ] CHANGELOG updated
|
|
54
|
+
- [ ] API docs current
|
|
55
|
+
|
|
56
|
+
### Ready to deploy? (y/n)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Deployment Flow
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
┌─────────────────┐
|
|
65
|
+
│ /deploy │
|
|
66
|
+
└────────┬────────┘
|
|
67
|
+
│
|
|
68
|
+
▼
|
|
69
|
+
┌─────────────────┐
|
|
70
|
+
│ Pre-flight │
|
|
71
|
+
│ checks │
|
|
72
|
+
└────────┬────────┘
|
|
73
|
+
│
|
|
74
|
+
Pass? ──No──► Fix issues
|
|
75
|
+
│
|
|
76
|
+
Yes
|
|
77
|
+
│
|
|
78
|
+
▼
|
|
79
|
+
┌─────────────────┐
|
|
80
|
+
│ Build │
|
|
81
|
+
│ application │
|
|
82
|
+
└────────┬────────┘
|
|
83
|
+
│
|
|
84
|
+
▼
|
|
85
|
+
┌─────────────────┐
|
|
86
|
+
│ Deploy to │
|
|
87
|
+
│ platform │
|
|
88
|
+
└────────┬────────┘
|
|
89
|
+
│
|
|
90
|
+
▼
|
|
91
|
+
┌─────────────────┐
|
|
92
|
+
│ Health check │
|
|
93
|
+
│ & verify │
|
|
94
|
+
└────────┬────────┘
|
|
95
|
+
│
|
|
96
|
+
▼
|
|
97
|
+
┌─────────────────┐
|
|
98
|
+
│ ✅ Complete │
|
|
99
|
+
└─────────────────┘
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Output Format
|
|
105
|
+
|
|
106
|
+
### Successful Deploy
|
|
107
|
+
|
|
108
|
+
```markdown
|
|
109
|
+
## 🚀 Deployment Complete
|
|
110
|
+
|
|
111
|
+
### Summary
|
|
112
|
+
- **Version:** v1.2.3
|
|
113
|
+
- **Environment:** production
|
|
114
|
+
- **Duration:** 47 seconds
|
|
115
|
+
- **Platform:** Vercel
|
|
116
|
+
|
|
117
|
+
### URLs
|
|
118
|
+
- 🌐 Production: https://app.example.com
|
|
119
|
+
- 📊 Dashboard: https://vercel.com/project
|
|
120
|
+
|
|
121
|
+
### What Changed
|
|
122
|
+
- Added user profile feature
|
|
123
|
+
- Fixed login bug
|
|
124
|
+
- Updated dependencies
|
|
125
|
+
|
|
126
|
+
### Health Check
|
|
127
|
+
✅ API responding (200 OK)
|
|
128
|
+
✅ Database connected
|
|
129
|
+
✅ All services healthy
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Failed Deploy
|
|
133
|
+
|
|
134
|
+
```markdown
|
|
135
|
+
## ❌ Deployment Failed
|
|
136
|
+
|
|
137
|
+
### Error
|
|
138
|
+
Build failed at step: TypeScript compilation
|
|
139
|
+
|
|
140
|
+
### Details
|
|
141
|
+
```
|
|
142
|
+
error TS2345: Argument of type 'string' is not assignable...
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Resolution
|
|
146
|
+
1. Fix TypeScript error in `src/services/user.ts:45`
|
|
147
|
+
2. Run `npm run build` locally to verify
|
|
148
|
+
3. Try `/deploy` again
|
|
149
|
+
|
|
150
|
+
### Rollback Available
|
|
151
|
+
Previous version (v1.2.2) is still active.
|
|
152
|
+
Run `/deploy rollback` if needed.
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## Platform Support
|
|
158
|
+
|
|
159
|
+
| Platform | Command | Notes |
|
|
160
|
+
|----------|---------|-------|
|
|
161
|
+
| Vercel | `vercel --prod` | Auto-detected for Next.js |
|
|
162
|
+
| Railway | `railway up` | Needs Railway CLI |
|
|
163
|
+
| Fly.io | `fly deploy` | Needs flyctl |
|
|
164
|
+
| Docker | `docker compose up -d` | For self-hosted |
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## Examples
|
|
169
|
+
|
|
170
|
+
```
|
|
171
|
+
/deploy
|
|
172
|
+
/deploy check
|
|
173
|
+
/deploy preview
|
|
174
|
+
/deploy production --skip-tests
|
|
175
|
+
/deploy rollback
|
|
176
|
+
```
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Add or update features in existing application. Used for iterative development.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /enhance - Update Application
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Task
|
|
12
|
+
|
|
13
|
+
This command adds features or makes updates to existing application.
|
|
14
|
+
|
|
15
|
+
### Steps:
|
|
16
|
+
|
|
17
|
+
1. **Understand Current State**
|
|
18
|
+
- Load project state with `python .achira/scripts/session_manager.py info`
|
|
19
|
+
- Understand existing features, tech stack
|
|
20
|
+
|
|
21
|
+
2. **Plan Changes**
|
|
22
|
+
- Determine what will be added/changed
|
|
23
|
+
- Detect affected files
|
|
24
|
+
- Check dependencies
|
|
25
|
+
|
|
26
|
+
3. **Present Plan to User** (for major changes)
|
|
27
|
+
```
|
|
28
|
+
"To add admin panel:
|
|
29
|
+
- I'll create 15 new files
|
|
30
|
+
- Update 8 files
|
|
31
|
+
- Takes ~10 minutes
|
|
32
|
+
|
|
33
|
+
Should I start?"
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
4. **Apply**
|
|
37
|
+
- Call relevant agents
|
|
38
|
+
- Make changes
|
|
39
|
+
- Test
|
|
40
|
+
|
|
41
|
+
5. **Update Preview**
|
|
42
|
+
- Hot reload or restart
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Usage Examples
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
/enhance add dark mode
|
|
50
|
+
/enhance build admin panel
|
|
51
|
+
/enhance integrate payment system
|
|
52
|
+
/enhance add search feature
|
|
53
|
+
/enhance edit profile page
|
|
54
|
+
/enhance make responsive
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Caution
|
|
60
|
+
|
|
61
|
+
- Get approval for major changes
|
|
62
|
+
- Warn on conflicting requests (e.g., "use Firebase" when project uses PostgreSQL)
|
|
63
|
+
- Commit each change with git
|
|
@@ -0,0 +1,363 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Scaffold a clean, scalable vanilla HTML + CSS + JavaScript project with clear separation of concerns.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
// turbo-all
|
|
6
|
+
|
|
7
|
+
## Philosophy
|
|
8
|
+
|
|
9
|
+
This workflow enforces a strict separation between structure, style, and behavior.
|
|
10
|
+
|
|
11
|
+
- **HTML** = Structure only. No inline styles, no inline scripts.
|
|
12
|
+
- **CSS** = Styling only. Split by concern: globals, layout, page-specific.
|
|
13
|
+
- **JS** = Behavior only. Modular ES modules — one entry point, shared utils.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 1. Create the Project Structure
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
mkdir src
|
|
21
|
+
mkdir src/pages
|
|
22
|
+
mkdir src/styles
|
|
23
|
+
mkdir src/scripts
|
|
24
|
+
mkdir src/components
|
|
25
|
+
mkdir public
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Final structure:
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
project/
|
|
32
|
+
├── public/
|
|
33
|
+
├── src/
|
|
34
|
+
│ ├── pages/
|
|
35
|
+
│ │ └── index.html
|
|
36
|
+
│ ├── styles/
|
|
37
|
+
│ │ ├── globals.css
|
|
38
|
+
│ │ ├── layout.css
|
|
39
|
+
│ │ └── index.css
|
|
40
|
+
│ ├── scripts/
|
|
41
|
+
│ │ ├── main.js
|
|
42
|
+
│ │ └── utils.js
|
|
43
|
+
│ └── components/
|
|
44
|
+
├── jsconfig.json
|
|
45
|
+
├── .gitignore
|
|
46
|
+
└── README.md
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 2. Create `src/pages/index.html`
|
|
52
|
+
|
|
53
|
+
The entry point. Links all CSS and the JS module. No styles or scripts inline.
|
|
54
|
+
|
|
55
|
+
```html
|
|
56
|
+
<!DOCTYPE html>
|
|
57
|
+
<html lang="en">
|
|
58
|
+
<head>
|
|
59
|
+
<meta charset="UTF-8" />
|
|
60
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
61
|
+
<title>My Project</title>
|
|
62
|
+
|
|
63
|
+
<!-- Global reset + variables -->
|
|
64
|
+
<link rel="stylesheet" href="../styles/globals.css" />
|
|
65
|
+
<!-- Reusable layout utilities -->
|
|
66
|
+
<link rel="stylesheet" href="../styles/layout.css" />
|
|
67
|
+
<!-- Page-specific styles -->
|
|
68
|
+
<link rel="stylesheet" href="../styles/index.css" />
|
|
69
|
+
</head>
|
|
70
|
+
<body>
|
|
71
|
+
<div class="container">
|
|
72
|
+
<h1>Hello World</h1>
|
|
73
|
+
</div>
|
|
74
|
+
|
|
75
|
+
<!-- module: enables import/export -->
|
|
76
|
+
<script type="module" src="../scripts/main.js"></script>
|
|
77
|
+
</body>
|
|
78
|
+
</html>
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 3. Create `src/styles/globals.css`
|
|
84
|
+
|
|
85
|
+
The single source of truth for CSS variables and the global reset.
|
|
86
|
+
No component-specific styles go here.
|
|
87
|
+
|
|
88
|
+
```css
|
|
89
|
+
/* Modern Reset */
|
|
90
|
+
*,
|
|
91
|
+
*::before,
|
|
92
|
+
*::after {
|
|
93
|
+
margin: 0;
|
|
94
|
+
padding: 0;
|
|
95
|
+
box-sizing: border-box;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
html {
|
|
99
|
+
font-size: 16px;
|
|
100
|
+
scroll-behavior: smooth;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
img,
|
|
104
|
+
picture,
|
|
105
|
+
video,
|
|
106
|
+
canvas,
|
|
107
|
+
svg {
|
|
108
|
+
display: block;
|
|
109
|
+
max-width: 100%;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
button {
|
|
113
|
+
cursor: pointer;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/* Design Tokens */
|
|
117
|
+
:root {
|
|
118
|
+
--color-primary: #6366f1;
|
|
119
|
+
--color-bg: #ffffff;
|
|
120
|
+
--color-text: #111827;
|
|
121
|
+
--color-subtle: #6b7280;
|
|
122
|
+
--font-sans: system-ui, -apple-system, sans-serif;
|
|
123
|
+
--transition-default: all 0.2s ease;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
@media (prefers-color-scheme: dark) {
|
|
127
|
+
:root {
|
|
128
|
+
--color-bg: #0f172a;
|
|
129
|
+
--color-text: #f8fafc;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
body {
|
|
134
|
+
font-family: var(--font-sans);
|
|
135
|
+
background-color: var(--color-bg);
|
|
136
|
+
color: var(--color-text);
|
|
137
|
+
line-height: 1.6;
|
|
138
|
+
}
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## 4. Create `src/styles/layout.css`
|
|
144
|
+
|
|
145
|
+
Shared structural utilities across all pages. Not page-specific.
|
|
146
|
+
|
|
147
|
+
```css
|
|
148
|
+
/* Centered content wrapper */
|
|
149
|
+
.container {
|
|
150
|
+
width: min(1100px, 90%);
|
|
151
|
+
margin: 0 auto;
|
|
152
|
+
padding: 2rem 0;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/* Utility layout classes */
|
|
156
|
+
.flex {
|
|
157
|
+
display: flex;
|
|
158
|
+
}
|
|
159
|
+
.flex-col {
|
|
160
|
+
flex-direction: column;
|
|
161
|
+
}
|
|
162
|
+
.flex-center {
|
|
163
|
+
display: flex;
|
|
164
|
+
align-items: center;
|
|
165
|
+
justify-content: center;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.grid {
|
|
169
|
+
display: grid;
|
|
170
|
+
}
|
|
171
|
+
.grid-2 {
|
|
172
|
+
grid-template-columns: repeat(2, 1fr);
|
|
173
|
+
gap: 1.5rem;
|
|
174
|
+
}
|
|
175
|
+
.grid-3 {
|
|
176
|
+
grid-template-columns: repeat(3, 1fr);
|
|
177
|
+
gap: 1.5rem;
|
|
178
|
+
}
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## 5. Create `src/styles/index.css`
|
|
184
|
+
|
|
185
|
+
Styles for the index page only. Each page gets its own file.
|
|
186
|
+
|
|
187
|
+
```css
|
|
188
|
+
/* index page styles */
|
|
189
|
+
h1 {
|
|
190
|
+
color: var(--color-primary);
|
|
191
|
+
font-size: 2.5rem;
|
|
192
|
+
margin-bottom: 1rem;
|
|
193
|
+
}
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## 6. Create `src/scripts/utils.js`
|
|
199
|
+
|
|
200
|
+
Pure, reusable helper functions. No DOM access. No side effects.
|
|
201
|
+
|
|
202
|
+
```javascript
|
|
203
|
+
/**
|
|
204
|
+
* One-call app initializer. Add further calls here as the app grows.
|
|
205
|
+
*/
|
|
206
|
+
export function initApp() {
|
|
207
|
+
console.log("[App] Initialized");
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* Convenience wrapper: returns a single element or null.
|
|
212
|
+
* @param {string} selector
|
|
213
|
+
* @returns {Element|null}
|
|
214
|
+
*/
|
|
215
|
+
export function qs(selector) {
|
|
216
|
+
return document.querySelector(selector);
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
/**
|
|
220
|
+
* Convenience wrapper: returns a NodeList.
|
|
221
|
+
* @param {string} selector
|
|
222
|
+
* @returns {NodeList}
|
|
223
|
+
*/
|
|
224
|
+
export function qsAll(selector) {
|
|
225
|
+
return document.querySelectorAll(selector);
|
|
226
|
+
}
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## 7. Create `src/scripts/main.js`
|
|
232
|
+
|
|
233
|
+
The single JS entry point. Imports utils, hooks into `DOMContentLoaded`.
|
|
234
|
+
Page-specific logic starts here, but delegates to modules.
|
|
235
|
+
|
|
236
|
+
```javascript
|
|
237
|
+
import { initApp } from "./utils.js";
|
|
238
|
+
|
|
239
|
+
document.addEventListener("DOMContentLoaded", () => {
|
|
240
|
+
initApp();
|
|
241
|
+
});
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
## 8. Create `jsconfig.json`
|
|
247
|
+
|
|
248
|
+
Enable IntelliSense, type-checking via JSDoc, and module resolution in VS Code.
|
|
249
|
+
|
|
250
|
+
```json
|
|
251
|
+
{
|
|
252
|
+
"compilerOptions": {
|
|
253
|
+
"checkJs": true,
|
|
254
|
+
"moduleResolution": "node",
|
|
255
|
+
"target": "ES2020",
|
|
256
|
+
"module": "ES2020"
|
|
257
|
+
},
|
|
258
|
+
"include": ["src/**/*.js"],
|
|
259
|
+
"exclude": ["node_modules"]
|
|
260
|
+
}
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## 9. Create `.gitignore`
|
|
266
|
+
|
|
267
|
+
```
|
|
268
|
+
node_modules/
|
|
269
|
+
dist/
|
|
270
|
+
.DS_Store
|
|
271
|
+
*.log
|
|
272
|
+
.env
|
|
273
|
+
.env.local
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## 10. Create `README.md`
|
|
279
|
+
|
|
280
|
+
```markdown
|
|
281
|
+
# Project Name
|
|
282
|
+
|
|
283
|
+
A clean HTML + CSS + JS project.
|
|
284
|
+
|
|
285
|
+
## Structure
|
|
286
|
+
|
|
287
|
+
| Folder | Purpose |
|
|
288
|
+
| ----------------- | ----------------------------------------------------------------------------------- |
|
|
289
|
+
| `src/pages/` | HTML entry points — one file per page |
|
|
290
|
+
| `src/styles/` | `globals.css` (design tokens), `layout.css` (utilities), `page.css` (page-specific) |
|
|
291
|
+
| `src/scripts/` | `main.js` (entry), `utils.js` (shared helpers) |
|
|
292
|
+
| `src/components/` | Reusable HTML snippets (loaded/injected via JS if needed) |
|
|
293
|
+
| `public/` | Static assets: images, fonts, favicon |
|
|
294
|
+
|
|
295
|
+
## Rules
|
|
296
|
+
|
|
297
|
+
- No inline CSS
|
|
298
|
+
- No inline scripts
|
|
299
|
+
- Use CSS variables from `globals.css`
|
|
300
|
+
- Use `type="module"` on all script tags
|
|
301
|
+
- One CSS file per page (mirroring `src/pages/`)
|
|
302
|
+
|
|
303
|
+
## Dev Server
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
npm run dev
|
|
307
|
+
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## 11. Initialize npm and Install Dev Server
|
|
315
|
+
|
|
316
|
+
```
|
|
317
|
+
npm init -y
|
|
318
|
+
npm install -D vite
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
Add to `package.json`:
|
|
322
|
+
|
|
323
|
+
```json
|
|
324
|
+
"scripts": {
|
|
325
|
+
"dev": "vite src/pages --port=3000 --open",
|
|
326
|
+
"build": "vite build",
|
|
327
|
+
"preview": "vite preview"
|
|
328
|
+
}
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
Run:
|
|
332
|
+
|
|
333
|
+
```
|
|
334
|
+
npm run dev
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
---
|
|
338
|
+
|
|
339
|
+
## Scaling Rules
|
|
340
|
+
|
|
341
|
+
As the project grows, follow this pattern:
|
|
342
|
+
|
|
343
|
+
```
|
|
344
|
+
src/
|
|
345
|
+
├── pages/
|
|
346
|
+
│ ├── index.html ← each page has its own HTML
|
|
347
|
+
│ ├── about.html
|
|
348
|
+
│ └── contact.html
|
|
349
|
+
├── styles/
|
|
350
|
+
│ ├── globals.css ← shared always
|
|
351
|
+
│ ├── layout.css ← shared always
|
|
352
|
+
│ ├── index.css ← page-specific
|
|
353
|
+
│ ├── about.css
|
|
354
|
+
│ └── contact.css
|
|
355
|
+
├── scripts/
|
|
356
|
+
│ ├── main.js ← one per page (or shared entry + conditionals)
|
|
357
|
+
│ └── utils.js
|
|
358
|
+
└── components/ ← HTML snippets injected via fetch() or JS
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
- Never let `globals.css` accumulate page-specific rules.
|
|
362
|
+
- Never use `<style>` tags inside HTML files.
|
|
363
|
+
- Never write logic inside event listeners — delegate to named functions.
|