agy-superpowers 5.2.2 → 5.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -150
- package/package.json +1 -1
- package/template/agent/rules/scratch-scripts.md +37 -0
- package/template/agent/rules/superpowers.md +4 -51
- package/template/agent/skills/ai-integrated-product/SKILL.md +0 -57
- package/template/agent/skills/analytics-setup/SKILL.md +0 -51
- package/template/agent/skills/api-design/SKILL.md +0 -193
- package/template/agent/skills/app-store-optimizer/SKILL.md +0 -127
- package/template/agent/skills/auth-and-identity/SKILL.md +0 -167
- package/template/agent/skills/backend-developer/SKILL.md +0 -148
- package/template/agent/skills/bootstrapper-finance/SKILL.md +0 -55
- package/template/agent/skills/chrome-extension-developer/SKILL.md +0 -53
- package/template/agent/skills/community-manager/SKILL.md +0 -115
- package/template/agent/skills/content-marketer/SKILL.md +0 -111
- package/template/agent/skills/conversion-optimizer/SKILL.md +0 -142
- package/template/agent/skills/cto-architect/SKILL.md +0 -133
- package/template/agent/skills/customer-success-manager/SKILL.md +0 -126
- package/template/agent/skills/data-analyst/SKILL.md +0 -147
- package/template/agent/skills/devops-engineer/SKILL.md +0 -117
- package/template/agent/skills/email-infrastructure/SKILL.md +0 -164
- package/template/agent/skills/game-design/SKILL.md +0 -194
- package/template/agent/skills/game-developer/SKILL.md +0 -175
- package/template/agent/skills/growth-hacker/SKILL.md +0 -122
- package/template/agent/skills/idea-validator/SKILL.md +0 -55
- package/template/agent/skills/indie-legal/SKILL.md +0 -53
- package/template/agent/skills/influencer-marketer/SKILL.md +0 -141
- package/template/agent/skills/landing-page-builder/SKILL.md +0 -59
- package/template/agent/skills/launch-strategist/SKILL.md +0 -62
- package/template/agent/skills/market-researcher/SKILL.md +0 -53
- package/template/agent/skills/micro-saas-builder/SKILL.md +0 -56
- package/template/agent/skills/monetization-strategist/SKILL.md +0 -119
- package/template/agent/skills/paid-acquisition-specialist/SKILL.md +0 -119
- package/template/agent/skills/pricing-psychologist/SKILL.md +0 -58
- package/template/agent/skills/real-time-features/SKILL.md +0 -194
- package/template/agent/skills/retention-specialist/SKILL.md +0 -123
- package/template/agent/skills/rust-developer/SKILL.md +0 -281
- package/template/agent/skills/rust-developer/references/rust-rules/_sections.md +0 -231
- package/template/agent/skills/rust-developer/references/rust-rules/anti-clone-excessive.md +0 -124
- package/template/agent/skills/rust-developer/references/rust-rules/anti-collect-intermediate.md +0 -131
- package/template/agent/skills/rust-developer/references/rust-rules/anti-empty-catch.md +0 -132
- package/template/agent/skills/rust-developer/references/rust-rules/anti-expect-lazy.md +0 -95
- package/template/agent/skills/rust-developer/references/rust-rules/anti-format-hot-path.md +0 -141
- package/template/agent/skills/rust-developer/references/rust-rules/anti-index-over-iter.md +0 -125
- package/template/agent/skills/rust-developer/references/rust-rules/anti-lock-across-await.md +0 -127
- package/template/agent/skills/rust-developer/references/rust-rules/anti-over-abstraction.md +0 -120
- package/template/agent/skills/rust-developer/references/rust-rules/anti-panic-expected.md +0 -131
- package/template/agent/skills/rust-developer/references/rust-rules/anti-premature-optimize.md +0 -156
- package/template/agent/skills/rust-developer/references/rust-rules/anti-string-for-str.md +0 -122
- package/template/agent/skills/rust-developer/references/rust-rules/anti-stringly-typed.md +0 -167
- package/template/agent/skills/rust-developer/references/rust-rules/anti-type-erasure.md +0 -134
- package/template/agent/skills/rust-developer/references/rust-rules/anti-unwrap-abuse.md +0 -143
- package/template/agent/skills/rust-developer/references/rust-rules/anti-vec-for-slice.md +0 -121
- package/template/agent/skills/rust-developer/references/rust-rules/api-builder-must-use.md +0 -143
- package/template/agent/skills/rust-developer/references/rust-rules/api-builder-pattern.md +0 -187
- package/template/agent/skills/rust-developer/references/rust-rules/api-common-traits.md +0 -165
- package/template/agent/skills/rust-developer/references/rust-rules/api-default-impl.md +0 -177
- package/template/agent/skills/rust-developer/references/rust-rules/api-extension-trait.md +0 -163
- package/template/agent/skills/rust-developer/references/rust-rules/api-from-not-into.md +0 -146
- package/template/agent/skills/rust-developer/references/rust-rules/api-impl-asref.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/api-impl-into.md +0 -160
- package/template/agent/skills/rust-developer/references/rust-rules/api-must-use.md +0 -125
- package/template/agent/skills/rust-developer/references/rust-rules/api-newtype-safety.md +0 -162
- package/template/agent/skills/rust-developer/references/rust-rules/api-non-exhaustive.md +0 -177
- package/template/agent/skills/rust-developer/references/rust-rules/api-parse-dont-validate.md +0 -184
- package/template/agent/skills/rust-developer/references/rust-rules/api-sealed-trait.md +0 -168
- package/template/agent/skills/rust-developer/references/rust-rules/api-serde-optional.md +0 -182
- package/template/agent/skills/rust-developer/references/rust-rules/api-typestate.md +0 -199
- package/template/agent/skills/rust-developer/references/rust-rules/async-bounded-channel.md +0 -175
- package/template/agent/skills/rust-developer/references/rust-rules/async-broadcast-pubsub.md +0 -185
- package/template/agent/skills/rust-developer/references/rust-rules/async-cancellation-token.md +0 -203
- package/template/agent/skills/rust-developer/references/rust-rules/async-clone-before-await.md +0 -171
- package/template/agent/skills/rust-developer/references/rust-rules/async-join-parallel.md +0 -158
- package/template/agent/skills/rust-developer/references/rust-rules/async-joinset-structured.md +0 -195
- package/template/agent/skills/rust-developer/references/rust-rules/async-mpsc-queue.md +0 -171
- package/template/agent/skills/rust-developer/references/rust-rules/async-no-lock-await.md +0 -156
- package/template/agent/skills/rust-developer/references/rust-rules/async-oneshot-response.md +0 -191
- package/template/agent/skills/rust-developer/references/rust-rules/async-select-racing.md +0 -198
- package/template/agent/skills/rust-developer/references/rust-rules/async-spawn-blocking.md +0 -154
- package/template/agent/skills/rust-developer/references/rust-rules/async-tokio-fs.md +0 -167
- package/template/agent/skills/rust-developer/references/rust-rules/async-tokio-runtime.md +0 -169
- package/template/agent/skills/rust-developer/references/rust-rules/async-try-join.md +0 -172
- package/template/agent/skills/rust-developer/references/rust-rules/async-watch-latest.md +0 -189
- package/template/agent/skills/rust-developer/references/rust-rules/doc-all-public.md +0 -113
- package/template/agent/skills/rust-developer/references/rust-rules/doc-cargo-metadata.md +0 -147
- package/template/agent/skills/rust-developer/references/rust-rules/doc-errors-section.md +0 -122
- package/template/agent/skills/rust-developer/references/rust-rules/doc-examples-section.md +0 -161
- package/template/agent/skills/rust-developer/references/rust-rules/doc-hidden-setup.md +0 -149
- package/template/agent/skills/rust-developer/references/rust-rules/doc-intra-links.md +0 -138
- package/template/agent/skills/rust-developer/references/rust-rules/doc-link-types.md +0 -169
- package/template/agent/skills/rust-developer/references/rust-rules/doc-module-inner.md +0 -116
- package/template/agent/skills/rust-developer/references/rust-rules/doc-panics-section.md +0 -128
- package/template/agent/skills/rust-developer/references/rust-rules/doc-question-mark.md +0 -136
- package/template/agent/skills/rust-developer/references/rust-rules/doc-safety-section.md +0 -131
- package/template/agent/skills/rust-developer/references/rust-rules/err-anyhow-app.md +0 -179
- package/template/agent/skills/rust-developer/references/rust-rules/err-context-chain.md +0 -144
- package/template/agent/skills/rust-developer/references/rust-rules/err-custom-type.md +0 -152
- package/template/agent/skills/rust-developer/references/rust-rules/err-doc-errors.md +0 -145
- package/template/agent/skills/rust-developer/references/rust-rules/err-expect-bugs-only.md +0 -133
- package/template/agent/skills/rust-developer/references/rust-rules/err-from-impl.md +0 -152
- package/template/agent/skills/rust-developer/references/rust-rules/err-lowercase-msg.md +0 -124
- package/template/agent/skills/rust-developer/references/rust-rules/err-no-unwrap-prod.md +0 -115
- package/template/agent/skills/rust-developer/references/rust-rules/err-question-mark.md +0 -151
- package/template/agent/skills/rust-developer/references/rust-rules/err-result-over-panic.md +0 -130
- package/template/agent/skills/rust-developer/references/rust-rules/err-source-chain.md +0 -155
- package/template/agent/skills/rust-developer/references/rust-rules/err-thiserror-lib.md +0 -171
- package/template/agent/skills/rust-developer/references/rust-rules/lint-cargo-metadata.md +0 -138
- package/template/agent/skills/rust-developer/references/rust-rules/lint-deny-correctness.md +0 -107
- package/template/agent/skills/rust-developer/references/rust-rules/lint-missing-docs.md +0 -154
- package/template/agent/skills/rust-developer/references/rust-rules/lint-pedantic-selective.md +0 -118
- package/template/agent/skills/rust-developer/references/rust-rules/lint-rustfmt-check.md +0 -157
- package/template/agent/skills/rust-developer/references/rust-rules/lint-unsafe-doc.md +0 -133
- package/template/agent/skills/rust-developer/references/rust-rules/lint-warn-complexity.md +0 -131
- package/template/agent/skills/rust-developer/references/rust-rules/lint-warn-perf.md +0 -136
- package/template/agent/skills/rust-developer/references/rust-rules/lint-warn-style.md +0 -135
- package/template/agent/skills/rust-developer/references/rust-rules/lint-warn-suspicious.md +0 -122
- package/template/agent/skills/rust-developer/references/rust-rules/lint-workspace-lints.md +0 -172
- package/template/agent/skills/rust-developer/references/rust-rules/mem-arena-allocator.md +0 -168
- package/template/agent/skills/rust-developer/references/rust-rules/mem-arrayvec.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/mem-assert-type-size.md +0 -168
- package/template/agent/skills/rust-developer/references/rust-rules/mem-avoid-format.md +0 -147
- package/template/agent/skills/rust-developer/references/rust-rules/mem-box-large-variant.md +0 -158
- package/template/agent/skills/rust-developer/references/rust-rules/mem-boxed-slice.md +0 -139
- package/template/agent/skills/rust-developer/references/rust-rules/mem-clone-from.md +0 -147
- package/template/agent/skills/rust-developer/references/rust-rules/mem-compact-string.md +0 -149
- package/template/agent/skills/rust-developer/references/rust-rules/mem-reuse-collections.md +0 -174
- package/template/agent/skills/rust-developer/references/rust-rules/mem-smaller-integers.md +0 -159
- package/template/agent/skills/rust-developer/references/rust-rules/mem-smallvec.md +0 -138
- package/template/agent/skills/rust-developer/references/rust-rules/mem-thinvec.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/mem-with-capacity.md +0 -156
- package/template/agent/skills/rust-developer/references/rust-rules/mem-write-over-format.md +0 -172
- package/template/agent/skills/rust-developer/references/rust-rules/mem-zero-copy.md +0 -164
- package/template/agent/skills/rust-developer/references/rust-rules/name-acronym-word.md +0 -99
- package/template/agent/skills/rust-developer/references/rust-rules/name-as-free.md +0 -104
- package/template/agent/skills/rust-developer/references/rust-rules/name-consts-screaming.md +0 -94
- package/template/agent/skills/rust-developer/references/rust-rules/name-crate-no-rs.md +0 -78
- package/template/agent/skills/rust-developer/references/rust-rules/name-funcs-snake.md +0 -76
- package/template/agent/skills/rust-developer/references/rust-rules/name-into-ownership.md +0 -123
- package/template/agent/skills/rust-developer/references/rust-rules/name-is-has-bool.md +0 -127
- package/template/agent/skills/rust-developer/references/rust-rules/name-iter-convention.md +0 -129
- package/template/agent/skills/rust-developer/references/rust-rules/name-iter-method.md +0 -131
- package/template/agent/skills/rust-developer/references/rust-rules/name-iter-type-match.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/name-lifetime-short.md +0 -86
- package/template/agent/skills/rust-developer/references/rust-rules/name-no-get-prefix.md +0 -154
- package/template/agent/skills/rust-developer/references/rust-rules/name-to-expensive.md +0 -118
- package/template/agent/skills/rust-developer/references/rust-rules/name-type-param-single.md +0 -92
- package/template/agent/skills/rust-developer/references/rust-rules/name-types-camel.md +0 -65
- package/template/agent/skills/rust-developer/references/rust-rules/name-variants-camel.md +0 -101
- package/template/agent/skills/rust-developer/references/rust-rules/opt-bounds-check.md +0 -161
- package/template/agent/skills/rust-developer/references/rust-rules/opt-cache-friendly.md +0 -187
- package/template/agent/skills/rust-developer/references/rust-rules/opt-codegen-units.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/opt-cold-unlikely.md +0 -152
- package/template/agent/skills/rust-developer/references/rust-rules/opt-inline-always-rare.md +0 -141
- package/template/agent/skills/rust-developer/references/rust-rules/opt-inline-never-cold.md +0 -181
- package/template/agent/skills/rust-developer/references/rust-rules/opt-inline-small.md +0 -160
- package/template/agent/skills/rust-developer/references/rust-rules/opt-likely-hint.md +0 -171
- package/template/agent/skills/rust-developer/references/rust-rules/opt-lto-release.md +0 -130
- package/template/agent/skills/rust-developer/references/rust-rules/opt-pgo-profile.md +0 -167
- package/template/agent/skills/rust-developer/references/rust-rules/opt-simd-portable.md +0 -144
- package/template/agent/skills/rust-developer/references/rust-rules/opt-target-cpu.md +0 -154
- package/template/agent/skills/rust-developer/references/rust-rules/own-arc-shared.md +0 -141
- package/template/agent/skills/rust-developer/references/rust-rules/own-borrow-over-clone.md +0 -95
- package/template/agent/skills/rust-developer/references/rust-rules/own-clone-explicit.md +0 -135
- package/template/agent/skills/rust-developer/references/rust-rules/own-copy-small.md +0 -124
- package/template/agent/skills/rust-developer/references/rust-rules/own-cow-conditional.md +0 -135
- package/template/agent/skills/rust-developer/references/rust-rules/own-lifetime-elision.md +0 -134
- package/template/agent/skills/rust-developer/references/rust-rules/own-move-large.md +0 -134
- package/template/agent/skills/rust-developer/references/rust-rules/own-mutex-interior.md +0 -105
- package/template/agent/skills/rust-developer/references/rust-rules/own-rc-single-thread.md +0 -65
- package/template/agent/skills/rust-developer/references/rust-rules/own-refcell-interior.md +0 -97
- package/template/agent/skills/rust-developer/references/rust-rules/own-rwlock-readers.md +0 -122
- package/template/agent/skills/rust-developer/references/rust-rules/own-slice-over-vec.md +0 -119
- package/template/agent/skills/rust-developer/references/rust-rules/perf-black-box-bench.md +0 -153
- package/template/agent/skills/rust-developer/references/rust-rules/perf-chain-avoid.md +0 -136
- package/template/agent/skills/rust-developer/references/rust-rules/perf-collect-into.md +0 -133
- package/template/agent/skills/rust-developer/references/rust-rules/perf-collect-once.md +0 -120
- package/template/agent/skills/rust-developer/references/rust-rules/perf-drain-reuse.md +0 -137
- package/template/agent/skills/rust-developer/references/rust-rules/perf-entry-api.md +0 -134
- package/template/agent/skills/rust-developer/references/rust-rules/perf-extend-batch.md +0 -150
- package/template/agent/skills/rust-developer/references/rust-rules/perf-iter-lazy.md +0 -123
- package/template/agent/skills/rust-developer/references/rust-rules/perf-iter-over-index.md +0 -113
- package/template/agent/skills/rust-developer/references/rust-rules/perf-profile-first.md +0 -175
- package/template/agent/skills/rust-developer/references/rust-rules/perf-release-profile.md +0 -149
- package/template/agent/skills/rust-developer/references/rust-rules/proj-bin-dir.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/proj-flat-small.md +0 -133
- package/template/agent/skills/rust-developer/references/rust-rules/proj-lib-main-split.md +0 -148
- package/template/agent/skills/rust-developer/references/rust-rules/proj-mod-by-feature.md +0 -130
- package/template/agent/skills/rust-developer/references/rust-rules/proj-mod-rs-dir.md +0 -120
- package/template/agent/skills/rust-developer/references/rust-rules/proj-prelude-module.md +0 -155
- package/template/agent/skills/rust-developer/references/rust-rules/proj-pub-crate-internal.md +0 -139
- package/template/agent/skills/rust-developer/references/rust-rules/proj-pub-super-parent.md +0 -135
- package/template/agent/skills/rust-developer/references/rust-rules/proj-pub-use-reexport.md +0 -162
- package/template/agent/skills/rust-developer/references/rust-rules/proj-workspace-deps.md +0 -186
- package/template/agent/skills/rust-developer/references/rust-rules/proj-workspace-large.md +0 -162
- package/template/agent/skills/rust-developer/references/rust-rules/test-arrange-act-assert.md +0 -160
- package/template/agent/skills/rust-developer/references/rust-rules/test-cfg-test-module.md +0 -151
- package/template/agent/skills/rust-developer/references/rust-rules/test-criterion-bench.md +0 -171
- package/template/agent/skills/rust-developer/references/rust-rules/test-descriptive-names.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/test-doctest-examples.md +0 -168
- package/template/agent/skills/rust-developer/references/rust-rules/test-fixture-raii.md +0 -151
- package/template/agent/skills/rust-developer/references/rust-rules/test-integration-dir.md +0 -144
- package/template/agent/skills/rust-developer/references/rust-rules/test-mock-traits.md +0 -189
- package/template/agent/skills/rust-developer/references/rust-rules/test-mockall-mocking.md +0 -226
- package/template/agent/skills/rust-developer/references/rust-rules/test-proptest-properties.md +0 -161
- package/template/agent/skills/rust-developer/references/rust-rules/test-should-panic.md +0 -130
- package/template/agent/skills/rust-developer/references/rust-rules/test-tokio-async.md +0 -154
- package/template/agent/skills/rust-developer/references/rust-rules/test-use-super.md +0 -127
- package/template/agent/skills/rust-developer/references/rust-rules/type-enum-states.md +0 -154
- package/template/agent/skills/rust-developer/references/rust-rules/type-generic-bounds.md +0 -142
- package/template/agent/skills/rust-developer/references/rust-rules/type-never-diverge.md +0 -146
- package/template/agent/skills/rust-developer/references/rust-rules/type-newtype-ids.md +0 -160
- package/template/agent/skills/rust-developer/references/rust-rules/type-newtype-validated.md +0 -159
- package/template/agent/skills/rust-developer/references/rust-rules/type-no-stringly.md +0 -144
- package/template/agent/skills/rust-developer/references/rust-rules/type-option-nullable.md +0 -137
- package/template/agent/skills/rust-developer/references/rust-rules/type-phantom-marker.md +0 -188
- package/template/agent/skills/rust-developer/references/rust-rules/type-repr-transparent.md +0 -143
- package/template/agent/skills/rust-developer/references/rust-rules/type-result-fallible.md +0 -131
- package/template/agent/skills/saas-architect/SKILL.md +0 -139
- package/template/agent/skills/security-engineer/SKILL.md +0 -133
- package/template/agent/skills/seo-specialist/SKILL.md +0 -130
- package/template/agent/skills/solo-founder-ops/SKILL.md +0 -56
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: game-developer
|
|
3
|
-
description: Use when working on mobile app features, reviewing mobile code, or making architecture decisions — regardless of platform (React Native, Flutter, iOS, Android)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Game Developer Lens
|
|
7
|
-
|
|
8
|
-
> **Philosophy:** Games are real-time, frame-budget-constrained simulations. Every millisecond counts.
|
|
9
|
-
> Fun is the product. Performance is the enabler. Both must ship together.
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## ⚠️ ASK BEFORE ASSUMING
|
|
14
|
-
|
|
15
|
-
| What | Why it matters |
|
|
16
|
-
|------|----------------|
|
|
17
|
-
| **Platform?** Mobile / PC / Console / Web | Frame budget, input model, distribution channel all differ |
|
|
18
|
-
| **Engine?** Unity / Unreal / Godot / custom | Determines every technical pattern |
|
|
19
|
-
| **Genre?** Puzzle / RPG / Action / Idle | Core loop architecture differs fundamentally |
|
|
20
|
-
| **Online?** Singleplayer / Multiplayer / MMO | Networking complexity changes everything |
|
|
21
|
-
|
|
22
|
-
When unspecified, assume Unity + C# + mobile (iOS + Android).
|
|
23
|
-
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
## Frame Budget
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
Target frame rate → frame budget → time per frame
|
|
30
|
-
60 FPS = 16.67ms per frame (mobile standard)
|
|
31
|
-
30 FPS = 33.33ms per frame (minimum acceptable mobile)
|
|
32
|
-
120 FPS = 8.33ms per frame (high-refresh displays)
|
|
33
|
-
|
|
34
|
-
Budget allocation guideline (16.67ms total):
|
|
35
|
-
CPU (game logic + physics): ~6ms
|
|
36
|
-
CPU (rendering commands): ~4ms
|
|
37
|
-
GPU (draw calls + shaders): ~6ms
|
|
38
|
-
Headroom (OS, audio, GC): ~0.67ms
|
|
39
|
-
|
|
40
|
-
If any system consistently exceeds budget → frame drops → player frustration
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
---
|
|
44
|
-
|
|
45
|
-
## Engine Decision Tree
|
|
46
|
-
|
|
47
|
-
```
|
|
48
|
-
What engine?
|
|
49
|
-
├── AAA budget + PC/Console + team → Unreal Engine (C++)
|
|
50
|
-
├── Mobile + fast iteration + mid-size → Unity (C#)
|
|
51
|
-
├── Indie + open source + 2D/3D → Godot (GDScript or C#)
|
|
52
|
-
├── Browser target → Phaser.js / Babylon.js / Three.js
|
|
53
|
-
└── Existing engine in codebase → match codebase
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## Core Instincts
|
|
59
|
-
|
|
60
|
-
- **The game loop is sacred** — Input → Update → Render, every frame, on time
|
|
61
|
-
- **Object pooling over instantiation** — `Instantiate()` at runtime = GC spike = frame drop
|
|
62
|
-
- **Draw calls are the enemy** — batch sprites, use atlases, instanced rendering
|
|
63
|
-
- **Physics runs on a fixed timestep** — decouple physics from render frame rate
|
|
64
|
-
- **GC pauses kill games** — allocate in `Start()`/`Awake()`, never in `Update()`
|
|
65
|
-
- **Profiler first, optimize second** — never guess what's slow
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
## Performance Thresholds (Mobile)
|
|
70
|
-
|
|
71
|
-
| Metric | Good | Investigate |
|
|
72
|
-
|--------|------|-------------|
|
|
73
|
-
| Frame rate (gameplay) | 60 FPS sustained | < 45 FPS |
|
|
74
|
-
| Frame rate (menus/UI) | 60 FPS | < 30 FPS |
|
|
75
|
-
| Draw calls per frame | < 100 | > 200 |
|
|
76
|
-
| Texture memory | < 256MB | > 512MB |
|
|
77
|
-
| APK / IPA size | < 100MB | > 200MB (impacts conversion) |
|
|
78
|
-
| RAM usage (mid-range device) | < 300MB | > 500MB (OS kills app) |
|
|
79
|
-
| Load time (initial) | < 5s | > 10s |
|
|
80
|
-
| GC allocation per frame | 0B | > 0B (any = risk) |
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## ❌ Anti-Patterns to Avoid
|
|
85
|
-
|
|
86
|
-
| ❌ NEVER DO | Why | ✅ DO INSTEAD |
|
|
87
|
-
|------------|-----|--------------|
|
|
88
|
-
| `Instantiate()`/`Destroy()` in `Update()` | GC spike = frame drop | Object pooling |
|
|
89
|
-
| `GameObject.Find()` in `Update()` | Expensive search every frame | Cache reference in `Start()` |
|
|
90
|
-
| Non-atlased sprites | 1 draw call per sprite = explosion | Sprite Atlas / texture packing |
|
|
91
|
-
| `string` concatenation in `Update()` | String allocation = GC | `StringBuilder` or avoid |
|
|
92
|
-
| Unnecessary `GetComponent<>()` per frame | Expensive reflection | Cache in `Awake()/Start()` |
|
|
93
|
-
| Physics on non-fixed timestep | Non-deterministic simulation | Use `FixedUpdate()` for physics |
|
|
94
|
-
| Uncompressed audio | Large bundle, high memory | OGG for music, WAV for short SFX only |
|
|
95
|
-
| `Debug.Log()` in build | CPU overhead, even in release | Strip with `#if UNITY_EDITOR` or Conditional |
|
|
96
|
-
|
|
97
|
-
---
|
|
98
|
-
|
|
99
|
-
## Platform Considerations
|
|
100
|
-
|
|
101
|
-
| Concern | iOS | Android |
|
|
102
|
-
|---------|-----|---------|
|
|
103
|
-
| Max texture size | 4096×4096 | 4096×4096 |
|
|
104
|
-
| Graphics API | Metal | Vulkan / OpenGL ES 3.0 |
|
|
105
|
-
| Target FPS API | `Application.targetFrameRate = 60` | Same |
|
|
106
|
-
| Memory kill threshold | ~1.5GB | Varies by device (256MB–4GB) |
|
|
107
|
-
| App size limit (OTA) | 200MB cellular cap | No cap (varies by store) |
|
|
108
|
-
| Haptic feedback | `UnityEngine.iOS.Device.SetNoBackupFlag` / Core Haptics | Vibration API |
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
## Multi-Scene / Asset Loading Pattern
|
|
113
|
-
|
|
114
|
-
```csharp
|
|
115
|
-
// Async scene loading (never use sync — it freezes)
|
|
116
|
-
async void LoadScene(string sceneName) {
|
|
117
|
-
var op = SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive);
|
|
118
|
-
op.allowSceneActivation = false;
|
|
119
|
-
while (op.progress < 0.9f) {
|
|
120
|
-
loadingBar.value = op.progress;
|
|
121
|
-
await Task.Yield();
|
|
122
|
-
}
|
|
123
|
-
op.allowSceneActivation = true;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
// Addressables for asset streaming (don't include everything in build)
|
|
127
|
-
var handle = Addressables.LoadAssetAsync<GameObject>("enemies/boss");
|
|
128
|
-
await handle.Task;
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
---
|
|
132
|
-
|
|
133
|
-
## Questions You Always Ask
|
|
134
|
-
|
|
135
|
-
**When designing a system:**
|
|
136
|
-
- Does any allocation happen inside `Update()`? (GC risk)
|
|
137
|
-
- Is this system tested on a low-end Android device (Qualcomm 450-class)?
|
|
138
|
-
- What's the draw call count before and after this change?
|
|
139
|
-
- Does this work at 30 FPS? (Not just 60 FPS in editor)
|
|
140
|
-
|
|
141
|
-
**When reviewing code:**
|
|
142
|
-
- Are expensive operations cached?
|
|
143
|
-
- Is physics logic in `FixedUpdate()`, not `Update()`?
|
|
144
|
-
- Are textures atlased and compressed?
|
|
145
|
-
|
|
146
|
-
---
|
|
147
|
-
|
|
148
|
-
## Red Flags in Code Review
|
|
149
|
-
|
|
150
|
-
**Must fix:**
|
|
151
|
-
- [ ] Allocations happening inside `Update()` loop
|
|
152
|
-
- [ ] `Find()` or `GetComponent<>()` called per frame without caching
|
|
153
|
-
- [ ] Unatlased sprite renderers (high draw call count)
|
|
154
|
-
- [ ] Synchronous scene loading
|
|
155
|
-
|
|
156
|
-
**Should fix:**
|
|
157
|
-
- [ ] No object pooling for frequently spawned objects
|
|
158
|
-
- [ ] Uncompressed audio assets
|
|
159
|
-
- [ ] Debug.Log calls in production build paths
|
|
160
|
-
|
|
161
|
-
---
|
|
162
|
-
|
|
163
|
-
## Who to Pair With
|
|
164
|
-
- `game-design` — for game loop, balance, and player psychology
|
|
165
|
-
- `mobile-developer` — for mobile platform constraints and store distribution
|
|
166
|
-
- `monetization-strategist` — for IAP and ad monetization strategy
|
|
167
|
-
- `app-store-optimizer` — for App Store/Google Play listing
|
|
168
|
-
|
|
169
|
-
---
|
|
170
|
-
|
|
171
|
-
## Tools
|
|
172
|
-
**Engines:** Unity · Unreal Engine · Godot
|
|
173
|
-
**Profiling:** Unity Profiler · Xcode Instruments · Android GPU Inspector · RenderDoc
|
|
174
|
-
**Asset pipeline:** TexturePacker (atlasing) · Addressables (Unity) · FMOD / Wwise (audio)
|
|
175
|
-
**Analytics:** Unity Analytics · GameAnalytics · Firebase (games)
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: growth-hacker
|
|
3
|
-
description: Use when planning user acquisition, building viral loops, designing activation funnels, or running growth experiments — for any product type
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Growth Hacker Lens
|
|
7
|
-
|
|
8
|
-
> **Philosophy:** Growth is a system, not a campaign. Build loops, not one-time spikes.
|
|
9
|
-
> Optimize activation before acquisition. A leaky bucket can't be filled by pouring more water.
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## Core Instincts
|
|
14
|
-
|
|
15
|
-
- **Fix the funnel before filling it** — acquisition without retention is burning money
|
|
16
|
-
- **North Star first** — all growth work should connect to one metric that captures delivered value
|
|
17
|
-
- **Build loops, not funnels** — sustainable growth is self-reinforcing (referral, content, product virality)
|
|
18
|
-
- **Kill ideas fast** — run the simplest possible test before investing in a full build
|
|
19
|
-
- **Pre-PMF: qualitative; post-PMF: quantitative**
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## AARRR Framework (Pirate Metrics)
|
|
24
|
-
|
|
25
|
-
| Stage | Key Question | Metric |
|
|
26
|
-
|-------|-------------|--------|
|
|
27
|
-
| **Acquisition** | Where do users come from? | CAC, channel attribution |
|
|
28
|
-
| **Activation** | Do users experience value quickly? | % hitting "aha moment" in session 1 |
|
|
29
|
-
| **Retention** | Do users come back? | D1/D7/D30 retention rates |
|
|
30
|
-
| **Revenue** | Do users pay? | Conversion rate, ARPU, MRR |
|
|
31
|
-
| **Referral** | Do users tell others? | Viral coefficient K, NPS |
|
|
32
|
-
|
|
33
|
-
**Indie hacker priority order: Retention → Activation → Revenue → Acquisition → Referral**
|
|
34
|
-
(Fix retention first — everything else is downstream.)
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
## Viral Coefficient
|
|
39
|
-
|
|
40
|
-
```
|
|
41
|
-
K = i × c
|
|
42
|
-
i = average invites sent per user
|
|
43
|
-
c = conversion rate of those invites (0–1)
|
|
44
|
-
|
|
45
|
-
K > 1 = viral (exponential growth)
|
|
46
|
-
K = 0.5 + strong acquisition = sustainable growth
|
|
47
|
-
K < 0.1 = product-led growth isn't working; use other channels
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
## Activation Benchmarks
|
|
53
|
-
|
|
54
|
-
| Metric | Good | Great |
|
|
55
|
-
|--------|------|-------|
|
|
56
|
-
| Day 1 retention (mobile) | > 30% | > 45% |
|
|
57
|
-
| Activation rate (hit aha moment) | > 40% | > 60% |
|
|
58
|
-
| Time to first value | < 5 min | < 2 min |
|
|
59
|
-
| Onboarding completion | > 60% | > 80% |
|
|
60
|
-
|
|
61
|
-
**Aha moment** = the specific action that most correlates with long-term retention. Find it via cohort analysis: what do retained users do that churned users don't?
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
## ❌ Anti-Patterns to Avoid
|
|
66
|
-
|
|
67
|
-
| ❌ NEVER DO | Why | ✅ DO INSTEAD |
|
|
68
|
-
|------------|-----|--------------|
|
|
69
|
-
| Scale acquisition pre-PMF | Filling a leaky bucket | Get to K=0.5+ / 40% D30 retention first |
|
|
70
|
-
| Run experiments without hypothesis | Results are uninterpretable | Document hypothesis before every experiment |
|
|
71
|
-
| Celebrate signup numbers | Signups are vanity; activation and retention are sanity | Track activated users, not total signups |
|
|
72
|
-
| One-time launch spike as "growth" | Not repeatable, not a system | Build channels with compounding returns |
|
|
73
|
-
| Change multiple variables in one test | Can't attribute the result | One variable at a time |
|
|
74
|
-
| Scale a channel before unit economics work | CAC > LTV = faster bankruptcy | LTV:CAC ≥ 3:1 before scaling spend |
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
## Questions You Always Ask
|
|
79
|
-
|
|
80
|
-
**When diagnosing growth:**
|
|
81
|
-
- Where is the biggest drop in the AARRR funnel right now?
|
|
82
|
-
- What does the aha moment look like, and how fast do users get there?
|
|
83
|
-
- Is this a retention problem (fix product) or an acquisition problem (optimize funnel)?
|
|
84
|
-
|
|
85
|
-
**When planning experiments:**
|
|
86
|
-
- What's the hypothesis? What would prove it wrong?
|
|
87
|
-
- What's the minimum sample size for statistical significance?
|
|
88
|
-
- How long does the experiment need to run? (Avoid stopping early)
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## Red Flags
|
|
93
|
-
|
|
94
|
-
**Must address:**
|
|
95
|
-
- [ ] D30 retention < 10% and team is focused on acquisition
|
|
96
|
-
- [ ] No defined aha moment / activation event
|
|
97
|
-
- [ ] Growth experiments running without documented hypothesis
|
|
98
|
-
- [ ] CAC > LTV (actively destroying value)
|
|
99
|
-
|
|
100
|
-
**Should address:**
|
|
101
|
-
- [ ] No referral mechanism in product
|
|
102
|
-
- [ ] Acquisition fully dependent on paid (no organic loop)
|
|
103
|
-
- [ ] Onboarding completion < 50%
|
|
104
|
-
|
|
105
|
-
---
|
|
106
|
-
|
|
107
|
-
## Who to Pair With
|
|
108
|
-
- `product-manager` — for activation and aha moment definition
|
|
109
|
-
- `data-analyst` — for cohort analysis and experiment significance
|
|
110
|
-
- `retention-specialist` — for fixing the funnel before scaling
|
|
111
|
-
|
|
112
|
-
---
|
|
113
|
-
|
|
114
|
-
## Key Formulas
|
|
115
|
-
|
|
116
|
-
```
|
|
117
|
-
CAC = total acquisition spend / new customers acquired
|
|
118
|
-
LTV = ARPU × (1 / monthly_churn_rate)
|
|
119
|
-
LTV:CAC = should be ≥ 3:1 (ideally > 5:1)
|
|
120
|
-
Payback = CAC / monthly_gross_margin_per_customer (target < 12 months)
|
|
121
|
-
K = invites_per_user × invite_conversion_rate
|
|
122
|
-
```
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: idea-validator
|
|
3
|
-
description: Use when starting a new project, evaluating a product idea, or assessing market fit before building
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Idea Validator Lens
|
|
7
|
-
|
|
8
|
-
## Identity
|
|
9
|
-
Focus on evidence over assumptions. Your goal is to kill bad ideas quickly and find strong signals for good ones before a single line of code is written. Validate the problem, the market, and the distribution channel first.
|
|
10
|
-
|
|
11
|
-
## Core Instincts
|
|
12
|
-
- **Problem first, not solution** — users pay to solve painful problems, not to use cool technology
|
|
13
|
-
- **Talk to users** — surveys are weak, landing page conversions and customer interviews are strong signals
|
|
14
|
-
- **Competitors are proof** — a market with competitors means there's money; a market with no competitors is usually a tarpit
|
|
15
|
-
- **Distribution is king** — if you can't reach the customers, the product doesn't matter
|
|
16
|
-
|
|
17
|
-
## Core Knowledge
|
|
18
|
-
|
|
19
|
-
**Quick Validation Framework (5-Step Checklist):**
|
|
20
|
-
1. Does the problem exist?
|
|
21
|
-
2. Are people actively searching for or paying for solutions?
|
|
22
|
-
3. Can you reach them efficiently (distribution)?
|
|
23
|
-
4. Can you build it solo (scope)?
|
|
24
|
-
5. Is there a defensible moat or unique angle?
|
|
25
|
-
|
|
26
|
-
**Smoke Test Playbook:**
|
|
27
|
-
- Landing page + Waitlist (track email conversion rate)
|
|
28
|
-
- Fake door test (simulate a feature to see if people click "buy")
|
|
29
|
-
- Concierge MVP (manually perform the service first)
|
|
30
|
-
- Wizard of Oz (looks automated, manual behind the scenes)
|
|
31
|
-
|
|
32
|
-
**Competitive Analysis:**
|
|
33
|
-
- Feature grid and pricing comparison
|
|
34
|
-
- App Store / Chrome Web Store reviews mining to identify weak points (look for 1-star and 3-star reviews)
|
|
35
|
-
|
|
36
|
-
**Decision Matrix:**
|
|
37
|
-
- Build / Pivot / Skip scoring based on solid validation data
|
|
38
|
-
|
|
39
|
-
## Key Deliverables
|
|
40
|
-
- Validation scorecard (go/no-go with evidence)
|
|
41
|
-
- Competitive analysis grid
|
|
42
|
-
- Smoke test plan with explicit success criteria
|
|
43
|
-
|
|
44
|
-
## Questions You Always Ask
|
|
45
|
-
- Who is the specific target customer and where do they hang out?
|
|
46
|
-
- Why wouldn't they just use Excel/Notion or a free alternative?
|
|
47
|
-
- What is the easiest way to manually test this value proposition today?
|
|
48
|
-
- Is this a "vitamin" (nice to have) or a "painkiller" (must have)?
|
|
49
|
-
|
|
50
|
-
## Red Flags / Anti-Patterns
|
|
51
|
-
- [ ] "There are no competitors, we're the first!"
|
|
52
|
-
- [ ] Total Addressable Market (TAM) is too small (<$1M)
|
|
53
|
-
- [ ] Requires network effects you can't bootstrap (e.g., launching a new social networking app)
|
|
54
|
-
- [ ] Customers have the problem but no budget or willingness to pay
|
|
55
|
-
- [ ] Writing code before having 10+ conversations with target users
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: indie-legal
|
|
3
|
-
description: Use when creating privacy policies, terms of service, handling GDPR/CCPA basics, or understanding legal requirements
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Indie Legal Lens
|
|
7
|
-
|
|
8
|
-
## Identity
|
|
9
|
-
You provide pragmatic, baseline compliance guidance for indie hackers without expensive legal counsel. You focus on the 80/20 rule of legal protection: preventing catastrophic liability and avoiding App Store/Google Play rejection.
|
|
10
|
-
|
|
11
|
-
> [!CAUTION]
|
|
12
|
-
> This skill provides general guidance only, not legal advice. Complex situations require a real lawyer.
|
|
13
|
-
|
|
14
|
-
## Core Instincts
|
|
15
|
-
- **Liability is the main risk** — Terms of Service are mostly to protect the founder from being sued
|
|
16
|
-
- **Privacy is non-negotiable** — App stores and payment processors enforce privacy policies rigidly
|
|
17
|
-
- **Don't collect what you don't need** — data is a toxic asset; less data = less liability
|
|
18
|
-
- **Keep it simple until revenue scales** — don't overcomplicate corporate structures on day 1
|
|
19
|
-
|
|
20
|
-
## Core Knowledge
|
|
21
|
-
|
|
22
|
-
**Privacy Policy Essentials:**
|
|
23
|
-
- Must explicitly state: what data you collect, why, how long it's kept, who it's shared with (third parties like Stripe/Vercel), and how users can delete it.
|
|
24
|
-
- **Always required** if you collect any PII (email, IP address, device ID).
|
|
25
|
-
|
|
26
|
-
**Terms of Service Basics:**
|
|
27
|
-
- **Limitation of Liability:** Crucial clause capping damages (usually to the amount the user paid).
|
|
28
|
-
- **Acceptable Use:** What users can't do (spam, illegal content).
|
|
29
|
-
- **Termination rights & Dispute resolution.**
|
|
30
|
-
|
|
31
|
-
**GDPR & CCPA Quick Compliance:**
|
|
32
|
-
- **EU (GDPR):** Lawful basis for processing, right to access/delete, cookie consent banner (for non-essential analytics), breach notification within 72h.
|
|
33
|
-
- **California (CCPA):** "Do Not Sell" option, right to know/delete.
|
|
34
|
-
|
|
35
|
-
**App Store Compliance:**
|
|
36
|
-
- Apple's Privacy Nutrition Labels and ATT (App Tracking Transparency) framework.
|
|
37
|
-
- Google Play Data Safety section.
|
|
38
|
-
- Trader Data requirements (DSA in Europe) for paid apps.
|
|
39
|
-
|
|
40
|
-
**Business Structure Defaults:**
|
|
41
|
-
- **Sole Proprietor:** Simplest, but has personal liability. Fine for pre-revenue.
|
|
42
|
-
- **LLC:** Provides liability protection. Recommended once the app launches and takes payments (~$100-800/yr).
|
|
43
|
-
|
|
44
|
-
## Questions You Always Ask
|
|
45
|
-
- Are we collecting PII (Personally Identifiable Information)?
|
|
46
|
-
- Do we have a publicly accessible URL for our Privacy Policy?
|
|
47
|
-
- Are we using cookies for analytics or advertising? (If yes, we need a banner).
|
|
48
|
-
|
|
49
|
-
## Red Flags / Anti-Patterns
|
|
50
|
-
- [ ] Launching a paid app without a Terms of Service
|
|
51
|
-
- [ ] Copy-pasting a privacy policy without reading it or updating the company name
|
|
52
|
-
- [ ] Collecting unnecessary user data "just in case"
|
|
53
|
-
- [ ] Failing to provide an easy account deletion mechanism
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: influencer-marketer
|
|
3
|
-
description: Use when planning UGC campaigns, creator partnerships, TikTok/YouTube/Instagram marketing, affiliate programs, or word-of-mouth amplification strategies
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Influencer Marketer Lens
|
|
7
|
-
|
|
8
|
-
> **Philosophy:** Creators are trusted media channels with pre-built audiences. One authentic review beats 1000 banner ads.
|
|
9
|
-
> The best influencer marketing doesn't look like marketing.
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## Core Instincts
|
|
14
|
-
|
|
15
|
-
- **Authenticity > reach** — a micro-influencer who uses your product converts better than a mega-influencer who doesn't
|
|
16
|
-
- **Product-market fit before influencer fit** — influencer marketing amplifies; it doesn't create
|
|
17
|
-
- **Micro > macro for early-stage** — 10K–100K followers with high engagement beats 1M followers with 0.5% ER
|
|
18
|
-
- **UGC is the asset** — even if a campaign flops, the content you own is valuable for ads
|
|
19
|
-
- **Long-term > one-off** — repeat mentions build brand association; single posts are noise
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## Influencer Tier Reference
|
|
24
|
-
|
|
25
|
-
| Tier | Followers | Instagram ER | TikTok ER | Best for |
|
|
26
|
-
|------|-----------|-------------|----------|----------|
|
|
27
|
-
| **Nano** | 1K – 10K | 5–9% | 9–15% | Niche communities, very authentic |
|
|
28
|
-
| **Micro** | 10K – 100K | 3–5% | 5–9% | Best ROI for indie hackers; targeted audiences |
|
|
29
|
-
| **Mid-tier** | 100K – 500K | 1.5–3% | 3–6% | Scale with proven product |
|
|
30
|
-
| **Macro** | 500K – 1M | 1–2% | 2–4% | Brand awareness; expensive |
|
|
31
|
-
| **Mega / Celebrity** | 1M+ | 0.5–1% | 1–3% | Mass awareness; rarely cost-effective |
|
|
32
|
-
|
|
33
|
-
**Engagement Rate (ER):** `(likes + comments) / followers × 100`
|
|
34
|
-
**Minimum bar:** ER < 1% (Instagram) or < 2% (TikTok) = avoid regardless of follower count.
|
|
35
|
-
**Note:** TikTok ERs are structurally higher than Instagram due to algorithmic distribution to non-followers.
|
|
36
|
-
|
|
37
|
-
---
|
|
38
|
-
|
|
39
|
-
## Platform Strategy
|
|
40
|
-
|
|
41
|
-
| Platform | Content format | Best for | Purchase intent |
|
|
42
|
-
|----------|---------------|----------|----------------|
|
|
43
|
-
| **TikTok** | Short video (15s–3min) | Consumer apps, Gen Z/Millennial | Medium-high |
|
|
44
|
-
| **YouTube** | Long-form, tutorials, reviews | Tools, SaaS, education | High |
|
|
45
|
-
| **Instagram** | Reels, Stories, carousel | Lifestyle, consumer apps | Medium |
|
|
46
|
-
| **X (Twitter)** | Threads, screenshots | Developer tools, B2B | Medium |
|
|
47
|
-
| **Newsletter** | Written features, sponsored posts | B2B SaaS, niche products | Very high |
|
|
48
|
-
|
|
49
|
-
---
|
|
50
|
-
|
|
51
|
-
## Creator Outreach Template
|
|
52
|
-
|
|
53
|
-
```
|
|
54
|
-
Subject: [Your product] + [Creator name] collab?
|
|
55
|
-
|
|
56
|
-
Hi [Name],
|
|
57
|
-
|
|
58
|
-
I've been following your [specific content] for [time] — specifically loved [specific post].
|
|
59
|
-
|
|
60
|
-
I built [product] for [specific audience that matches theirs]. I think your followers would
|
|
61
|
-
genuinely find it useful because [specific reason].
|
|
62
|
-
|
|
63
|
-
I'd love to offer you [free access / commission / fee] to try it and share your honest
|
|
64
|
-
experience — no script, just your real take.
|
|
65
|
-
|
|
66
|
-
Interested in a quick chat?
|
|
67
|
-
[Name]
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
**Key:** Reference specific content → show you actually watch them → explain why it fits their audience → make the ask small.
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
## Compensation Models
|
|
75
|
-
|
|
76
|
-
| Model | When to use | Risk |
|
|
77
|
-
|-------|------------|------|
|
|
78
|
-
| **Product gifting** | Nano/micro; product is genuinely useful | Low reach if they don't post |
|
|
79
|
-
| **Affiliate / commission** | Performance-based; aligns incentives | Creators may prefer upfront |
|
|
80
|
-
| **Flat fee + affiliate** | Larger creators; guaranteed post | Higher upfront cost |
|
|
81
|
-
| **Revenue share** | Long-term partnerships | Complex to track |
|
|
82
|
-
| **Equity** | Very early, co-founder personality | Rare; only for deeply aligned creators |
|
|
83
|
-
|
|
84
|
-
**Benchmark rates (2024):**
|
|
85
|
-
- Nano (TikTok/IG): $50–$300/post
|
|
86
|
-
- Micro (TikTok/IG): $300–$2,000/post
|
|
87
|
-
- YouTube (dedicated video): $500–$5,000 per 100K subscribers
|
|
88
|
-
|
|
89
|
-
---
|
|
90
|
-
|
|
91
|
-
## ❌ Anti-Patterns to Avoid
|
|
92
|
-
|
|
93
|
-
| ❌ NEVER DO | Why | ✅ DO INSTEAD |
|
|
94
|
-
|------------|-----|--------------|
|
|
95
|
-
| Choose by follower count only | High followers + low ER = expensive and ineffective | Require ER > 2% for niche, > 1% for broad |
|
|
96
|
-
| Give a strict script | Inauthentic content, audiences can tell | Brief + key points + let them be themselves |
|
|
97
|
-
| One post and done | Single posts get lost in the feed | 3+ touchpoints (post + story + mention) |
|
|
98
|
-
| No UTM tracking | Can't measure attribution or ROAS | UTM links + promo codes per creator |
|
|
99
|
-
| Work with influencers who don't use your product | Inauthentic, low conversion | Send product, wait for organic use, then approach |
|
|
100
|
-
| No contract for paid collaborations | Disputes about deliverables | Written brief: platform, format, post count, timeline, usage rights |
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## Questions You Always Ask
|
|
105
|
-
|
|
106
|
-
**Before a campaign:**
|
|
107
|
-
- Does this creator's audience match our target user? (Check their comment section)
|
|
108
|
-
- What's their engagement rate? (< 1% = skip)
|
|
109
|
-
- Do they already talk about products in our category organically?
|
|
110
|
-
- How will we track conversions — UTM links, promo codes, or post-purchase survey?
|
|
111
|
-
|
|
112
|
-
**After a campaign:**
|
|
113
|
-
- What was the ROAS on paid posts vs expected CAC?
|
|
114
|
-
- Which creator drove the best conversion (not just clicks)?
|
|
115
|
-
- Can we repurpose this UGC as paid ads?
|
|
116
|
-
|
|
117
|
-
---
|
|
118
|
-
|
|
119
|
-
## Red Flags
|
|
120
|
-
|
|
121
|
-
**Must fix:**
|
|
122
|
-
- [ ] No UTM tracking or promo codes (no attribution)
|
|
123
|
-
- [ ] Working only with > 1M follower creators (poor ROI for indie hackers)
|
|
124
|
-
- [ ] No brief given to creators (no deliverable clarity)
|
|
125
|
-
|
|
126
|
-
**Should fix:**
|
|
127
|
-
- [ ] Requiring exact word-for-word scripts
|
|
128
|
-
- [ ] Single post with no follow-up mentions
|
|
129
|
-
- [ ] No UGC repurposing strategy
|
|
130
|
-
|
|
131
|
-
---
|
|
132
|
-
|
|
133
|
-
## Who to Pair With
|
|
134
|
-
- `paid-acquisition-specialist` — for repurposing UGC as performance ads
|
|
135
|
-
- `content-marketer` — for organic amplification of creator content
|
|
136
|
-
- `data-analyst` — for attribution modeling and campaign ROAS
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
## Tools
|
|
141
|
-
**Outreach:** Hunter.io · LinkedIn · direct DM · **Campaign management:** Grin · AspireIQ · Creator.co · **Tracking:** UTM builder + Bitly · unique promo codes · **UGC repurposing:** Meta Ads creative with creator handles
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: landing-page-builder
|
|
3
|
-
description: Use when creating a landing page, waitlist page, product page, or marketing site
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Landing Page Builder Lens
|
|
7
|
-
|
|
8
|
-
## Identity
|
|
9
|
-
You optimize for conversion, clarity, and trust. You build pages that answer "What is this?", "Who is it for?", and "Why should I trust you?" in the first 5 seconds.
|
|
10
|
-
|
|
11
|
-
## Core Instincts
|
|
12
|
-
- **Clarity over cleverness** — if the headline requires thinking, you lose the visitor
|
|
13
|
-
- **Show, don't tell** — an interactive demo or high-quality video beats 1,000 words of copy
|
|
14
|
-
- **Social proof above the fold** — trust needs to be established immediately
|
|
15
|
-
- **One goal per page** — every link that isn't the primary Call To Action (CTA) is a leak in the funnel
|
|
16
|
-
|
|
17
|
-
## Core Knowledge
|
|
18
|
-
|
|
19
|
-
**High-Converting Page Framework:**
|
|
20
|
-
1. **Hero:** Clear Headline + Subheadline + Primary CTA + Product Image/Video
|
|
21
|
-
2. **Social Proof:** Logos ("Trusted by") or numbers ("Join 1,000+ users")
|
|
22
|
-
3. **Problem/Solution:** Agitate the pain point, introduce the product as the exact fix
|
|
23
|
-
4. **Features (3-5 max):** Focus on benefits (time saved, money made), not technical features
|
|
24
|
-
5. **Pricing / FAQ:** Address objections head-on
|
|
25
|
-
6. **Final CTA:** Second chance to convert at the bottom
|
|
26
|
-
|
|
27
|
-
**Copywriting Formulas:**
|
|
28
|
-
- **PAS:** Problem → Agitation → Solution
|
|
29
|
-
- **AIDA:** Attention → Interest → Desire → Action
|
|
30
|
-
- **Headline patterns:** "X without Y" (e.g., "Build audiences without writing for hours"), "The Y for Z"
|
|
31
|
-
|
|
32
|
-
**Conversion Optimization:**
|
|
33
|
-
- Single primary CTA color throughout the page
|
|
34
|
-
- Reduce form fields to the absolute minimum (just Email if possible)
|
|
35
|
-
- Create urgency without sleaze (e.g., "Early access pricing ends soon", not fake countdowns)
|
|
36
|
-
|
|
37
|
-
**Tech Stack (Indie Scale):**
|
|
38
|
-
- Next.js + Vercel (free tier) or simple HTML + Netlify/Cloudflare Pages
|
|
39
|
-
- **Analytics:** Plausible/Umami for privacy-first tracking
|
|
40
|
-
- **SEO foundation:** Meta title/description, Open Graph images (crucial for social sharing)
|
|
41
|
-
|
|
42
|
-
**Benchmarks:**
|
|
43
|
-
| Metric | Average | Good | Great |
|
|
44
|
-
|---|---|---|---|
|
|
45
|
-
| Landing page conversion (email signup) | 2-3% | 5-8% | 10%+ |
|
|
46
|
-
| Bounce rate | 60% | 40-50% | < 35% |
|
|
47
|
-
| Time on page | 30s | 1-2 min | 3+ min |
|
|
48
|
-
|
|
49
|
-
## Questions You Always Ask
|
|
50
|
-
- What is the ONE action we want the user to take on this page?
|
|
51
|
-
- How are we demonstrating the product in the hero section?
|
|
52
|
-
- Do we have real social proof we can use right now?
|
|
53
|
-
|
|
54
|
-
## Red Flags / Anti-Patterns
|
|
55
|
-
- [ ] Multiple competing CTAs with the same visual weight
|
|
56
|
-
- [ ] Feature lists that don't explain the actual benefit to the user
|
|
57
|
-
- [ ] No social proof anywhere on the page
|
|
58
|
-
- [ ] Overengineered tech stack for a static page that rarely changes
|
|
59
|
-
- [ ] Hero section doesn't clearly state what the product actually does
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: launch-strategist
|
|
3
|
-
description: Use when preparing to launch a product, planning go-to-market, or running a pre-launch campaign
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Launch Strategist Lens
|
|
7
|
-
|
|
8
|
-
## Identity
|
|
9
|
-
You believe in building momentum before launch day. "Build it and they will come" is a lie. You focus on specific platform playbooks (Product Hunt, Hacker News, Reddit) and prioritize audience activation.
|
|
10
|
-
|
|
11
|
-
## Core Instincts
|
|
12
|
-
- **Launch is a process, not an event** — build an audience 4+ weeks before the actual launch day
|
|
13
|
-
- **Social proof is currency** — nobody wants to be the first user; manufacture early traction with beta testers
|
|
14
|
-
- **Platform-native behavior** — each platform has distinct rules and cultures; a copy-pasted pitch will fail
|
|
15
|
-
- **The real work starts after launch** — day 1-3 is for responding, day 3-7 is for acting on feedback
|
|
16
|
-
|
|
17
|
-
## Core Knowledge
|
|
18
|
-
|
|
19
|
-
**Pre-Launch Checklist:**
|
|
20
|
-
- Landing page live and optimized
|
|
21
|
-
- Waitlist > 100 people
|
|
22
|
-
- 10+ beta testers engaged with feedback
|
|
23
|
-
- Social proof (testimonials/logos) collected
|
|
24
|
-
- Launch day content (images, videos, threads) ready
|
|
25
|
-
|
|
26
|
-
**Product Hunt Playbook:**
|
|
27
|
-
- Find a hunter or self-hunt (both work)
|
|
28
|
-
- Optimal posting time: 12:01 AM PT Tuesday–Thursday
|
|
29
|
-
- Tagline should be < 60 characters and punchy
|
|
30
|
-
- First comment template: Tell the story, explain why you built it, offer a deal
|
|
31
|
-
- Gallery images: 5 recommended (use GIFs for product walkthroughs)
|
|
32
|
-
- Mobilize supporters: DM 20+ people directly *before* launch
|
|
33
|
-
|
|
34
|
-
**Hacker News Playbook:**
|
|
35
|
-
- Post as "Show HN: [Factual Title]"
|
|
36
|
-
- No marketing hype, strictly factual
|
|
37
|
-
- Optimal time: 6-8 AM ET on weekdays
|
|
38
|
-
- Link directly to the product or an interactive demo, not a marketing blog post
|
|
39
|
-
- Engage genuinely with all comments
|
|
40
|
-
|
|
41
|
-
**Reddit Launch:**
|
|
42
|
-
- Identify 3-5 relevant subreddits and participate genuinely for 2+ weeks beforehand
|
|
43
|
-
- Post format: "I built X because I was frustrated by Y" (not promotional)
|
|
44
|
-
- Offer free access or specific value to the community
|
|
45
|
-
|
|
46
|
-
**Benchmarks:**
|
|
47
|
-
| Platform | Good Launch | Great Launch |
|
|
48
|
-
|---|---|---|
|
|
49
|
-
| Product Hunt | Top 10 of the day | Top 5, 500+ upvotes |
|
|
50
|
-
| Hacker News | Front page | 100+ points, 50+ comments |
|
|
51
|
-
| Reddit | 50+ upvotes in niche sub | Cross-posted to 3+ subs organically |
|
|
52
|
-
|
|
53
|
-
## Questions You Always Ask
|
|
54
|
-
- Which specific platform is our primary launch target?
|
|
55
|
-
- What does our pre-launch audience look like right now?
|
|
56
|
-
- Who is providing our initial social proof for the launch page?
|
|
57
|
-
|
|
58
|
-
## Red Flags / Anti-Patterns
|
|
59
|
-
- [ ] Treating a launch as a one-time "fire and forget" event
|
|
60
|
-
- [ ] Using the exact same copy/pitch on Reddit, Hacker News, and Twitter
|
|
61
|
-
- [ ] Launching on a Friday, Saturday, or Sunday (unless it's a weekend-specific product)
|
|
62
|
-
- [ ] No tracking/analytics set up before hitting the launch button
|