tribunal-kit 2.4.6 → 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/.agent/ARCHITECTURE.md +99 -99
- package/.agent/GEMINI.md +52 -52
- package/.agent/agents/accessibility-reviewer.md +139 -86
- package/.agent/agents/ai-code-reviewer.md +160 -90
- package/.agent/agents/backend-specialist.md +164 -127
- package/.agent/agents/code-archaeologist.md +115 -73
- package/.agent/agents/database-architect.md +130 -110
- package/.agent/agents/debugger.md +137 -97
- package/.agent/agents/dependency-reviewer.md +78 -30
- package/.agent/agents/devops-engineer.md +161 -118
- package/.agent/agents/documentation-writer.md +151 -87
- package/.agent/agents/explorer-agent.md +117 -99
- package/.agent/agents/frontend-reviewer.md +127 -47
- package/.agent/agents/frontend-specialist.md +169 -109
- package/.agent/agents/game-developer.md +28 -164
- package/.agent/agents/logic-reviewer.md +87 -49
- package/.agent/agents/mobile-developer.md +151 -103
- package/.agent/agents/mobile-reviewer.md +133 -50
- package/.agent/agents/orchestrator.md +121 -110
- package/.agent/agents/penetration-tester.md +103 -77
- package/.agent/agents/performance-optimizer.md +136 -92
- package/.agent/agents/performance-reviewer.md +139 -69
- package/.agent/agents/product-manager.md +104 -70
- package/.agent/agents/product-owner.md +6 -25
- package/.agent/agents/project-planner.md +95 -95
- package/.agent/agents/qa-automation-engineer.md +174 -87
- package/.agent/agents/security-auditor.md +133 -129
- package/.agent/agents/seo-specialist.md +160 -99
- package/.agent/agents/sql-reviewer.md +132 -44
- package/.agent/agents/supervisor-agent.md +137 -109
- package/.agent/agents/swarm-worker-contracts.md +17 -17
- package/.agent/agents/swarm-worker-registry.md +46 -46
- package/.agent/agents/test-coverage-reviewer.md +132 -53
- package/.agent/agents/test-engineer.md +0 -21
- package/.agent/agents/type-safety-reviewer.md +143 -33
- package/.agent/patterns/generator.md +9 -9
- package/.agent/patterns/inversion.md +12 -12
- package/.agent/patterns/pipeline.md +9 -9
- package/.agent/patterns/reviewer.md +13 -13
- package/.agent/patterns/tool-wrapper.md +9 -9
- package/.agent/rules/GEMINI.md +63 -63
- package/.agent/scripts/__pycache__/auto_preview.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/bundle_analyzer.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/checklist.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/dependency_analyzer.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/security_scan.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/session_manager.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/skill_integrator.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/swarm_dispatcher.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/test_runner.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/verify_all.cpython-311.pyc +0 -0
- package/.agent/scripts/compress_skills.py +167 -0
- package/.agent/scripts/consolidate_skills.py +173 -0
- package/.agent/scripts/deep_compress.py +202 -0
- package/.agent/scripts/minify_context.py +80 -0
- package/.agent/scripts/security_scan.py +1 -1
- package/.agent/scripts/strip_tribunal.py +41 -0
- package/.agent/skills/agent-organizer/SKILL.md +60 -100
- package/.agent/skills/agentic-patterns/SKILL.md +0 -70
- package/.agent/skills/ai-prompt-injection-defense/SKILL.md +108 -53
- package/.agent/skills/api-patterns/SKILL.md +197 -257
- package/.agent/skills/api-security-auditor/SKILL.md +125 -57
- package/.agent/skills/app-builder/SKILL.md +326 -50
- package/.agent/skills/app-builder/templates/SKILL.md +13 -15
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +16 -16
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +22 -22
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +18 -18
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +20 -20
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +17 -17
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +18 -18
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +21 -21
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +19 -19
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +26 -26
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +26 -26
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +19 -19
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +18 -18
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +20 -20
- package/.agent/skills/appflow-wireframe/SKILL.md +71 -98
- package/.agent/skills/architecture/SKILL.md +161 -200
- package/.agent/skills/authentication-best-practices/SKILL.md +121 -54
- package/.agent/skills/bash-linux/SKILL.md +71 -166
- package/.agent/skills/behavioral-modes/SKILL.md +8 -69
- package/.agent/skills/brainstorming/SKILL.md +345 -127
- package/.agent/skills/building-native-ui/SKILL.md +125 -57
- package/.agent/skills/clean-code/SKILL.md +266 -149
- package/.agent/skills/code-review-checklist/SKILL.md +0 -62
- package/.agent/skills/config-validator/SKILL.md +73 -131
- package/.agent/skills/csharp-developer/SKILL.md +434 -73
- package/.agent/skills/database-design/SKILL.md +190 -275
- package/.agent/skills/deployment-procedures/SKILL.md +81 -158
- package/.agent/skills/devops-engineer/SKILL.md +255 -94
- package/.agent/skills/devops-incident-responder/SKILL.md +50 -69
- package/.agent/skills/doc.md +5 -5
- package/.agent/skills/documentation-templates/SKILL.md +19 -63
- package/.agent/skills/edge-computing/SKILL.md +75 -165
- package/.agent/skills/extract-design-system/SKILL.md +84 -58
- package/.agent/skills/framer-motion-expert/SKILL.md +195 -0
- package/.agent/skills/frontend-design/SKILL.md +151 -499
- package/.agent/skills/game-design-expert/SKILL.md +71 -0
- package/.agent/skills/game-engineering-expert/SKILL.md +88 -0
- package/.agent/skills/geo-fundamentals/SKILL.md +52 -178
- package/.agent/skills/github-operations/SKILL.md +197 -272
- package/.agent/skills/gsap-expert/SKILL.md +194 -0
- package/.agent/skills/i18n-localization/SKILL.md +60 -172
- package/.agent/skills/intelligent-routing/SKILL.md +123 -103
- package/.agent/skills/lint-and-validate/SKILL.md +8 -52
- package/.agent/skills/llm-engineering/SKILL.md +281 -195
- package/.agent/skills/local-first/SKILL.md +76 -159
- package/.agent/skills/mcp-builder/SKILL.md +48 -188
- package/.agent/skills/mobile-design/SKILL.md +213 -219
- package/.agent/skills/motion-engineering/SKILL.md +184 -0
- package/.agent/skills/nextjs-react-expert/SKILL.md +184 -203
- package/.agent/skills/nodejs-best-practices/SKILL.md +403 -185
- package/.agent/skills/observability/SKILL.md +211 -203
- package/.agent/skills/parallel-agents/SKILL.md +53 -146
- package/.agent/skills/performance-profiling/SKILL.md +171 -151
- package/.agent/skills/plan-writing/SKILL.md +49 -153
- package/.agent/skills/platform-engineer/SKILL.md +57 -103
- package/.agent/skills/playwright-best-practices/SKILL.md +110 -63
- package/.agent/skills/powershell-windows/SKILL.md +61 -179
- package/.agent/skills/python-patterns/SKILL.md +7 -35
- package/.agent/skills/python-pro/SKILL.md +273 -114
- package/.agent/skills/react-specialist/SKILL.md +227 -108
- package/.agent/skills/readme-builder/SKILL.md +15 -85
- package/.agent/skills/realtime-patterns/SKILL.md +216 -243
- package/.agent/skills/red-team-tactics/SKILL.md +10 -51
- package/.agent/skills/rust-pro/SKILL.md +525 -142
- package/.agent/skills/seo-fundamentals/SKILL.md +92 -153
- package/.agent/skills/server-management/SKILL.md +110 -166
- package/.agent/skills/shadcn-ui-expert/SKILL.md +154 -55
- package/.agent/skills/skill-creator/SKILL.md +18 -58
- package/.agent/skills/sql-pro/SKILL.md +543 -68
- package/.agent/skills/supabase-postgres-best-practices/SKILL.md +28 -68
- package/.agent/skills/swiftui-expert/SKILL.md +124 -57
- package/.agent/skills/systematic-debugging/SKILL.md +49 -151
- package/.agent/skills/tailwind-patterns/SKILL.md +433 -149
- package/.agent/skills/tdd-workflow/SKILL.md +63 -169
- package/.agent/skills/test-result-analyzer/SKILL.md +33 -73
- package/.agent/skills/testing-patterns/SKILL.md +437 -130
- package/.agent/skills/trend-researcher/SKILL.md +30 -71
- package/.agent/skills/ui-ux-pro-max/SKILL.md +0 -41
- package/.agent/skills/ui-ux-researcher/SKILL.md +51 -91
- package/.agent/skills/vue-expert/SKILL.md +225 -119
- package/.agent/skills/vulnerability-scanner/SKILL.md +264 -226
- package/.agent/skills/web-accessibility-auditor/SKILL.md +141 -58
- package/.agent/skills/web-design-guidelines/SKILL.md +17 -61
- package/.agent/skills/webapp-testing/SKILL.md +71 -196
- package/.agent/skills/whimsy-injector/SKILL.md +58 -132
- package/.agent/skills/workflow-optimizer/SKILL.md +28 -68
- package/.agent/workflows/api-tester.md +96 -224
- package/.agent/workflows/audit.md +81 -122
- package/.agent/workflows/brainstorm.md +69 -105
- package/.agent/workflows/changelog.md +65 -97
- package/.agent/workflows/create.md +73 -88
- package/.agent/workflows/debug.md +80 -111
- package/.agent/workflows/deploy.md +119 -92
- package/.agent/workflows/enhance.md +80 -91
- package/.agent/workflows/fix.md +68 -97
- package/.agent/workflows/generate.md +165 -164
- package/.agent/workflows/migrate.md +106 -109
- package/.agent/workflows/orchestrate.md +103 -86
- package/.agent/workflows/performance-benchmarker.md +77 -268
- package/.agent/workflows/plan.md +120 -98
- package/.agent/workflows/preview.md +39 -96
- package/.agent/workflows/refactor.md +105 -97
- package/.agent/workflows/review-ai.md +63 -102
- package/.agent/workflows/review.md +71 -110
- package/.agent/workflows/session.md +53 -113
- package/.agent/workflows/status.md +42 -88
- package/.agent/workflows/strengthen-skills.md +90 -51
- package/.agent/workflows/swarm.md +114 -129
- package/.agent/workflows/test.md +125 -102
- package/.agent/workflows/tribunal-backend.md +60 -78
- package/.agent/workflows/tribunal-database.md +62 -100
- package/.agent/workflows/tribunal-frontend.md +62 -82
- package/.agent/workflows/tribunal-full.md +56 -100
- package/.agent/workflows/tribunal-mobile.md +65 -94
- package/.agent/workflows/tribunal-performance.md +62 -105
- package/.agent/workflows/ui-ux-pro-max.md +72 -121
- package/README.md +11 -15
- package/package.json +1 -1
- package/.agent/skills/api-patterns/api-style.md +0 -42
- package/.agent/skills/api-patterns/auth.md +0 -24
- package/.agent/skills/api-patterns/documentation.md +0 -26
- package/.agent/skills/api-patterns/graphql.md +0 -41
- package/.agent/skills/api-patterns/rate-limiting.md +0 -31
- package/.agent/skills/api-patterns/response.md +0 -37
- package/.agent/skills/api-patterns/rest.md +0 -40
- package/.agent/skills/api-patterns/security-testing.md +0 -122
- package/.agent/skills/api-patterns/trpc.md +0 -41
- package/.agent/skills/api-patterns/versioning.md +0 -22
- package/.agent/skills/app-builder/agent-coordination.md +0 -71
- package/.agent/skills/app-builder/feature-building.md +0 -53
- package/.agent/skills/app-builder/project-detection.md +0 -34
- package/.agent/skills/app-builder/scaffolding.md +0 -118
- package/.agent/skills/app-builder/tech-stack.md +0 -40
- package/.agent/skills/architecture/context-discovery.md +0 -43
- package/.agent/skills/architecture/examples.md +0 -94
- package/.agent/skills/architecture/pattern-selection.md +0 -68
- package/.agent/skills/architecture/patterns-reference.md +0 -50
- package/.agent/skills/architecture/trade-off-analysis.md +0 -77
- package/.agent/skills/brainstorming/dynamic-questioning.md +0 -360
- package/.agent/skills/database-design/database-selection.md +0 -43
- package/.agent/skills/database-design/indexing.md +0 -39
- package/.agent/skills/database-design/migrations.md +0 -48
- package/.agent/skills/database-design/optimization.md +0 -36
- package/.agent/skills/database-design/orm-selection.md +0 -30
- package/.agent/skills/database-design/schema-design.md +0 -56
- package/.agent/skills/dotnet-core-expert/SKILL.md +0 -103
- package/.agent/skills/framer-motion-animations/SKILL.md +0 -74
- package/.agent/skills/frontend-design/animation-guide.md +0 -331
- package/.agent/skills/frontend-design/color-system.md +0 -329
- package/.agent/skills/frontend-design/decision-trees.md +0 -418
- package/.agent/skills/frontend-design/motion-graphics.md +0 -306
- package/.agent/skills/frontend-design/typography-system.md +0 -363
- package/.agent/skills/frontend-design/ux-psychology.md +0 -1116
- package/.agent/skills/frontend-design/visual-effects.md +0 -383
- package/.agent/skills/game-development/2d-games/SKILL.md +0 -119
- package/.agent/skills/game-development/3d-games/SKILL.md +0 -135
- package/.agent/skills/game-development/SKILL.md +0 -236
- package/.agent/skills/game-development/game-art/SKILL.md +0 -185
- package/.agent/skills/game-development/game-audio/SKILL.md +0 -190
- package/.agent/skills/game-development/game-design/SKILL.md +0 -129
- package/.agent/skills/game-development/mobile-games/SKILL.md +0 -108
- package/.agent/skills/game-development/multiplayer/SKILL.md +0 -132
- package/.agent/skills/game-development/pc-games/SKILL.md +0 -144
- package/.agent/skills/game-development/vr-ar/SKILL.md +0 -123
- package/.agent/skills/game-development/web-games/SKILL.md +0 -150
- package/.agent/skills/intelligent-routing/router-manifest.md +0 -65
- package/.agent/skills/mobile-design/decision-trees.md +0 -516
- package/.agent/skills/mobile-design/mobile-backend.md +0 -491
- package/.agent/skills/mobile-design/mobile-color-system.md +0 -420
- package/.agent/skills/mobile-design/mobile-debugging.md +0 -122
- package/.agent/skills/mobile-design/mobile-design-thinking.md +0 -357
- package/.agent/skills/mobile-design/mobile-navigation.md +0 -458
- package/.agent/skills/mobile-design/mobile-performance.md +0 -767
- package/.agent/skills/mobile-design/mobile-testing.md +0 -356
- package/.agent/skills/mobile-design/mobile-typography.md +0 -433
- package/.agent/skills/mobile-design/platform-android.md +0 -666
- package/.agent/skills/mobile-design/platform-ios.md +0 -561
- package/.agent/skills/mobile-design/touch-psychology.md +0 -537
- package/.agent/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +0 -312
- package/.agent/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +0 -240
- package/.agent/skills/nextjs-react-expert/3-server-server-side-performance.md +0 -490
- package/.agent/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +0 -264
- package/.agent/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +0 -581
- package/.agent/skills/nextjs-react-expert/6-rendering-rendering-performance.md +0 -432
- package/.agent/skills/nextjs-react-expert/7-js-javascript-performance.md +0 -684
- package/.agent/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +0 -150
- package/.agent/skills/vulnerability-scanner/checklists.md +0 -121
|
@@ -1,152 +1,109 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Performance-specific Tribunal. Runs Logic + Performance reviewers. Use for optimization,
|
|
2
|
+
description: Performance-specific Tribunal. Runs Logic + Performance reviewers. Use when code is slow, for optimization tasks, bundle analysis, Core Web Vitals improvement, memory leak investigation, and before deploying performance-critical features.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /tribunal-performance — Performance
|
|
5
|
+
# /tribunal-performance — Performance Audit
|
|
6
6
|
|
|
7
7
|
$ARGUMENTS
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
## When to Use /tribunal-performance
|
|
12
12
|
|
|
13
|
-
Use
|
|
13
|
+
|Use `/tribunal-performance` when...|Use something else when...|
|
|
14
|
+
|:---|:---|
|
|
15
|
+
|LCP, INP, or CLS is above threshold|General code review → `/tribunal-full`|
|
|
16
|
+
|Bundle size is too large|Backend perf only → `/tribunal-backend`|
|
|
17
|
+
|Memory usage grows unbounded|Database perf → `/tribunal-database`|
|
|
18
|
+
|Node.js event loop is saturated||
|
|
19
|
+
|Optimizing rendering performance||
|
|
14
20
|
|
|
15
21
|
---
|
|
16
22
|
|
|
17
|
-
##
|
|
23
|
+
## 2 Active Reviewers (Both Run Simultaneously)
|
|
18
24
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
| Mobile-specific performance | `/tribunal-mobile` (includes mobile perf issues) |
|
|
24
|
-
| SQL N+1 or unbounded queries | `/tribunal-database` |
|
|
25
|
-
| Cross-domain or pre-merge | `/tribunal-full` |
|
|
25
|
+
### logic-reviewer
|
|
26
|
+
- Expensive computation in render function (runs every render)
|
|
27
|
+
- Missing memoization where React.memo/useMemo would help
|
|
28
|
+
- Infinite re-render loop (effect updates a value that triggers the effect)
|
|
26
29
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
30
|
+
### performance-reviewer
|
|
31
|
+
- INP: expensive synchronous work on user interaction (> 50ms blocking)
|
|
32
|
+
- LCP: hero image without priority={true} or preload hint
|
|
33
|
+
- CLS: missing width/height on images causing layout shift
|
|
34
|
+
- Bundle: large library imported without tree-shaking or dynamic import
|
|
35
|
+
- Memory: event listeners added without cleanup in useEffect
|
|
36
|
+
- N+1: database queries in loop should be batched
|
|
37
|
+
- Cache: expensive DB query without Redis/memory cache
|
|
35
38
|
|
|
36
39
|
---
|
|
37
40
|
|
|
38
|
-
##
|
|
41
|
+
## 2026 CWV Targets (Verdict Reference)
|
|
39
42
|
|
|
40
|
-
|
|
|
41
|
-
|
|
42
|
-
|
|
|
43
|
-
|
|
|
44
|
-
|
|
|
45
|
-
| Memory flood | Loading entire table into memory: `const all = await db.findMany()` | ❌ REJECTED |
|
|
46
|
-
| Expensive re-renders | Derived value recomputed on every render without `useMemo` | ⚠️ WARNING |
|
|
47
|
-
| No streaming on large responses | Returning full LLM response, not streaming | ⚠️ WARNING |
|
|
48
|
-
| Sort on every render | `items.sort(fn)` inside JSX (mutates original array) | ❌ REJECTED |
|
|
49
|
-
| Regex in hot path | Complex regex compiled on every call (not pre-compiled) | ⚠️ WARNING |
|
|
43
|
+
|Metric|Good|Needs Work|Poor (REJECTED)|
|
|
44
|
+
|:---|:---|:---|:---|
|
|
45
|
+
|INP|< 200ms|200–500ms|> 500ms|
|
|
46
|
+
|LCP|< 2.5s|2.5–4.0s|> 4.0s|
|
|
47
|
+
|CLS|< 0.1|0.1–0.25|> 0.25|
|
|
50
48
|
|
|
51
49
|
---
|
|
52
50
|
|
|
53
|
-
##
|
|
51
|
+
## Verdict System
|
|
54
52
|
|
|
55
53
|
```
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
logic-reviewer → Hallucinated methods, undefined refs
|
|
60
|
-
│
|
|
61
|
-
▼
|
|
62
|
-
performance-reviewer → O(n²) complexity, Array.includes() in loops,
|
|
63
|
-
blocking fs.readFileSync() in async contexts,
|
|
64
|
-
unbounded SELECT *, uncontrolled Promise.all floods,
|
|
65
|
-
missing useMemo() on expensive derivations,
|
|
66
|
-
no streaming on LLM responses,
|
|
67
|
-
missing pagination on large datasets
|
|
68
|
-
│
|
|
69
|
-
▼
|
|
70
|
-
Verdict Summary
|
|
54
|
+
If code contains patterns causing POOR rating → ❌ REJECTED
|
|
55
|
+
If code contains patterns causing NEEDS WORK → ⚠️ WARNING
|
|
56
|
+
If all patterns cause GOOD rating → ✅ APPROVED
|
|
71
57
|
```
|
|
72
58
|
|
|
73
59
|
---
|
|
74
60
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
```
|
|
78
|
-
━━━ Tribunal: Performance ━━━━━━━━━━━━━━━━━
|
|
79
|
-
|
|
80
|
-
Active reviewers: logic · performance
|
|
81
|
-
|
|
82
|
-
[Your code under review]
|
|
83
|
-
|
|
84
|
-
━━━ Verdicts ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
61
|
+
---
|
|
85
62
|
|
|
86
|
-
|
|
87
|
-
performance-reviewer: ❌ REJECTED
|
|
63
|
+
## Performance-Specific Hallucination Traps
|
|
88
64
|
|
|
89
|
-
|
|
65
|
+
```typescript
|
|
66
|
+
// ❌ React.memo doesn't help when parent re-renders with new objects every time
|
|
67
|
+
const MemoCard = React.memo(Card);
|
|
68
|
+
<MemoCard style={{ margin: 8 }} /> // New object {} every render → memo has no effect
|
|
90
69
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
Fix: Convert `otherList` to a Set before the loop for O(1) lookup
|
|
70
|
+
// ✅ Memoize the object itself
|
|
71
|
+
const cardStyle = useMemo(() => ({ margin: 8 }), []);
|
|
72
|
+
<MemoCard style={cardStyle} />
|
|
95
73
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
Fix: await fs.promises.readFile(path, 'utf-8')
|
|
74
|
+
// ❌ useMemo with no deps array — runs every render (same as no memo)
|
|
75
|
+
const sorted = useMemo(() => items.sort(...)); // Missing deps array!
|
|
99
76
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
Fix: Pipe the stream directly: res.pipe(openaiStream)
|
|
77
|
+
// ✅ Correct deps array
|
|
78
|
+
const sorted = useMemo(() => [...items].sort(compareFn), [items]);
|
|
103
79
|
|
|
104
|
-
|
|
80
|
+
// ❌ Non-measurement claim
|
|
81
|
+
// "This is fast" — never write this without a Lighthouse score to back it
|
|
105
82
|
```
|
|
106
83
|
|
|
107
84
|
---
|
|
108
85
|
|
|
109
|
-
##
|
|
86
|
+
## Measurement Protocol
|
|
110
87
|
|
|
111
|
-
|
|
112
|
-
|---|---|
|
|
113
|
-
| `❌ REJECTED (HIGH)` | Will cause visible performance degradation under load — fix before merge |
|
|
114
|
-
| `❌ REJECTED (MEDIUM)` | Will become a bottleneck at scale — address before deploy |
|
|
115
|
-
| `⚠️ WARNING` | Acceptable now, will degrade at 10x scale — flag for upcoming sprint |
|
|
116
|
-
| `✅ APPROVED` | No performance concerns detected at this code level |
|
|
88
|
+
Performance optimization without measurement is guessing:
|
|
117
89
|
|
|
118
|
-
---
|
|
119
|
-
|
|
120
|
-
## Performance-Specific Anti-Hallucination Rules
|
|
121
|
-
|
|
122
|
-
```
|
|
123
|
-
❌ Never claim a fix is "faster" without citing the algorithmic reason (O-notation or benchmark)
|
|
124
|
-
❌ Never recommend Promise.all for unbounded arrays — always suggest chunking with p-limit or similar
|
|
125
|
-
❌ Never mark O(n²) as acceptable without explicit justification tied to data size constraints
|
|
126
|
-
❌ Never suggest caching without identifying the invalidation strategy
|
|
127
|
-
❌ Never recommend premature micro-optimizations over algorithmic improvements
|
|
128
|
-
❌ No invented profiling tools — only documented options for the target runtime
|
|
129
90
|
```
|
|
91
|
+
Before optimizing:
|
|
92
|
+
□ Run Lighthouse: record LCP, INP, CLS, bundle size
|
|
93
|
+
□ Profile with Chrome DevTools: identify actual bottleneck
|
|
130
94
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
| Finding type | Next step |
|
|
136
|
-
|---|---|
|
|
137
|
-
| O(n²) pattern found | `/refactor` to extract and fix the algorithm |
|
|
138
|
-
| Memory bloat in data loading | `/enhance` to add pagination or streaming |
|
|
139
|
-
| Promise.all flood | `/enhance` to add concurrency control with `p-limit` |
|
|
140
|
-
| Regex in hot path | `/enhance` to pre-compile and cache |
|
|
141
|
-
| All approved | Human Gate to write to disk |
|
|
95
|
+
After optimizing:
|
|
96
|
+
□ Run Lighthouse again: confirm improvement
|
|
97
|
+
□ Show before/after scores in audit output
|
|
98
|
+
```
|
|
142
99
|
|
|
143
100
|
---
|
|
144
101
|
|
|
145
|
-
## Usage
|
|
102
|
+
## Usage Examples
|
|
146
103
|
|
|
147
104
|
```
|
|
148
|
-
/tribunal-performance the
|
|
149
|
-
/tribunal-performance the search
|
|
150
|
-
/tribunal-performance the
|
|
151
|
-
/tribunal-performance the
|
|
105
|
+
/tribunal-performance the product listing page with image grid
|
|
106
|
+
/tribunal-performance the search component with real-time filtering
|
|
107
|
+
/tribunal-performance the checkout flow for CWV compliance
|
|
108
|
+
/tribunal-performance the API route with expensive DB query for caching
|
|
152
109
|
```
|
|
@@ -1,171 +1,122 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Plan and implement cutting-edge advanced UI/UX
|
|
2
|
+
description: Plan and implement cutting-edge advanced UI/UX. Creates distinctive, production-grade frontend interfaces with high design quality that avoid generic AI aesthetics — no purple gradients, no bento grids, no mesh backgrounds.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /ui-ux-pro-max — Advanced
|
|
5
|
+
# /ui-ux-pro-max — Advanced UI/UX Design
|
|
6
6
|
|
|
7
7
|
$ARGUMENTS
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
## When to Use /ui-ux-pro-max
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
|Use `/ui-ux-pro-max` when...|Use instead when...|
|
|
14
|
+
|:---|:---|
|
|
15
|
+
|Building a visually distinctive interface|Functional-only component → `/generate`|
|
|
16
|
+
|Design quality is the primary goal|Fast page needed → `/enhance`|
|
|
17
|
+
|Creating from a design brief|Bug fix in UI → `/debug`|
|
|
18
|
+
|Mobile + web parity required||
|
|
14
19
|
|
|
15
20
|
---
|
|
16
21
|
|
|
17
|
-
##
|
|
22
|
+
## Phase 1 — Design Intent (Mandatory)
|
|
18
23
|
|
|
19
|
-
|
|
20
|
-
|---|---|
|
|
21
|
-
| You need pixel-perfect, award-worthy UI craft | Standard UI is acceptable → `/create` |
|
|
22
|
-
| Design system, color system, typography all need definition | Just one component → `/generate` |
|
|
23
|
-
| You want accessibility, motion, and spatial design all considered | Quick functional prototype → `/create` |
|
|
24
|
-
| Neuro-inclusive + APCA contrast standards are required | Speed matters over design quality → `/create` |
|
|
24
|
+
Answer these before any design work:
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
- **Fluid & Variable Typography**: Designing with `clamp()`, `ch` units, and Variable Fonts for infinite scaling, not fixed breakpoints.
|
|
34
|
-
- **Adaptive Psychology & Neuro-Inclusivity**: Respecting `prefers-reduced-motion`, varying cognitive load based on context, and utilizing OLED battery-saving true black themes.
|
|
35
|
-
- **Advanced Micro-Interactions**: Spring-physics based animations and scroll-driven interactions instead of static, linear CSS transitions.
|
|
36
|
-
- **Spatial & Contextual UI**: Considering z-axis depth (glass, blurs, multi-layered shadows) and contextual adaptation (UI conforming to user behavior).
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## Extreme Design Rules (Always Active in This Mode)
|
|
41
|
-
|
|
42
|
-
### Generative Color & Light
|
|
43
|
-
- **No purple/violet as primary color** — the most overused "AI design" cliché is banned.
|
|
44
|
-
- Color palettes must be derived using algorithmic relationships (e.g., OKLCH lightness/chroma stepping).
|
|
45
|
-
- **True Black & OLED Optimization**: Use `#000000` or `#010101` for deep backgrounds on mobile/PWA to save battery, utilizing high-contrast borders for separation instead of gray backgrounds.
|
|
46
|
-
- Contrast must pass **WCAG 3.0 APCA** (Advanced Perceptual Contrast Algorithm) standards for readability, not just older WCAG 2.1 math.
|
|
47
|
-
|
|
48
|
-
### Fluid & Variable Typography
|
|
49
|
-
- Use system variable fonts or explicitly loaded modern Variable Fonts to reduce network requests.
|
|
50
|
-
- Body text uses **fluid typography** `clamp(1rem, 0.8rem + 1vw, 1.25rem)` to scale linearly between screen sizes.
|
|
51
|
-
- strict adherence to max line lengths (`max-w-[65ch]`) to prevent cognitive fatigue.
|
|
52
|
-
|
|
53
|
-
### Spatial & Layout Architecture
|
|
54
|
-
- Standard hero layouts (left text / right image) are prohibited unless explicitly justified. Use asymmetric, dynamic, or scroll-locked interactive hero sections.
|
|
55
|
-
- The Z-axis matters: build depth using multi-layer shadows or contextual background blurs (`backdrop-filter`) carefully applied for performance.
|
|
56
|
-
- Use **Logical Properties** (`margin-inline`, `padding-block`) exclusively to enforce automatic RTL (Right-to-Left) and LTR compatibility.
|
|
57
|
-
|
|
58
|
-
### Advanced Interaction & Physics
|
|
59
|
-
- Linear easing (`ease`, `linear`) is banned for layout shifts. You must use **spring physics** or custom `cubic-bezier` curves for natural, organic motion.
|
|
60
|
-
- **Scroll-Driven Animations**: UI elements should react to scroll position natively using modern CSS `@scroll-timeline` or performant JS Observers.
|
|
61
|
-
- **Zero-Wait UI**: Streaming UI components (like React Server Components or Optimistic UI updates) must be designed so the user never sees a raw loading spinner for action responses.
|
|
26
|
+
```
|
|
27
|
+
1. Who is the user? (developer tools feel different from consumer apps)
|
|
28
|
+
2. What emotion should the interface evoke? (calm focus, urgent speed, playful delight)
|
|
29
|
+
3. What is the ONE thing users do most? (hero interaction gets maximum design attention)
|
|
30
|
+
4. What existing interfaces does the user love? (don't copy — understand the WHY)
|
|
31
|
+
5. What makes this interface DIFFERENT from every competitor?
|
|
32
|
+
```
|
|
62
33
|
|
|
63
34
|
---
|
|
64
35
|
|
|
65
|
-
##
|
|
66
|
-
|
|
67
|
-
### Step 1 — Perceptual & Contextual Mapping
|
|
36
|
+
## Phase 2 — Design Identity
|
|
68
37
|
|
|
69
|
-
|
|
38
|
+
Every interface built by /ui-ux-pro-max has a distinct visual identity:
|
|
70
39
|
|
|
71
40
|
```
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
41
|
+
Forbidden defaults (generic AI aesthetics):
|
|
42
|
+
❌ Purple/violet as primary color
|
|
43
|
+
❌ Left text / right image hero section
|
|
44
|
+
❌ Mesh gradient backgrounds
|
|
45
|
+
❌ Bento grid as the only layout
|
|
46
|
+
❌ Emoji as icons
|
|
47
|
+
❌ shadcn without explicit user request
|
|
48
|
+
|
|
49
|
+
Distinctive alternatives:
|
|
50
|
+
✅ Signal orange, acid green, warm slate, deep red — intentional palettes
|
|
51
|
+
✅ Typographic-first hero sections
|
|
52
|
+
✅ Grain textures, solid contrast, radial depth
|
|
53
|
+
✅ Asymmetric or broken-grid layouts
|
|
54
|
+
✅ SVG icons (lucide-react or custom)
|
|
55
|
+
✅ Motion that communicates meaning (not decoration)
|
|
76
56
|
```
|
|
77
57
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
Define the structural architecture with depth in mind:
|
|
81
|
-
- What is the structural grid? (Subgrid, Container Queries)
|
|
82
|
-
- What exists on the Z-axis? (What floats, what is grounded?)
|
|
83
|
-
- How does the layout mutate on scroll?
|
|
58
|
+
---
|
|
84
59
|
|
|
85
|
-
|
|
60
|
+
## Phase 3 — Interaction Craft
|
|
86
61
|
|
|
87
|
-
|
|
62
|
+
Every interactive element has 4 states designed:
|
|
88
63
|
|
|
89
|
-
```css
|
|
90
|
-
/* Example OKLCH System */
|
|
91
|
-
Base hue: [OKLCH Hue Value]
|
|
92
|
-
Surface (Dark): oklch(15% 0.02 [Hue])
|
|
93
|
-
Surface (OLED): oklch(0% 0 0)
|
|
94
|
-
Text Primary: oklch(96% 0.01 [Hue])
|
|
95
|
-
Accent: oklch(70% 0.25 [Complementary Hue])
|
|
96
64
|
```
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
Focus on **Container Queries** (`@container`) so components contextualize themselves based on where they map, not window width.
|
|
102
|
-
|
|
103
|
-
### Step 5 — Physics & Interaction Layer
|
|
104
|
-
|
|
105
|
-
Define organic movement:
|
|
106
|
-
```css
|
|
107
|
-
/* Spring-like organic transition */
|
|
108
|
-
transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
65
|
+
1. Default: The base state
|
|
66
|
+
2. Hover: Indicates interactability (cursor change, subtle lift, color shift)
|
|
67
|
+
3. Active: Confirms click/press (scale down, darker, haptic feedback on mobile)
|
|
68
|
+
4. Disabled: Communicates unavailability (reduced opacity, cursor change, tooltip why)
|
|
109
69
|
```
|
|
110
|
-
Ensure all interactions check for `@media (prefers-reduced-motion: reduce)`.
|
|
111
70
|
|
|
112
|
-
|
|
71
|
+
Micro-animations are required, not optional:
|
|
113
72
|
|
|
114
73
|
```
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
74
|
+
Entry animations: elements fade/slide in on mount
|
|
75
|
+
State transitions: smooth color + scale changes (150–200ms)
|
|
76
|
+
Loading states: skeleton screens, not spinners (skeleton shows shape)
|
|
77
|
+
Error shake: invalid form input shakes (4px left-right)
|
|
78
|
+
Success pulse: confirmed actions pulse green briefly
|
|
120
79
|
```
|
|
121
80
|
|
|
122
81
|
---
|
|
123
82
|
|
|
124
|
-
##
|
|
83
|
+
## Phase 4 — Implementation (Tribunal-Reviewed)
|
|
84
|
+
|
|
85
|
+
All generated code runs through `/tribunal-frontend` including `accessibility-reviewer`:
|
|
125
86
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
87
|
+
```
|
|
88
|
+
WCAG 2.2 AA — Non-negotiable:
|
|
89
|
+
□ Keyboard navigation complete and visible
|
|
90
|
+
□ Screen reader semantics verified (role, label, live region)
|
|
91
|
+
□ Color contrast 4.5:1 minimum on all text
|
|
92
|
+
□ Focus indicator visible (outline: 2px solid, offset: 2px)
|
|
93
|
+
□ Motion respects prefers-reduced-motion
|
|
94
|
+
```
|
|
129
95
|
|
|
130
96
|
---
|
|
131
97
|
|
|
132
|
-
##
|
|
98
|
+
## Phase 5 — Design Verification
|
|
133
99
|
|
|
134
|
-
|
|
100
|
+
Before finalizing:
|
|
135
101
|
|
|
136
102
|
```
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
🧱 Component Schema:
|
|
144
|
-
[Name] + [State transitions: Hover, Focus, Active, Skeleton]
|
|
145
|
-
Tribunal: [Verdict]
|
|
146
|
-
|
|
147
|
-
♿ Neuro-Inclusive Audit:
|
|
148
|
-
[Compliance with cognitive safety, motion reduction, and touch targets]
|
|
103
|
+
□ Open in mobile viewport (375px) — does it work?
|
|
104
|
+
□ Open in dark mode — does it look intentional?
|
|
105
|
+
□ Keyboard-navigate through the critical path — is it complete?
|
|
106
|
+
□ Screenshot and ask: "Would I scroll past this on Dribbble?"
|
|
107
|
+
□ Screen reader test with VoiceOver or NVDA
|
|
149
108
|
```
|
|
150
109
|
|
|
151
110
|
---
|
|
152
111
|
|
|
153
|
-
## Cross-Workflow Navigation
|
|
154
|
-
|
|
155
|
-
| After /ui-ux-pro-max produces output... | Do this |
|
|
156
|
-
|---|---|
|
|
157
|
-
| Component code is ready for merge | `/tribunal-frontend` for React/hooks audit |
|
|
158
|
-
| Performance-critical animations written | `/tribunal-performance` to check for jank |
|
|
159
|
-
| Color + contrast system defined | Document in the design system, then `/create` components |
|
|
160
|
-
| Accessibility audit is required | Additional review with `accessibility-reviewer` via `/review [component]` |
|
|
161
|
-
|
|
162
112
|
---
|
|
163
113
|
|
|
164
|
-
## Usage
|
|
114
|
+
## Usage Examples
|
|
165
115
|
|
|
166
116
|
```
|
|
167
|
-
/ui-ux-pro-max design a
|
|
168
|
-
/ui-ux-pro-max
|
|
169
|
-
/ui-ux-pro-max create
|
|
170
|
-
/ui-ux-pro-max
|
|
117
|
+
/ui-ux-pro-max design a SaaS dashboard for an analytics platform
|
|
118
|
+
/ui-ux-pro-max redesign the checkout flow with better conversion UX
|
|
119
|
+
/ui-ux-pro-max create an onboarding flow for a developer tool
|
|
120
|
+
/ui-ux-pro-max design the landing page hero section with distinctive layout
|
|
121
|
+
/ui-ux-pro-max create a data visualization dashboard with real-time updates
|
|
171
122
|
```
|
package/README.md
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<picture>
|
|
3
|
-
<img src="./docs/
|
|
3
|
+
<img src="./docs/tribunalkit_no_bg.png" alt="TribunalKit — Code Without Hallucinations" width="480">
|
|
4
4
|
</picture>
|
|
5
5
|
|
|
6
|
-
<
|
|
7
|
-
|
|
8
|
-
<p><code>< ZERO_HALLUCINATION_PROTOCOL /></code></p>
|
|
9
|
-
|
|
10
|
-
<p>
|
|
11
|
-
<b>The ultimate guardrail system for AI-assisted coding.</b><br>
|
|
12
|
-
Built for <i>Cursor</i>, <i>Windsurf</i>, and <i>Antigravity</i>.
|
|
13
|
-
</p>
|
|
14
|
-
|
|
6
|
+
<br><br>
|
|
7
|
+
|
|
15
8
|
[](https://www.npmjs.com/package/tribunal-kit)
|
|
16
9
|
[](LICENSE)
|
|
10
|
+
[](CHANGELOG.md)
|
|
17
11
|
</div>
|
|
18
12
|
|
|
13
|
+
|
|
19
14
|
<br><br>
|
|
20
15
|
|
|
21
16
|
> 🚨 **AI GENERATES CODE. TRIBUNAL ENSURES IT WORKS.**
|
|
@@ -68,10 +63,11 @@ No manual tagging required. The system self-organizes.
|
|
|
68
63
|
|
|
69
64
|
| System Asset | Count | Operational Scope |
|
|
70
65
|
| :--- | :---: | :--- |
|
|
71
|
-
| 🤖 **Agents** | `
|
|
72
|
-
| 🧠 **Skills** | `
|
|
73
|
-
| ⚡ **Workflows** | `
|
|
74
|
-
| 🛠️ **Scripts** | `
|
|
66
|
+
| 🤖 **Agents** | `33` | Specialist personas (Security, DB Architect, DevOps Responder, QA Engineer) |
|
|
67
|
+
| 🧠 **Skills** | `77` | Domain modules (Edge Computing, Red Team Tactics, GSAP, Framer Motion) |
|
|
68
|
+
| ⚡ **Workflows** | `30` | Slash command procedures including `/swarm`, `/tribunal-full`, `/ui-ux-pro-max` |
|
|
69
|
+
| 🛠️ **Scripts** | `16` | CI/CD, linting, payload dispatching, security scanning, test suite runners |
|
|
70
|
+
|
|
75
71
|
|
|
76
72
|
<br>
|
|
77
73
|
|
|
@@ -100,7 +96,7 @@ Unleash parallel reviewers on existing code.
|
|
|
100
96
|
| Command | Action |
|
|
101
97
|
| :--- | :--- |
|
|
102
98
|
| <code>/review</code> | Audit code for silent degradation and logic holes. |
|
|
103
|
-
| <code>/tribunal-full</code> | Unleash **ALL
|
|
99
|
+
| <code>/tribunal-full</code> | Unleash **ALL 11** reviewers simultaneously. Maximum scrutiny. |
|
|
104
100
|
| <code>/tribunal-backend</code> | Summons <code>[ Logic + Security + Dependency + Types ]</code> |
|
|
105
101
|
| <code>/tribunal-frontend</code> | Summons <code>[ Logic + Security + Frontend + Types ]</code> |
|
|
106
102
|
| <code>/tribunal-database</code> | Summons <code>[ Logic + Security + SQL ]</code> |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tribunal-kit",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "Anti-Hallucination AI Agent Kit — 33 specialist agents, 25 slash commands, Swarm/Supervisor engine, and Tribunal review pipeline for Cursor, Windsurf, and Antigravity.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
# API Style Selection (2025)
|
|
2
|
-
|
|
3
|
-
> REST vs GraphQL vs tRPC - Hangi durumda hangisi?
|
|
4
|
-
|
|
5
|
-
## Decision Tree
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
Who are the API consumers?
|
|
9
|
-
│
|
|
10
|
-
├── Public API / Multiple platforms
|
|
11
|
-
│ └── REST + OpenAPI (widest compatibility)
|
|
12
|
-
│
|
|
13
|
-
├── Complex data needs / Multiple frontends
|
|
14
|
-
│ └── GraphQL (flexible queries)
|
|
15
|
-
│
|
|
16
|
-
├── TypeScript frontend + backend (monorepo)
|
|
17
|
-
│ └── tRPC (end-to-end type safety)
|
|
18
|
-
│
|
|
19
|
-
├── Real-time / Event-driven
|
|
20
|
-
│ └── WebSocket + AsyncAPI
|
|
21
|
-
│
|
|
22
|
-
└── Internal microservices
|
|
23
|
-
└── gRPC (performance) or REST (simplicity)
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## Comparison
|
|
27
|
-
|
|
28
|
-
| Factor | REST | GraphQL | tRPC |
|
|
29
|
-
|--------|------|---------|------|
|
|
30
|
-
| **Best for** | Public APIs | Complex apps | TS monorepos |
|
|
31
|
-
| **Learning curve** | Low | Medium | Low (if TS) |
|
|
32
|
-
| **Over/under fetching** | Common | Solved | Solved |
|
|
33
|
-
| **Type safety** | Manual (OpenAPI) | Schema-based | Automatic |
|
|
34
|
-
| **Caching** | HTTP native | Complex | Client-based |
|
|
35
|
-
|
|
36
|
-
## Selection Questions
|
|
37
|
-
|
|
38
|
-
1. Who are the API consumers?
|
|
39
|
-
2. Is the frontend TypeScript?
|
|
40
|
-
3. How complex are the data relationships?
|
|
41
|
-
4. Is caching critical?
|
|
42
|
-
5. Public or internal API?
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
# Authentication Patterns
|
|
2
|
-
|
|
3
|
-
> Choose auth pattern based on use case.
|
|
4
|
-
|
|
5
|
-
## Selection Guide
|
|
6
|
-
|
|
7
|
-
| Pattern | Best For |
|
|
8
|
-
|---------|----------|
|
|
9
|
-
| **JWT** | Stateless, microservices |
|
|
10
|
-
| **Session** | Traditional web, simple |
|
|
11
|
-
| **OAuth 2.0** | Third-party integration |
|
|
12
|
-
| **API Keys** | Server-to-server, public APIs |
|
|
13
|
-
| **Passkey** | Modern passwordless (2025+) |
|
|
14
|
-
|
|
15
|
-
## JWT Principles
|
|
16
|
-
|
|
17
|
-
```
|
|
18
|
-
Important:
|
|
19
|
-
├── Always verify signature
|
|
20
|
-
├── Check expiration
|
|
21
|
-
├── Include minimal claims
|
|
22
|
-
├── Use short expiry + refresh tokens
|
|
23
|
-
└── Never store sensitive data in JWT
|
|
24
|
-
```
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# API Documentation Principles
|
|
2
|
-
|
|
3
|
-
> Good docs = happy developers = API adoption.
|
|
4
|
-
|
|
5
|
-
## OpenAPI/Swagger Essentials
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
Include:
|
|
9
|
-
├── All endpoints with examples
|
|
10
|
-
├── Request/response schemas
|
|
11
|
-
├── Authentication requirements
|
|
12
|
-
├── Error response formats
|
|
13
|
-
└── Rate limiting info
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Good Documentation Has
|
|
17
|
-
|
|
18
|
-
```
|
|
19
|
-
Essentials:
|
|
20
|
-
├── Quick start / Getting started
|
|
21
|
-
├── Authentication guide
|
|
22
|
-
├── Complete API reference
|
|
23
|
-
├── Error handling guide
|
|
24
|
-
├── Code examples (multiple languages)
|
|
25
|
-
└── Changelog
|
|
26
|
-
```
|