codeply-cli 0.5.5 → 0.6.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/LICENSE +21 -21
- package/THIRD_PARTY_NOTICES.md +65 -65
- package/bin/codeply.js +8 -3
- package/lib/agent.mjs +2596 -2268
- package/lib/ai.js +135 -27
- package/lib/ai.mjs +6 -6
- package/lib/apply-patch.js +217 -217
- package/lib/arity-table.json +138 -138
- package/lib/arity.js +70 -70
- package/lib/auth.mjs +6 -6
- package/lib/autopilot.js +84 -0
- package/lib/bot-mail.js +46 -0
- package/lib/bots.js +142 -15
- package/lib/brain.js +914 -0
- package/lib/call-assist.js +120 -0
- package/lib/chatgpt.js +282 -282
- package/lib/cloud-browser.mjs +143 -143
- package/lib/cloud.mjs +1396 -1312
- package/lib/commands.js +103 -103
- package/lib/computer.js +136 -0
- package/lib/design-library/assemble-artifact.mjs +21 -21
- package/lib/design-library/cleanup.mjs +45 -45
- package/lib/design-library/index.json +22379 -22379
- package/lib/design-library/make-table-data.mjs +39 -39
- package/lib/design-tools.mjs +173 -0
- package/lib/diagnostics.js +192 -192
- package/lib/dsh-acp.mjs +444 -0
- package/lib/edit-engine.js +364 -364
- package/lib/github-agent.mjs +326 -326
- package/lib/handoff.mjs +245 -0
- package/lib/history.js +78 -75
- package/lib/life-sources.js +319 -0
- package/lib/life-store.js +356 -0
- package/lib/life-triggers.js +286 -0
- package/lib/life.js +487 -0
- package/lib/mail-watch.js +3 -3
- package/lib/mcp.js +258 -258
- package/lib/native-tools.mjs +17 -5
- package/lib/oauth-connectors.js +76 -21
- package/lib/permissions.js +109 -109
- package/lib/plugins.js +356 -353
- package/lib/reach.js +67 -67
- package/lib/render-md.mjs +647 -617
- package/lib/screen.js +77 -0
- package/lib/server.mjs +458 -457
- package/lib/session-db.js +220 -220
- package/lib/share.js +208 -168
- package/lib/skills.js +4 -1
- package/lib/snapshot.js +146 -146
- package/lib/subagents.js +4 -2
- package/lib/telemetry.js +105 -105
- package/lib/terminal-hints.js +154 -154
- package/lib/textarea.mjs +264 -258
- package/lib/tools.mjs +326 -40
- package/lib/tui.mjs +1459 -1086
- package/lib/typecheck-worker.js +147 -147
- package/lib/web-tools.js +209 -209
- package/package.json +1 -1
- package/skills/SOURCE.md +58 -58
- package/skills/accessibility/SKILL.md +147 -147
- package/skills/agent-architecture-audit/SKILL.md +257 -257
- package/skills/agent-eval/SKILL.md +147 -147
- package/skills/agent-harness-construction/SKILL.md +74 -74
- package/skills/agent-introspection-debugging/SKILL.md +154 -154
- package/skills/agent-payment-x402/SKILL.md +225 -225
- package/skills/agent-self-evaluation/SKILL.md +182 -182
- package/skills/agent-self-evaluation/references/evaluation-criteria.md +71 -71
- package/skills/agent-self-evaluation/references/hook-integration.md +64 -64
- package/skills/agent-sort/SKILL.md +216 -216
- package/skills/agentic-engineering/SKILL.md +64 -64
- package/skills/agentic-os/SKILL.md +388 -388
- package/skills/ai-first-engineering/SKILL.md +52 -52
- package/skills/ai-regression-testing/SKILL.md +386 -386
- package/skills/android-clean-architecture/SKILL.md +340 -340
- package/skills/angular-developer/SKILL.md +155 -155
- package/skills/angular-developer/references/angular-animations.md +160 -160
- package/skills/angular-developer/references/angular-aria.md +410 -410
- package/skills/angular-developer/references/cli.md +86 -86
- package/skills/angular-developer/references/component-harnesses.md +59 -59
- package/skills/angular-developer/references/component-styling.md +91 -91
- package/skills/angular-developer/references/components.md +117 -117
- package/skills/angular-developer/references/creating-services.md +97 -97
- package/skills/angular-developer/references/data-resolvers.md +69 -69
- package/skills/angular-developer/references/define-routes.md +67 -67
- package/skills/angular-developer/references/defining-providers.md +72 -72
- package/skills/angular-developer/references/di-fundamentals.md +120 -120
- package/skills/angular-developer/references/e2e-testing.md +56 -56
- package/skills/angular-developer/references/effects.md +83 -83
- package/skills/angular-developer/references/hierarchical-injectors.md +43 -43
- package/skills/angular-developer/references/host-elements.md +80 -80
- package/skills/angular-developer/references/injection-context.md +63 -63
- package/skills/angular-developer/references/inputs.md +101 -101
- package/skills/angular-developer/references/linked-signal.md +59 -59
- package/skills/angular-developer/references/loading-strategies.md +61 -61
- package/skills/angular-developer/references/mcp.md +108 -108
- package/skills/angular-developer/references/navigate-to-routes.md +69 -69
- package/skills/angular-developer/references/outputs.md +86 -86
- package/skills/angular-developer/references/reactive-forms.md +122 -122
- package/skills/angular-developer/references/rendering-strategies.md +44 -44
- package/skills/angular-developer/references/resource.md +77 -77
- package/skills/angular-developer/references/route-animations.md +56 -56
- package/skills/angular-developer/references/route-guards.md +52 -52
- package/skills/angular-developer/references/router-lifecycle.md +45 -45
- package/skills/angular-developer/references/router-testing.md +87 -87
- package/skills/angular-developer/references/show-routes-with-outlets.md +68 -68
- package/skills/angular-developer/references/signal-forms.md +795 -795
- package/skills/angular-developer/references/signals-overview.md +94 -94
- package/skills/angular-developer/references/tailwind-css.md +69 -69
- package/skills/angular-developer/references/template-driven-forms.md +114 -114
- package/skills/angular-developer/references/testing-fundamentals.md +65 -65
- package/skills/api-connector-builder/SKILL.md +121 -121
- package/skills/api-design/SKILL.md +524 -524
- package/skills/architecture-decision-records/SKILL.md +180 -180
- package/skills/article-writing/SKILL.md +80 -80
- package/skills/automation-audit-ops/SKILL.md +143 -143
- package/skills/autonomous-agent-harness/SKILL.md +274 -274
- package/skills/autonomous-loops/SKILL.md +611 -611
- package/skills/backend-patterns/SKILL.md +562 -562
- package/skills/benchmark/SKILL.md +95 -95
- package/skills/benchmark-methodology/SKILL.md +191 -191
- package/skills/benchmark-optimization-loop/SKILL.md +71 -71
- package/skills/blender-motion-state-inspection/SKILL.md +165 -165
- package/skills/blueprint/SKILL.md +106 -106
- package/skills/brand-discovery/SKILL.md +145 -145
- package/skills/brand-discovery/references/10_purpose-why.md +40 -40
- package/skills/brand-discovery/references/20_positioning.md +44 -44
- package/skills/brand-discovery/references/30_audience-niche.md +52 -52
- package/skills/brand-discovery/references/40_personality-archetype.md +57 -57
- package/skills/brand-discovery/references/50_voice-tone.md +59 -59
- package/skills/brand-discovery/references/60_narrative-story.md +50 -50
- package/skills/brand-discovery/references/70_founder-tension.md +49 -49
- package/skills/brand-discovery/references/90_SYNTHESIS.md +133 -133
- package/skills/brand-voice/SKILL.md +98 -98
- package/skills/brand-voice/references/voice-profile-schema.md +55 -55
- package/skills/browser-qa/SKILL.md +105 -105
- package/skills/bun-runtime/SKILL.md +85 -85
- package/skills/canary-watch/SKILL.md +108 -108
- package/skills/carrier-relationship-management/SKILL.md +212 -212
- package/skills/cisco-ios-patterns/SKILL.md +164 -164
- package/skills/ck/SKILL.md +148 -148
- package/skills/claude-devfleet/SKILL.md +112 -112
- package/skills/click-path-audit/SKILL.md +245 -245
- package/skills/clickhouse-io/SKILL.md +445 -445
- package/skills/code-tour/SKILL.md +254 -254
- package/skills/codebase-onboarding/SKILL.md +234 -234
- package/skills/codehealth-mcp/SKILL.md +167 -167
- package/skills/codeply-taste/LICENSE +21 -0
- package/skills/codeply-taste/SKILL.md +100 -0
- package/skills/codeply-taste/SOURCE.md +10 -0
- package/skills/codeply-taste/assets/base.css +100 -0
- package/skills/codeply-taste/assets/base.js +37 -0
- package/skills/codeply-taste/library/directions.json +1078 -0
- package/skills/codeply-taste/library/heroes.json +894 -0
- package/skills/codeply-taste/library/motions.json +57 -0
- package/skills/codeply-taste/library/palettes.json +1485 -0
- package/skills/codeply-taste/library/photos.json +7240 -0
- package/skills/codeply-taste/library/sections.json +4136 -0
- package/skills/codeply-taste/library/sites.json +7274 -0
- package/skills/codeply-taste/library/type.json +2024 -0
- package/skills/codeply-taste/references/colour.md +141 -0
- package/skills/codeply-taste/references/copy.md +177 -0
- package/skills/codeply-taste/references/critique.md +171 -0
- package/skills/codeply-taste/references/imagery.md +377 -0
- package/skills/codeply-taste/references/layout.md +178 -0
- package/skills/codeply-taste/references/motion.md +292 -0
- package/skills/codeply-taste/references/research.md +306 -0
- package/skills/codeply-taste/references/tells.md +115 -0
- package/skills/codeply-taste/references/type.md +170 -0
- package/skills/codeply-taste/scripts/assets.mjs +865 -0
- package/skills/codeply-taste/scripts/draw.mjs +525 -0
- package/skills/codeply-taste/scripts/inspect.mjs +205 -0
- package/skills/codeply-taste/scripts/lib/cdp.mjs +205 -0
- package/skills/codeply-taste/scripts/lib/probe.mjs +569 -0
- package/skills/codeply-taste/scripts/lib/rules.mjs +137 -0
- package/skills/codeply-taste/scripts/lint.mjs +108 -0
- package/skills/coding-standards/SKILL.md +551 -551
- package/skills/competitive-platform-analysis/SKILL.md +214 -214
- package/skills/competitive-report-structure/SKILL.md +162 -162
- package/skills/compose-multiplatform-patterns/SKILL.md +300 -300
- package/skills/config-gc/SKILL.md +120 -120
- package/skills/configure-ecc/SKILL.md +385 -385
- package/skills/connections-optimizer/SKILL.md +190 -190
- package/skills/content-engine/SKILL.md +132 -132
- package/skills/content-hash-cache-pattern/SKILL.md +162 -162
- package/skills/context-budget/SKILL.md +136 -136
- package/skills/continuous-agent-loop/SKILL.md +46 -46
- package/skills/continuous-learning/SKILL.md +132 -132
- package/skills/continuous-learning-v2/SKILL.md +361 -361
- package/skills/contract-first/SKILL.md +287 -287
- package/skills/cost-aware-llm-pipeline/SKILL.md +184 -184
- package/skills/cost-tracking/SKILL.md +97 -97
- package/skills/council/SKILL.md +204 -204
- package/skills/cpp-coding-standards/SKILL.md +724 -724
- package/skills/cpp-testing/SKILL.md +325 -325
- package/skills/crosspost/SKILL.md +112 -112
- package/skills/csharp-testing/SKILL.md +322 -322
- package/skills/customer-billing-ops/SKILL.md +141 -141
- package/skills/customs-trade-compliance/SKILL.md +263 -263
- package/skills/dart-flutter-patterns/SKILL.md +564 -564
- package/skills/dashboard-builder/SKILL.md +109 -109
- package/skills/data-scraper-agent/SKILL.md +765 -765
- package/skills/data-throughput-accelerator/SKILL.md +74 -74
- package/skills/database-migrations/SKILL.md +430 -430
- package/skills/deep-research/SKILL.md +160 -160
- package/skills/defi-amm-security/SKILL.md +167 -167
- package/skills/delivery-gate/SKILL.md +126 -126
- package/skills/deployment-patterns/SKILL.md +428 -428
- package/skills/design-system/SKILL.md +83 -83
- package/skills/django-celery/SKILL.md +458 -458
- package/skills/django-patterns/SKILL.md +735 -735
- package/skills/django-security/SKILL.md +644 -644
- package/skills/django-tdd/SKILL.md +730 -730
- package/skills/django-verification/SKILL.md +470 -470
- package/skills/dmux-workflows/SKILL.md +192 -192
- package/skills/docker-patterns/SKILL.md +365 -365
- package/skills/documentation-lookup/SKILL.md +91 -91
- package/skills/dotnet-patterns/SKILL.md +322 -322
- package/skills/dynamic-workflow-mode/SKILL.md +124 -124
- package/skills/e2e-testing/SKILL.md +327 -327
- package/skills/ecc-guide/SKILL.md +190 -190
- package/skills/ecc-recipes/SKILL.md +149 -149
- package/skills/ecc-tools-cost-audit/SKILL.md +161 -161
- package/skills/email-ops/SKILL.md +122 -122
- package/skills/energy-procurement/SKILL.md +228 -228
- package/skills/enterprise-agent-ops/SKILL.md +51 -51
- package/skills/error-handling/SKILL.md +377 -377
- package/skills/eval-harness/SKILL.md +271 -271
- package/skills/evm-token-decimals/SKILL.md +131 -131
- package/skills/exa-search/SKILL.md +108 -108
- package/skills/fal-ai-media/SKILL.md +289 -289
- package/skills/fastapi-patterns/SKILL.md +514 -514
- package/skills/finance-billing-ops/SKILL.md +128 -128
- package/skills/flox-environments/SKILL.md +497 -497
- package/skills/flutter-dart-code-review/SKILL.md +436 -436
- package/skills/foundation-models-on-device/SKILL.md +243 -243
- package/skills/frontend-a11y/SKILL.md +446 -446
- package/skills/frontend-design-direction/SKILL.md +93 -93
- package/skills/frontend-patterns/SKILL.md +657 -657
- package/skills/frontend-slides/SKILL.md +185 -185
- package/skills/fsharp-testing/SKILL.md +281 -281
- package/skills/gan-style-harness/SKILL.md +279 -279
- package/skills/gateguard/SKILL.md +133 -133
- package/skills/generating-python-installer/SKILL.md +820 -820
- package/skills/git-workflow/SKILL.md +716 -716
- package/skills/github-ops/SKILL.md +145 -145
- package/skills/golang-patterns/SKILL.md +676 -676
- package/skills/golang-testing/SKILL.md +721 -721
- package/skills/google-workspace-ops/SKILL.md +96 -96
- package/skills/growth-log/SKILL.md +128 -128
- package/skills/healthcare-cdss-patterns/SKILL.md +246 -246
- package/skills/healthcare-emr-patterns/SKILL.md +160 -160
- package/skills/healthcare-eval-harness/SKILL.md +208 -208
- package/skills/healthcare-phi-compliance/SKILL.md +146 -146
- package/skills/hermes-imports/SKILL.md +89 -89
- package/skills/hexagonal-architecture/SKILL.md +277 -277
- package/skills/hipaa-compliance/SKILL.md +79 -79
- package/skills/homelab-network-readiness/SKILL.md +170 -170
- package/skills/homelab-network-setup/SKILL.md +130 -130
- package/skills/homelab-pihole-dns/SKILL.md +275 -275
- package/skills/homelab-vlan-segmentation/SKILL.md +312 -312
- package/skills/homelab-wireguard-vpn/SKILL.md +306 -306
- package/skills/hookify-rules/SKILL.md +128 -128
- package/skills/inherit-legacy-style/SKILL.md +157 -157
- package/skills/intent-driven-development/SKILL.md +360 -360
- package/skills/inventory-demand-planning/SKILL.md +247 -247
- package/skills/investor-materials/SKILL.md +97 -97
- package/skills/investor-outreach/SKILL.md +92 -92
- package/skills/ios-icon-gen/SKILL.md +158 -158
- package/skills/iterative-retrieval/SKILL.md +212 -212
- package/skills/ito-basket-compare/SKILL.md +64 -64
- package/skills/ito-compute/SKILL.md +129 -129
- package/skills/ito-data-atlas-agent/SKILL.md +64 -64
- package/skills/ito-market-intelligence/SKILL.md +61 -61
- package/skills/ito-trade-planner/SKILL.md +68 -68
- package/skills/java-coding-standards/SKILL.md +384 -384
- package/skills/jira-integration/SKILL.md +303 -303
- package/skills/jpa-patterns/SKILL.md +152 -152
- package/skills/knowledge-ops/SKILL.md +155 -155
- package/skills/kotlin-coroutines-flows/SKILL.md +285 -285
- package/skills/kotlin-exposed-patterns/SKILL.md +720 -720
- package/skills/kotlin-ktor-patterns/SKILL.md +690 -690
- package/skills/kotlin-patterns/SKILL.md +712 -712
- package/skills/kotlin-testing/SKILL.md +825 -825
- package/skills/kubernetes-patterns/SKILL.md +756 -756
- package/skills/laravel-patterns/SKILL.md +416 -416
- package/skills/laravel-plugin-discovery/SKILL.md +230 -230
- package/skills/laravel-security/SKILL.md +948 -948
- package/skills/laravel-tdd/SKILL.md +675 -675
- package/skills/laravel-verification/SKILL.md +180 -180
- package/skills/latency-critical-systems/SKILL.md +75 -75
- package/skills/lead-intelligence/SKILL.md +322 -322
- package/skills/liquid-glass-design/SKILL.md +279 -279
- package/skills/llm-trading-agent-security/SKILL.md +147 -147
- package/skills/logistics-exception-management/SKILL.md +222 -222
- package/skills/loop-design-check/SKILL.md +143 -143
- package/skills/mailtrap-email-integration/SKILL.md +77 -77
- package/skills/make-interfaces-feel-better/SKILL.md +152 -152
- package/skills/manim-video/SKILL.md +90 -90
- package/skills/market-research/SKILL.md +76 -76
- package/skills/marketing-campaign/SKILL.md +114 -114
- package/skills/mcp-server-patterns/SKILL.md +70 -70
- package/skills/messages-ops/SKILL.md +105 -105
- package/skills/ml-adoption-playbook/SKILL.md +57 -57
- package/skills/mle-workflow/SKILL.md +348 -348
- package/skills/motion-advanced/SKILL.md +596 -596
- package/skills/motion-foundations/SKILL.md +299 -299
- package/skills/motion-patterns/SKILL.md +434 -434
- package/skills/motion-ui/SKILL.md +576 -576
- package/skills/mysql-patterns/SKILL.md +413 -413
- package/skills/nanoclaw-repl/SKILL.md +34 -34
- package/skills/nestjs-patterns/SKILL.md +231 -231
- package/skills/netmiko-ssh-automation/SKILL.md +174 -174
- package/skills/network-bgp-diagnostics/SKILL.md +168 -168
- package/skills/network-config-validation/SKILL.md +211 -211
- package/skills/network-interface-health/SKILL.md +153 -153
- package/skills/nextjs-turbopack/SKILL.md +58 -58
- package/skills/nodejs-keccak256/SKILL.md +103 -103
- package/skills/nutrient-document-processing/SKILL.md +168 -168
- package/skills/nuxt4-patterns/SKILL.md +101 -101
- package/skills/openclaw-persona-forge/SKILL.md +289 -289
- package/skills/openclaw-persona-forge/references/avatar-style.md +124 -124
- package/skills/openclaw-persona-forge/references/boundary-rules.md +53 -53
- package/skills/openclaw-persona-forge/references/error-handling.md +53 -53
- package/skills/openclaw-persona-forge/references/identity-tension.md +48 -48
- package/skills/openclaw-persona-forge/references/naming-system.md +39 -39
- package/skills/openclaw-persona-forge/references/output-template.md +166 -166
- package/skills/opensource-pipeline/SKILL.md +256 -256
- package/skills/orch-add-feature/SKILL.md +45 -45
- package/skills/orch-build-mvp/SKILL.md +49 -49
- package/skills/orch-change-feature/SKILL.md +43 -43
- package/skills/orch-fix-defect/SKILL.md +43 -43
- package/skills/orch-pipeline/SKILL.md +121 -121
- package/skills/orch-refine-code/SKILL.md +44 -44
- package/skills/parallel-execution-optimizer/SKILL.md +74 -74
- package/skills/perl-patterns/SKILL.md +505 -505
- package/skills/perl-security/SKILL.md +504 -504
- package/skills/perl-testing/SKILL.md +476 -476
- package/skills/plan-canvas/SKILL.md +153 -153
- package/skills/plan-orchestrate/SKILL.md +263 -263
- package/skills/plankton-code-quality/SKILL.md +237 -237
- package/skills/postgres-patterns/SKILL.md +148 -148
- package/skills/prediction-market-oracle-research/SKILL.md +64 -64
- package/skills/prediction-market-risk-review/SKILL.md +61 -61
- package/skills/premium-web-design/SKILL.md +154 -154
- package/skills/prisma-patterns/SKILL.md +401 -401
- package/skills/product-capability/SKILL.md +142 -142
- package/skills/product-lens/SKILL.md +93 -93
- package/skills/production-audit/SKILL.md +207 -207
- package/skills/production-scheduling/SKILL.md +238 -238
- package/skills/project-flow-ops/SKILL.md +112 -112
- package/skills/prompt-optimizer/SKILL.md +398 -398
- package/skills/python-patterns/SKILL.md +751 -751
- package/skills/python-testing/SKILL.md +817 -817
- package/skills/pytorch-patterns/SKILL.md +397 -397
- package/skills/quality-nonconformance/SKILL.md +260 -260
- package/skills/quarkus-patterns/SKILL.md +723 -723
- package/skills/quarkus-security/SKILL.md +468 -468
- package/skills/quarkus-tdd/SKILL.md +812 -812
- package/skills/quarkus-verification/SKILL.md +480 -480
- package/skills/ralphinho-rfc-pipeline/SKILL.md +68 -68
- package/skills/react-native-patterns/SKILL.md +326 -326
- package/skills/react-patterns/SKILL.md +342 -342
- package/skills/react-performance/SKILL.md +575 -575
- package/skills/react-testing/SKILL.md +424 -424
- package/skills/recsys-pipeline-architect/SKILL.md +115 -115
- package/skills/recursive-decision-ledger/SKILL.md +81 -81
- package/skills/redis-patterns/SKILL.md +404 -404
- package/skills/regex-vs-llm-structured-text/SKILL.md +221 -221
- package/skills/remotion-video-creation/SKILL.md +43 -43
- package/skills/repo-scan/SKILL.md +79 -79
- package/skills/research-ops/SKILL.md +113 -113
- package/skills/returns-reverse-logistics/SKILL.md +240 -240
- package/skills/rules-distill/SKILL.md +265 -265
- package/skills/rust-patterns/SKILL.md +500 -500
- package/skills/rust-testing/SKILL.md +501 -501
- package/skills/safety-guard/SKILL.md +76 -76
- package/skills/santa-method/SKILL.md +307 -307
- package/skills/scientific-db-pubmed-database/SKILL.md +176 -176
- package/skills/scientific-db-uspto-database/SKILL.md +178 -178
- package/skills/scientific-pkg-gget/SKILL.md +167 -167
- package/skills/scientific-thinking-literature-review/SKILL.md +193 -193
- package/skills/scientific-thinking-scholar-evaluation/SKILL.md +161 -161
- package/skills/search-first/SKILL.md +183 -183
- package/skills/security-bounty-hunter/SKILL.md +100 -100
- package/skills/security-review/SKILL.md +504 -504
- package/skills/security-scan/SKILL.md +166 -166
- package/skills/seo/SKILL.md +155 -155
- package/skills/skill-comply/SKILL.md +59 -59
- package/skills/skill-scout/SKILL.md +141 -141
- package/skills/skill-stocktake/SKILL.md +195 -195
- package/skills/social-graph-ranker/SKILL.md +155 -155
- package/skills/social-publisher/SKILL.md +130 -130
- package/skills/springboot-patterns/SKILL.md +315 -315
- package/skills/springboot-security/SKILL.md +273 -273
- package/skills/springboot-tdd/SKILL.md +159 -159
- package/skills/springboot-verification/SKILL.md +232 -232
- package/skills/strategic-compact/SKILL.md +142 -142
- package/skills/swift-actor-persistence/SKILL.md +144 -144
- package/skills/swift-concurrency-6-2/SKILL.md +216 -216
- package/skills/swift-protocol-di-testing/SKILL.md +191 -191
- package/skills/swiftui-patterns/SKILL.md +259 -259
- package/skills/taste/SKILL.md +264 -264
- package/skills/taste/references/genre-taxonomy.md +87 -87
- package/skills/tdd-workflow/SKILL.md +583 -583
- package/skills/team-agent-orchestration/SKILL.md +111 -111
- package/skills/team-builder/SKILL.md +169 -169
- package/skills/terminal-ops/SKILL.md +110 -110
- package/skills/tinystruct-patterns/SKILL.md +279 -279
- package/skills/tinystruct-patterns/references/architecture.md +90 -90
- package/skills/tinystruct-patterns/references/data-handling.md +60 -60
- package/skills/tinystruct-patterns/references/database.md +99 -99
- package/skills/tinystruct-patterns/references/routing.md +64 -64
- package/skills/tinystruct-patterns/references/system-usage.md +97 -97
- package/skills/tinystruct-patterns/references/testing.md +72 -72
- package/skills/token-budget-advisor/SKILL.md +134 -134
- package/skills/ui-demo/SKILL.md +466 -466
- package/skills/ui-to-vue/SKILL.md +135 -135
- package/skills/uncloud/SKILL.md +344 -344
- package/skills/unified-memory/SKILL.md +170 -170
- package/skills/unified-notifications-ops/SKILL.md +188 -188
- package/skills/verification-loop/SKILL.md +129 -129
- package/skills/video-editing/SKILL.md +311 -311
- package/skills/videodb/SKILL.md +375 -375
- package/skills/visa-doc-translate/SKILL.md +117 -117
- package/skills/vite-patterns/SKILL.md +450 -450
- package/skills/vue-patterns/SKILL.md +471 -471
- package/skills/windows-desktop-e2e/SKILL.md +888 -888
- package/skills/workspace-surface-audit/SKILL.md +126 -126
- package/skills/x-api/SKILL.md +235 -235
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# Colour
|
|
2
|
+
|
|
3
|
+
The direction sheet deals a palette with named roles. This file is how to apply it so the page looks
|
|
4
|
+
decided rather than tinted.
|
|
5
|
+
|
|
6
|
+
## Contents
|
|
7
|
+
|
|
8
|
+
1. What the study measured
|
|
9
|
+
2. The roles
|
|
10
|
+
3. Proportion
|
|
11
|
+
4. Surfaces without lines or shadows
|
|
12
|
+
5. Colour fields
|
|
13
|
+
6. Dark pages
|
|
14
|
+
7. Colour and photographs
|
|
15
|
+
8. Contrast
|
|
16
|
+
9. Banned families, and what "warm" means here
|
|
17
|
+
|
|
18
|
+
## 1. What the study measured
|
|
19
|
+
|
|
20
|
+
- 41% of the studied pages are dark, 59% light. A quarter sit on pure white; 12% on pure black.
|
|
21
|
+
- Schemes, as the panel classed them: monochrome plus one accent 23%, light neutral 22%, dark neutral
|
|
22
|
+
14%, several flat colours 13%, strictly two-tone 12%, colour carried by photographs 9%, one saturated
|
|
23
|
+
field 6%.
|
|
24
|
+
- Buttons are neutral (black, white, grey) on 52% of sites. A coloured button is a choice, not a
|
|
25
|
+
requirement.
|
|
26
|
+
- Gradient fills appear on 22% of the top-scored sites and 52% of the weak ones; gradient text on 2%
|
|
27
|
+
against 13%.
|
|
28
|
+
- One site in 246 has a terracotta primary button and none has a violet one. Those are colours of
|
|
29
|
+
generated pages, not of the gallery. Warm off-white grounds do occur (32 sites), nearly always with
|
|
30
|
+
a dark or green ink rather than an orange accent.
|
|
31
|
+
- Top-scored sites change the page's field colour between sections more often (a median of two section
|
|
32
|
+
grounds against one).
|
|
33
|
+
|
|
34
|
+
## 2. The roles
|
|
35
|
+
|
|
36
|
+
```css
|
|
37
|
+
:root {
|
|
38
|
+
--bg: …; /* the ground: most of the surface */
|
|
39
|
+
--surface: …; /* one tone step from the ground: filled panels, form fields, tiles */
|
|
40
|
+
--ink: …; /* main text and the strongest marks */
|
|
41
|
+
--muted: …; /* secondary text; still passes contrast on --bg */
|
|
42
|
+
--accent: …; /* the one accent */
|
|
43
|
+
--accent-ink: …; /* text on the accent */
|
|
44
|
+
/* --field-1 … --field-n and their inks, when the palette has section fields */
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Use the tokens for every colour in the build. A raw hex in a component is a second palette starting.
|
|
49
|
+
Do not add greys between the roles: if you need a quieter text, it is `--muted`; if you need a quieter
|
|
50
|
+
surface, it is `--surface`.
|
|
51
|
+
|
|
52
|
+
## 3. Proportion
|
|
53
|
+
|
|
54
|
+
Decide the shares before colouring anything and check them in the screenshot:
|
|
55
|
+
|
|
56
|
+
- **Ground:** 70–90% of the page.
|
|
57
|
+
- **Ink:** text and perhaps one inverted section (ink as ground, ground as ink).
|
|
58
|
+
- **Accent:** under 5% of any screen. It marks the action and at most one other recurring thing. The
|
|
59
|
+
moment it appears in five places it stops meaning "here".
|
|
60
|
+
|
|
61
|
+
Palettes with fields (flat-loud, pastel) work differently: each section is one field at full strength
|
|
62
|
+
and the proportion rule applies inside each section (field, its ink, nothing else).
|
|
63
|
+
|
|
64
|
+
The accent is not for headings, icons, bullets, borders or underlines unless the direction sheet says
|
|
65
|
+
so. A headline is ink.
|
|
66
|
+
|
|
67
|
+
## 4. Surfaces without lines or shadows
|
|
68
|
+
|
|
69
|
+
With rules and shadows banned, a surface is told apart from the ground by tone alone:
|
|
70
|
+
|
|
71
|
+
```css
|
|
72
|
+
.panel { background: var(--surface); } /* 2–6 lightness points from --bg */
|
|
73
|
+
.field { background: var(--surface); border: 0; } /* inputs: filled, with a clear focus state */
|
|
74
|
+
.field:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
- One step is enough. If a panel does not read, increase padding or separate with space before
|
|
78
|
+
reaching for a second tone.
|
|
79
|
+
- Do not nest a panel inside a panel.
|
|
80
|
+
- Images do not need a frame. If a light photograph melts into a light ground, change the crop or set
|
|
81
|
+
it on `--surface`, do not outline it.
|
|
82
|
+
- A thick bar (4px or more) in ink or accent is a graphic element, allowed where the direction uses
|
|
83
|
+
it. A 1px line is not.
|
|
84
|
+
|
|
85
|
+
## 5. Colour fields
|
|
86
|
+
|
|
87
|
+
A section that changes the whole ground colour is the strongest colour move available, and it replaces
|
|
88
|
+
dividers, cards and background decoration at once.
|
|
89
|
+
|
|
90
|
+
- Fields meet edge to edge with a hard line. Nothing fades.
|
|
91
|
+
- Every field has its own assigned ink from the palette. Never put `--muted` on a coloured field; use
|
|
92
|
+
the field's ink at full strength, or at 70% opacity for secondary text if it still passes contrast.
|
|
93
|
+
- Neighbouring fields should differ in lightness, not only in hue, or the page vibrates.
|
|
94
|
+
- Order them like chapters: open strong, rest, surprise, close dark or very light.
|
|
95
|
+
- The page's meta theme colour and the navigation follow the first field.
|
|
96
|
+
|
|
97
|
+
## 6. Dark pages
|
|
98
|
+
|
|
99
|
+
- Put `color-scheme: dark` on the root so form controls and scrollbars follow.
|
|
100
|
+
- The ground is a deep tone with a slight tint from the palette, and the ink is a soft light, not
|
|
101
|
+
`#fff` on `#000`, unless the palette deals exactly that for a stark two-tone direction.
|
|
102
|
+
- Secondary text is where dark pages fail: check `--muted` against the ground (4.5:1).
|
|
103
|
+
- Depth on dark comes from a lighter surface step, never from glows or coloured light.
|
|
104
|
+
- Use lighter font weights than you would on a light page.
|
|
105
|
+
|
|
106
|
+
## 7. Colour and photographs
|
|
107
|
+
|
|
108
|
+
- When photographs carry the colour, the interface stays neutral and takes its ink from the darkest
|
|
109
|
+
tone in the imagery.
|
|
110
|
+
- Do not wash a photograph with the brand colour. Either leave it alone, or commit to a real treatment
|
|
111
|
+
for every image on the page (all greyscale, or all untouched).
|
|
112
|
+
- Text over a photograph needs a calm region. If there is none, move the text off the image. A neutral
|
|
113
|
+
scrim (black or the ink colour, 30–55% opacity, flat or fading over the text area only) is the one
|
|
114
|
+
gradient the inspector allows.
|
|
115
|
+
- A flat field sampled from a photograph (its sky, its shadow) makes a section sit with that image.
|
|
116
|
+
|
|
117
|
+
## 8. Contrast
|
|
118
|
+
|
|
119
|
+
- Body text 4.5:1 or better; display type and large numerals 3:1 or better; the dealt palettes meet
|
|
120
|
+
7:1 for ink on ground.
|
|
121
|
+
- `inspect.mjs` computes contrast for text on flat grounds and fails anything under 2.6:1. It cannot
|
|
122
|
+
see text over photographs: check those in the screenshots yourself.
|
|
123
|
+
- Do not lower opacity on text to make it "soft" unless you have checked the resulting ratio.
|
|
124
|
+
- Focus states and hover states increase contrast, never reduce it.
|
|
125
|
+
|
|
126
|
+
## 9. Banned families, and what "warm" means here
|
|
127
|
+
|
|
128
|
+
The inspector fails these:
|
|
129
|
+
|
|
130
|
+
- **Cream with terracotta.** A yellow-cream ground (roughly hue 22–62, light and noticeably
|
|
131
|
+
saturated) with a rust, clay or burnt-orange accent is the house look of AI assistants and of the
|
|
132
|
+
pages they generate. Either half alone is suspect; together they are unmistakable.
|
|
133
|
+
- **Violet and indigo.** The first wave of generated pages was purple; it still reads that way.
|
|
134
|
+
|
|
135
|
+
If the brief wants warmth, get it from a low-chroma stone, bone or putty ground (saturation under
|
|
136
|
+
about 15%), from a deep green, brown or oxblood ink, from photographs, or from a full warm field
|
|
137
|
+
(mustard, tomato red, pink) used flat and with conviction. Warmth is not beige.
|
|
138
|
+
|
|
139
|
+
If the brand itself owns one of the banned colours, it is the brand's and you keep it: use
|
|
140
|
+
`--keep palette`, pass `--allow palette-purple` (or the relevant rule) to the inspector, and note it in
|
|
141
|
+
the report.
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
# Words
|
|
2
|
+
|
|
3
|
+
Copy is the first design decision. A headline that needs four lines cannot be rescued by typography,
|
|
4
|
+
and a page of slogans cannot be rescued by layout. Write the page as plain text before any markup.
|
|
5
|
+
|
|
6
|
+
## Contents
|
|
7
|
+
|
|
8
|
+
1. Write the argument first
|
|
9
|
+
2. The two-line headline (with the character budget)
|
|
10
|
+
3. Headline shapes that work
|
|
11
|
+
4. Supporting line, body, buttons
|
|
12
|
+
5. Proof without inventing it
|
|
13
|
+
6. Things that read as generated
|
|
14
|
+
7. Micro-typography
|
|
15
|
+
|
|
16
|
+
## 1. Write the argument first
|
|
17
|
+
|
|
18
|
+
Answer in one line each, in a scratch note:
|
|
19
|
+
|
|
20
|
+
- Who is reading, and what do they already know?
|
|
21
|
+
- What is this, said the way its maker would say it to a friend?
|
|
22
|
+
- What single thing should the reader believe after one screen?
|
|
23
|
+
- What would make them believe it (a picture of the thing, a number, a name, a demonstration)?
|
|
24
|
+
- What do they do next?
|
|
25
|
+
|
|
26
|
+
Then list the page as claims, one per section, each with its proof:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
1. It is a three-legged oak stool, made to order. → the stool, large
|
|
30
|
+
2. Each seat is cut from one board, so the grain is yours. → three close-ups
|
|
31
|
+
3. It takes six weeks, and you can follow it. → the stages, photographed
|
|
32
|
+
4. It costs 240 and is delivered by the maker. → price, button
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
A section with no claim is filler; delete it. This is also how you escape the stock order of
|
|
36
|
+
hero, logos, features, testimonial, pricing, call to action: the order of the argument is the order of
|
|
37
|
+
the page.
|
|
38
|
+
|
|
39
|
+
## 2. The two-line headline
|
|
40
|
+
|
|
41
|
+
A headline is a title. It is held in one glance. On the studied gallery sites the hero headline has a
|
|
42
|
+
median of 5 words and 70% sit on one or two lines at desktop width. Every headline on your page, at
|
|
43
|
+
every viewport, fits in **two lines or fewer**. `inspect.mjs` measures this at 1440, 768 and 390 pixels
|
|
44
|
+
and fails the page otherwise.
|
|
45
|
+
|
|
46
|
+
The constraint is arithmetic, so do it before you fall in love with a sentence:
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
characters per line ≈ line width in px ÷ (font size in px × k)
|
|
50
|
+
|
|
51
|
+
k ≈ 0.40 condensed faces
|
|
52
|
+
k ≈ 0.50 most grotesks and serifs at display size, tight tracking
|
|
53
|
+
k ≈ 0.58 wide / extended faces, all-caps settings
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
| Where | Line width | Size | Per line | Two-line budget |
|
|
57
|
+
| --- | --- | --- | --- | --- |
|
|
58
|
+
| Phone 390, 20px gutters | 350px | 44px | ~16 | **~32 characters** |
|
|
59
|
+
| Phone 390, 20px gutters | 350px | 34px | ~21 | ~42 characters |
|
|
60
|
+
| Tablet 768 | 690px | 64px | ~22 | ~44 characters |
|
|
61
|
+
| Desktop, 12-col measure | 1100px | 104px | ~21 | ~42 characters |
|
|
62
|
+
| Desktop, half width | 620px | 72px | ~17 | ~34 characters |
|
|
63
|
+
|
|
64
|
+
So a hero headline of **about 32 characters or fewer** (four to six words) survives everywhere at a
|
|
65
|
+
confident size. Up to about 42 works if the phone size comes down to the mid-30s. Past that you are
|
|
66
|
+
writing a sentence; move the rest into the supporting line.
|
|
67
|
+
|
|
68
|
+
Controlling the break:
|
|
69
|
+
|
|
70
|
+
- Give the headline a `max-width` in `ch` so it breaks where you intend, and add
|
|
71
|
+
`text-wrap: balance` so two lines come out even.
|
|
72
|
+
- Where the break matters (it usually does), author it: `Stools for<br> small kitchens`. Check the
|
|
73
|
+
phone screenshot; if an authored line wraps there, hide the `<br>` under a breakpoint or shorten.
|
|
74
|
+
- Never fix a long headline only by shrinking it. A timid 28px headline of nine words is worse than
|
|
75
|
+
five words at 64px.
|
|
76
|
+
- Avoid a single orphan word on line two. Rebalance by cutting a word, not by nudging the width.
|
|
77
|
+
|
|
78
|
+
Section headings follow the same rule and are shorter: two to five words.
|
|
79
|
+
|
|
80
|
+
**A statement is not a headline.** An intro sentence or a quotation set large (the manifesto line
|
|
81
|
+
after the hero, a testimonial) is a paragraph: mark it up as `<p>` or `<blockquote>`, keep it to about
|
|
82
|
+
25 words, and set it at statement size, which the inspector takes as 36px or less on desktop, 32px on
|
|
83
|
+
a tablet and 24px on a phone. It may then run to about three lines (four on a phone). Set larger than
|
|
84
|
+
that, or marked up as a heading, or placed as the main line of the first screen, it is a headline and
|
|
85
|
+
gets two lines. In blind judging, a sentence set big over three or more lines was read as a long
|
|
86
|
+
headline every time, whatever its markup; if the words matter that much, cut them to a two-line
|
|
87
|
+
headline instead.
|
|
88
|
+
|
|
89
|
+
## 3. Headline shapes that work
|
|
90
|
+
|
|
91
|
+
All seen repeatedly on the gallery sites. Pick the plainest one that is true.
|
|
92
|
+
|
|
93
|
+
- **The name.** The brand or the person, set very large, with a one-line description elsewhere.
|
|
94
|
+
Strongest when the name is short and the subject is visual (studios, restaurants, hotels, people).
|
|
95
|
+
- **What it is.** "A vinyl shelf in your pocket." "Furniture for small rooms." Category, stated with
|
|
96
|
+
one specific word.
|
|
97
|
+
- **The claim.** "Your bank won't do this." One sentence a competitor could not sign.
|
|
98
|
+
- **The instruction.** "Understand your money." Verb first, short.
|
|
99
|
+
- **The place or the moment.** "Antarctica." "Lisbon, since 1984." For hospitality, events, travel.
|
|
100
|
+
|
|
101
|
+
Shapes to avoid, because they are the average of every landing page:
|
|
102
|
+
|
|
103
|
+
- The mad-lib: "The AI-powered platform for modern teams".
|
|
104
|
+
- The tricolon: "Fast. Simple. Secure." or "Plan. Build. Ship."
|
|
105
|
+
- The correction: "It's not just a tool, it's a workflow". Also "More than a …".
|
|
106
|
+
- "X, reimagined / redefined / made simple". "Welcome to …". "Meet …" for a product nobody has met.
|
|
107
|
+
- A question the reader did not ask.
|
|
108
|
+
- A headline that needs its colon: "Ledgerly: invoicing for freelancers". Drop the name, it is in the
|
|
109
|
+
navigation.
|
|
110
|
+
- One word of the headline styled differently (italic, serif, coloured, underlined, in a pill).
|
|
111
|
+
|
|
112
|
+
Sentence case. No full stop unless the direction's voice uses them everywhere.
|
|
113
|
+
|
|
114
|
+
## 4. Supporting line, body, buttons
|
|
115
|
+
|
|
116
|
+
**Supporting line.** One sentence, at most about 22 words, that says concretely what the thing is and
|
|
117
|
+
who it is for. It is where the detail cut from the headline goes. It never repeats the headline in
|
|
118
|
+
other words.
|
|
119
|
+
|
|
120
|
+
**Body.** Short paragraphs of plain statements. Prefer the specific noun and the real number: "ships
|
|
121
|
+
in a week" over "fast delivery"; "38 seats" over "intimate". Read every sentence and ask whether a
|
|
122
|
+
different company could print it unchanged; if so, sharpen it or cut it.
|
|
123
|
+
|
|
124
|
+
**Buttons.** Name the action or the thing: "Book a table", "See the plans", "Download for Mac".
|
|
125
|
+
One to three words. The primary action keeps one name everywhere on the page. One primary button per
|
|
126
|
+
screen; a second action is a plain text link. No arrow glyph on every link and button; at most one
|
|
127
|
+
arrow, on the primary action, if the direction uses arrows at all.
|
|
128
|
+
|
|
129
|
+
**Navigation.** The wordmark, up to five plain links, one action. Link labels are single nouns.
|
|
130
|
+
|
|
131
|
+
## 5. Proof without inventing it
|
|
132
|
+
|
|
133
|
+
Never invent customers, quotes from named people, press logos, user counts, ratings or benchmarks.
|
|
134
|
+
Invented proof is both dishonest and a recognised tell.
|
|
135
|
+
|
|
136
|
+
When the brief supplies no proof, use what is true by construction:
|
|
137
|
+
|
|
138
|
+
- Show the thing itself, large. A real demonstration outranks any quote.
|
|
139
|
+
- State how it works, specifically.
|
|
140
|
+
- Use facts from the brief (price, place, year, materials, what is included).
|
|
141
|
+
- If a testimonial or logo section is explicitly requested and no real ones exist, build the section
|
|
142
|
+
with plainly fictional sample content and say so in your final report so it is replaced before
|
|
143
|
+
launch. Do not put real company names or real people in it.
|
|
144
|
+
|
|
145
|
+
**Sample details are different from proof, and they are expected.** Where the brief gives the shape of
|
|
146
|
+
the content but not every detail (six rooms "from €140", "a short menu", twelve speakers), write the
|
|
147
|
+
full set of plausible details: each room with a name, a bed, a view and its own rate; each dish with
|
|
148
|
+
its price; each speaker with a talk title. A design can only be judged at its real density, and a page
|
|
149
|
+
that shows one rate where six rooms exist looks unfinished. List every sample detail in the report so
|
|
150
|
+
the client confirms or replaces it.
|
|
151
|
+
|
|
152
|
+
## 6. Things that read as generated
|
|
153
|
+
|
|
154
|
+
`lint.mjs` flags most of these.
|
|
155
|
+
|
|
156
|
+
- Verbs and adjectives of the genre: unlock, unleash, supercharge, elevate, empower, streamline,
|
|
157
|
+
seamless, effortless, robust, cutting-edge, next-generation, world-class, all-in-one, blazing fast.
|
|
158
|
+
- Labels pretending to be editorial: "Field notes", "The details", "Our philosophy", "Quietly trusted
|
|
159
|
+
by". A section heading can simply be "Pricing".
|
|
160
|
+
- Furniture text: locale or time strips, "Est. 2024", coordinates, version stamps, "Scroll", "(Scroll
|
|
161
|
+
to explore)", fake photo credits, status lines such as "Available for work" with a dot, strings of
|
|
162
|
+
words separated by middle dots or slashes.
|
|
163
|
+
- The em dash as a habit. One or two on a page read as writing; ten read as a model. Use a full stop.
|
|
164
|
+
- Explainer captions that narrate the design: "A clean, minimal layout for…".
|
|
165
|
+
- Step labels that duplicate numbers: "Step 1", "Phase 02".
|
|
166
|
+
- Three parallel items everywhere: three features, three stats, three steps. Use the number the
|
|
167
|
+
content has.
|
|
168
|
+
|
|
169
|
+
## 7. Micro-typography
|
|
170
|
+
|
|
171
|
+
- Curly quotes and apostrophes (“ ” ’), a real ellipsis (…), an en dash for ranges (9–5).
|
|
172
|
+
- Non-breaking space between a number and its unit, and before the last short word of a headline
|
|
173
|
+
when it would otherwise orphan (` `).
|
|
174
|
+
- `font-variant-numeric: tabular-nums` where numbers line up in columns (prices, tables).
|
|
175
|
+
- `text-wrap: balance` on headings, `text-wrap: pretty` on paragraphs.
|
|
176
|
+
- No all-caps for anything longer than three words; if you set caps, add 0.02–0.06em tracking.
|
|
177
|
+
- No text under 13px. No centred paragraphs longer than three lines. No justified text.
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
# Critique — judging the render
|
|
2
|
+
|
|
3
|
+
`inspect.mjs` passing means nothing banned or broken was measured. It says nothing about whether the
|
|
4
|
+
page is good. This file is how you find out. Use it on the screenshots, never on the code: you wrote
|
|
5
|
+
the code, so you will read your intentions into it. The pictures only show what is there.
|
|
6
|
+
|
|
7
|
+
## Contents
|
|
8
|
+
|
|
9
|
+
1. How to look (fourteen passes, a few minutes)
|
|
10
|
+
2. The score
|
|
11
|
+
3. Caps
|
|
12
|
+
4. Writing the critique
|
|
13
|
+
5. What to fix first
|
|
14
|
+
6. When to stop
|
|
15
|
+
|
|
16
|
+
## 1. How to look
|
|
17
|
+
|
|
18
|
+
Open `desktop-fold.jpg`, then the `desktop-page-*.jpg` sheets, then `mobile-fold.jpg` and the mobile
|
|
19
|
+
sheets. Make each pass on its own; do not blend them.
|
|
20
|
+
|
|
21
|
+
1. **One second.** Glance and look away. What did you see? There should be exactly one answer: a
|
|
22
|
+
word, an image, an object. If the answer is "a website", there is no focal point.
|
|
23
|
+
2. **Squint.** Blur your attention until text becomes grey bars. The page should reduce to two or
|
|
24
|
+
three large masses with clear size differences. Many small similar masses means everything is
|
|
25
|
+
medium and nothing leads.
|
|
26
|
+
3. **Cover the logo.** Could this first screen belong to a competitor, or to a different industry?
|
|
27
|
+
If swapping the name and the noun in the headline would produce an equally valid page, the page has
|
|
28
|
+
no idea. Go back to the direction sheet; the idea is written there. Then scroll: does the idea reach
|
|
29
|
+
the pricing, the FAQ and the footer, or does the page turn into stock blocks after the first screen?
|
|
30
|
+
4. **Edges.** Follow the left edge of every text block down the page. Count the distinct x positions.
|
|
31
|
+
A composed page has two or three, reused on purpose. Six means things were placed one at a time.
|
|
32
|
+
5. **Space.** Are related things close and unrelated things far? Is the gap between sections clearly
|
|
33
|
+
larger than any gap inside a section? Is any region empty by accident (a hole) rather than by
|
|
34
|
+
decision (a rest)? A hole usually sits beside a short column or under a removed decoration.
|
|
35
|
+
6. **Type.** Is the jump from body text to headline decisive (three times or more)? Do you see more
|
|
36
|
+
than five sizes? Any headline with one orphan word on its last line? Any paragraph wider than about
|
|
37
|
+
75 characters or centred over more than three lines?
|
|
38
|
+
7. **Colour.** Name the proportions: which colour holds most of the surface, which supports, where is
|
|
39
|
+
the accent? An accent that appears in ten places means nothing. One that appears on the single
|
|
40
|
+
action and one detail means "here".
|
|
41
|
+
8. **Images.** Count the real pictures: are there at least four, and is there a moving one? A page of
|
|
42
|
+
drawings only, or of type only, looks unfinished next to one with real photographs and footage.
|
|
43
|
+
Is every image doing a job (showing the thing, setting the place, proving the claim)?
|
|
44
|
+
Do the crops share ratios? Is anything a grey box, a stretched photo, a fake screen made of bars?
|
|
45
|
+
Does the photography share one light and one grade, or is it a stock mix?
|
|
46
|
+
9. **Sameness.** Write one word for each section's layout (split, list, full-bleed, grid, statement,
|
|
47
|
+
index …). The same word twice in a row, or three times on the page, is the template showing.
|
|
48
|
+
10. **Phone.** Is the mobile screen a composition of its own, with its own crop and its own line
|
|
49
|
+
breaks, or the desktop page squeezed? Is the first screen still one clear thing?
|
|
50
|
+
11. **Fullness.** Go through the desktop sheets screen by screen. Is each screen a composed poster, or
|
|
51
|
+
is it a narrow column of small text with dead ground either side? Is any statement held on screen
|
|
52
|
+
for three screens? An austere page is not a restrained one: if the page could be mistaken for an
|
|
53
|
+
unfinished wireframe (grey shapes, grey text, one small column), it is underbuilt. A single motif or
|
|
54
|
+
drawing blown up to fill a whole screen with nothing to read is a hole too, however bold it looks.
|
|
55
|
+
12. **Substance.** Does every section the brief asked for deliver its information completely and at a
|
|
56
|
+
readable size (the full menu, each room, every speaker, the price and what it includes)? Would the
|
|
57
|
+
visitor leave knowing what they came to find out? Is the primary action a real button on the first
|
|
58
|
+
screen?
|
|
59
|
+
13. **Collisions.** Is anything lying on top of a headline, a statement or a button at any scroll
|
|
60
|
+
position? Does any element run off the edge of the phone screen? A row that scrolls sideways on
|
|
61
|
+
the phone reads as cut off in a screenshot and to most visitors; wrap it unless the cut is
|
|
62
|
+
plainly deliberate (a partial card showing at the edge).
|
|
63
|
+
14. **The competitor and the live thing.** Put the nearest competitor's name on the page: does the
|
|
64
|
+
idea still work? Then name the one live thing (what the visitor can do or what differs each visit).
|
|
65
|
+
If either answer is weak, that is the first problem of the round, ahead of any detail.
|
|
66
|
+
|
|
67
|
+
A note from testing: in blind comparisons a richer page full of template devices beat a cleaner page
|
|
68
|
+
that was thin, every time. The house rules remove the devices; passes 11–13 are where you make sure the
|
|
69
|
+
page did not lose its substance with them.
|
|
70
|
+
|
|
71
|
+
## 2. The score
|
|
72
|
+
|
|
73
|
+
Score like an Awwwards juror: four criteria, 1–10 each, weighted **design 40%, usability 30%,
|
|
74
|
+
creativity 20%, content 10%**.
|
|
75
|
+
|
|
76
|
+
**Design (40%)** — composition, typography, colour, imagery, craft.
|
|
77
|
+
- 9–10: every screen holds as a poster. Nothing could be removed or moved.
|
|
78
|
+
- 8: confident and coherent; one or two soft spots a designer would notice.
|
|
79
|
+
- 7: clean and professional, a clear system, little tension.
|
|
80
|
+
- 6: tidy but anonymous. Reads as a kit.
|
|
81
|
+
- 5 or less: weak hierarchy, accidental spacing, default type, mismatched images.
|
|
82
|
+
|
|
83
|
+
**Usability (30%)** — orientation in three seconds, readable text, obvious actions, honest mobile.
|
|
84
|
+
- 9–10: you know what it is, who it is for and what to do without scrolling; flawless on a phone.
|
|
85
|
+
- 8: clear and comfortable; minor friction (a long section, a small target).
|
|
86
|
+
- 7: works, with one real problem (weak contrast somewhere, a cramped phone layout).
|
|
87
|
+
- 6 or less: you have to hunt, or something breaks.
|
|
88
|
+
|
|
89
|
+
**Creativity (20%)** — an idea you can state in a sentence, carried through.
|
|
90
|
+
- 9–10: a concept specific to this subject that you have not seen applied this way.
|
|
91
|
+
- 8: a clear idea with one memorable move.
|
|
92
|
+
- 7: a tasteful execution of a known approach.
|
|
93
|
+
- 6 or less: the category default.
|
|
94
|
+
|
|
95
|
+
**Content (10%)** — words and pictures that are specific, true-sounding and edited.
|
|
96
|
+
- 9–10: every line could only be about this subject; imagery is the subject.
|
|
97
|
+
- 7–8: clear and concrete, some generic lines.
|
|
98
|
+
- 6 or less: slogans, filler, stock.
|
|
99
|
+
|
|
100
|
+
`overall = 0.4·design + 0.3·usability + 0.2·creativity + 0.1·content`
|
|
101
|
+
|
|
102
|
+
For calibration: real Sites of the Day land around 7.5–8.0 overall from the jury. An honest 8.5 is
|
|
103
|
+
rare. If your first score for your own work is 9, score it again as the juror who did not build it.
|
|
104
|
+
|
|
105
|
+
## 3. Caps
|
|
106
|
+
|
|
107
|
+
These override the arithmetic.
|
|
108
|
+
|
|
109
|
+
- Any `FAIL` still reported by `inspect.mjs`: overall cannot exceed **6.0**.
|
|
110
|
+
- A headline of three or more lines at any viewport, an eyebrow label, monospace labels, 01/02/03
|
|
111
|
+
numbering, a decorative gradient, a shadow on a resting element, or a decorative hairline visible in
|
|
112
|
+
a screenshot: overall cannot exceed **6.5**, whatever else is true.
|
|
113
|
+
- Pass 3 fails (the page could belong to anyone): creativity cannot exceed **6**.
|
|
114
|
+
- The idea passes for the nearest competitor (pass 14): creativity cannot exceed **7**.
|
|
115
|
+
- Fewer than four real pictures (photographs, archival images, footage; drawings do not count):
|
|
116
|
+
design cannot exceed **6.5**.
|
|
117
|
+
- A page that barely moves (the inspector's `still-page`), or motion that is one identical fade on
|
|
118
|
+
every block: design cannot exceed **7**.
|
|
119
|
+
- No live thing (pass 14): creativity cannot exceed **7.5**.
|
|
120
|
+
- Any placeholder (grey box, lorem, "Image here"): content cannot exceed **5**.
|
|
121
|
+
- Two or more desktop screens that are mostly empty ground, or a page whose running text is small and
|
|
122
|
+
grey: design cannot exceed **6.5**.
|
|
123
|
+
- A section the brief asked for that is missing or reduced to a few words: content cannot exceed **6**.
|
|
124
|
+
- No real button for the primary action on the first screen: usability cannot exceed **7**.
|
|
125
|
+
- Anything covering a headline at any scroll position: usability cannot exceed **6**.
|
|
126
|
+
- A blank band where a reveal did not fire, or content clipped off-screen: usability cannot exceed **5**.
|
|
127
|
+
|
|
128
|
+
## 4. Writing the critique
|
|
129
|
+
|
|
130
|
+
Write it down; do not just think it. Use exactly this shape so rounds can be compared:
|
|
131
|
+
|
|
132
|
+
```
|
|
133
|
+
ROUND n
|
|
134
|
+
Seen in one second: …
|
|
135
|
+
Idea (one sentence): …
|
|
136
|
+
Live thing: …
|
|
137
|
+
Layout words by section: hero=… / …=… / …
|
|
138
|
+
Scores: design _ · usability _ · creativity _ · content _ → overall _._
|
|
139
|
+
Caps applied: …
|
|
140
|
+
Top three problems (most visible first), each with the screenshot it shows in and the fix:
|
|
141
|
+
1. …
|
|
142
|
+
2. …
|
|
143
|
+
3. …
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
Name problems the way a designer would to a colleague: "the supporting paragraph starts 40px left of
|
|
147
|
+
the headline's edge", "the testimonial section is the third split layout in a row", "the phone hero
|
|
148
|
+
crops the bottle out of frame". "Could be more polished" is not a finding.
|
|
149
|
+
|
|
150
|
+
## 5. What to fix first
|
|
151
|
+
|
|
152
|
+
Fix in this order; later items cannot rescue earlier ones.
|
|
153
|
+
|
|
154
|
+
1. **The idea.** If pass 3 fails, change the hero concept, not the details.
|
|
155
|
+
2. **Hierarchy.** One dominant element per screen. Make the big thing bigger and the small things
|
|
156
|
+
fewer before touching anything else.
|
|
157
|
+
3. **Composition.** Shared edges, section spacing, variety of layout between sections, holes.
|
|
158
|
+
4. **Typography.** Scale contrast, line breaks, measure, leading.
|
|
159
|
+
5. **Imagery.** Replace weak pictures, unify crops and grade.
|
|
160
|
+
6. **Colour.** Proportion and accent discipline.
|
|
161
|
+
7. **Detail.** States, focus, small alignments, mobile refinements.
|
|
162
|
+
8. **Motion.** Last.
|
|
163
|
+
|
|
164
|
+
When removing something leaves a gap, do not refill it with an ornament. Close the gap, enlarge what
|
|
165
|
+
remains, or let a picture or a colour field take the space.
|
|
166
|
+
|
|
167
|
+
## 6. When to stop
|
|
168
|
+
|
|
169
|
+
Run at most three rounds: critique → fix the top three → re-inspect → critique. Stop early when a round
|
|
170
|
+
finds no problem a stranger would notice. If round three still scores under 7.5, say so plainly in
|
|
171
|
+
your report, with the remaining problems listed; do not round up.
|