forgetrail 0.3.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.
Files changed (98) hide show
  1. package/CONTINUATION_PROMPT.md +42 -0
  2. package/INITIAL_PROMPT.md +214 -0
  3. package/LICENSE +201 -0
  4. package/README.md +198 -0
  5. package/TRACKING_SCHEMA.md +162 -0
  6. package/TRY_FORGETRAIL.md +78 -0
  7. package/WORKFLOW.md +921 -0
  8. package/content/AGENT_INTEGRATION_claude.md +38 -0
  9. package/content/AGENT_INTEGRATION_cursor.md +53 -0
  10. package/content/AGENT_INTEGRATION_generic.md +50 -0
  11. package/content/AGENT_INTEGRATION_grok.md +82 -0
  12. package/content/DEV_AUTOMATION_SCRIPTS.md +103 -0
  13. package/content/FORGETRAIL_LITE.md +1202 -0
  14. package/content/FORGETRAIL_LITE_UPDATES.md +13 -0
  15. package/content/FORGETRAIL_PROGRESS.md +26 -0
  16. package/content/GENESIS_SPEC_PROMPT.md +70 -0
  17. package/content/GENESIS_STUB.md +18 -0
  18. package/content/GREENFIELD_INTAKE.md +76 -0
  19. package/content/KICKOFF_WITHOUT_MCP.md +16 -0
  20. package/content/LITE_WORKFLOW_TRACKING.json +42 -0
  21. package/content/NEW_PROJECT_BOOTSTRAP.md +180 -0
  22. package/content/ONE_CLICK_DEV_SETUP.md +142 -0
  23. package/content/PLAN_MODE_PATTERNS.md +43 -0
  24. package/content/POCKETBASE_SCHEMA_SCRIPT.md +52 -0
  25. package/content/POST_BOOTSTRAP_USER_MESSAGE.md +51 -0
  26. package/content/SCAFFOLD_INSTALL.json +110 -0
  27. package/content/SESSION_RESUME_MCP.md +35 -0
  28. package/content/SYSTEM_HEALTH_CHECKS.md +131 -0
  29. package/content/USER_REPLY_FORMAT.md +41 -0
  30. package/content/cursor-rules/forgetrail-lessons-gate.mdc +30 -0
  31. package/content/cursor-rules/forgetrail-lessons-mcp.mdc +24 -0
  32. package/content/cursor-rules/forgetrail-no-trailer.mdc +49 -0
  33. package/content/cursor-rules/forgetrail-phase-status.mdc +61 -0
  34. package/content/cursor-rules/forgetrail-updates-log.mdc +30 -0
  35. package/content/cursor-rules/spec-completion.mdc +33 -0
  36. package/content/cursor-rules/specs-and-todo.mdc +26 -0
  37. package/content/cursor-rules/url-host-matching.mdc +31 -0
  38. package/content/cursor-rules/us-english.mdc +9 -0
  39. package/content/cursor-rules/user-facing-content.mdc +31 -0
  40. package/content/examples/GENESIS_SAMPLE_mars-habitat-roster.md +154 -0
  41. package/content/forgetrail-workspace-README.md +43 -0
  42. package/content/scripts/forgetrail-dev-launcher.mjs +208 -0
  43. package/content/scripts/forgetrail-env.mjs +51 -0
  44. package/content/scripts/setup-ollama.mjs +207 -0
  45. package/content/scripts/setup-pocketbase.mjs +133 -0
  46. package/content/scripts/test-ollama.mjs +71 -0
  47. package/content/scripts/test-pocketbase.mjs +110 -0
  48. package/content/skills/forgetrail/SKILL.md +92 -0
  49. package/docs/AUTOMATED_TESTING.md +269 -0
  50. package/docs/BLACK_HAT_REPORT.md +143 -0
  51. package/docs/BRAND_AND_PRODUCT.md +381 -0
  52. package/docs/BUGS.md +62 -0
  53. package/docs/BUSINESS_PLAN.md +256 -0
  54. package/docs/CODE_QUALITY.md +170 -0
  55. package/docs/CONTEXT_PROMPT.md +357 -0
  56. package/docs/DEPLOYMENT.md +181 -0
  57. package/docs/DESIGN_SYSTEM.md +414 -0
  58. package/docs/DEV_ESTIMATE.md +127 -0
  59. package/docs/FORGETRAIL_RENAME.md +193 -0
  60. package/docs/IDEAS.md +19 -0
  61. package/docs/MARKETING_GROWTH.md +301 -0
  62. package/docs/NAMING_EXPLORATION.md +406 -0
  63. package/docs/NPM.md +98 -0
  64. package/docs/PHASE_1_BRIEF.md +161 -0
  65. package/docs/README.md +75 -0
  66. package/docs/SPEC_FEATURE_TEMPLATE.md +155 -0
  67. package/docs/SPEC_UI_CHROME_NAV_TEMPLATE.md +48 -0
  68. package/docs/TECHNICAL_REFERENCE.md +836 -0
  69. package/docs/TEST_PLAN.md +467 -0
  70. package/docs/TODO.md +125 -0
  71. package/package.json +68 -0
  72. package/prompts/black-hat-audit.md +235 -0
  73. package/prompts/brand-copy-edit-pass.md +55 -0
  74. package/prompts/cialdini-marketing-audit.md +141 -0
  75. package/prompts/competitor-deep-dive.md +201 -0
  76. package/prompts/docs-alignment-audit.md +108 -0
  77. package/prompts/engineering-skill-library.md +75 -0
  78. package/prompts/landing-page-rewrite.md +63 -0
  79. package/prompts/microcopy-centralization.md +128 -0
  80. package/prompts/panel-usability-audit.md +197 -0
  81. package/prompts/personal-beta-outreach.md +195 -0
  82. package/prompts/pre-launch-audit.md +148 -0
  83. package/prompts/product-feedback-to-spec.md +76 -0
  84. package/prompts/propagate-to-forgetrail.md +315 -0
  85. package/prompts/user-facing-content-sync-audit.md +200 -0
  86. package/prompts/ux-cohesion-audit.md +165 -0
  87. package/scripts/ensure-lease.mjs +23 -0
  88. package/scripts/forgetrail-cli.mjs +85 -0
  89. package/scripts/install-forgetrail-lite.mjs +11 -0
  90. package/scripts/install-forgetrail.mjs +11 -0
  91. package/scripts/install-lib.mjs +115 -0
  92. package/scripts/install.mjs +163 -0
  93. package/scripts/link-global.mjs +100 -0
  94. package/scripts/mcp-lib.mjs +177 -0
  95. package/scripts/mcp-status.mjs +155 -0
  96. package/scripts/publish-gate.mjs +110 -0
  97. package/scripts/rename-to-forgetrail.mjs +273 -0
  98. package/workflow_tracking.json +124 -0
package/docs/README.md ADDED
@@ -0,0 +1,75 @@
1
+ # [App Name]
2
+
3
+ *[One-line description. What it does, who it's for.]*
4
+
5
+ *Instructions: Create this during Phase 2 (Scaffolding). Keep it focused on "how to get running" for a new developer. Feature documentation belongs in TECHNICAL_REFERENCE.md, not here.*
6
+
7
+ ## Setup
8
+
9
+ ### Prerequisites
10
+
11
+ - [Runtime]: [version] (e.g., Node.js 18+)
12
+ - [Package manager]: [version] (e.g., pnpm 8+)
13
+ - [Database]: [version] (e.g., PocketBase 0.23+)
14
+ - [Other]: [if applicable]
15
+
16
+ ### Installation
17
+
18
+ ```bash
19
+ # Clone the repo
20
+ git clone [repo-url]
21
+ cd [project-name]
22
+
23
+ # Install dependencies
24
+ [package-manager] install
25
+
26
+ # Set up environment
27
+ cp .env.example .env
28
+ # Edit .env with your values (see Environment Variables below)
29
+
30
+ # Start development server
31
+ [package-manager] dev
32
+ ```
33
+
34
+ ### Environment Variables
35
+
36
+ | Variable | Required | Description |
37
+ |----------|----------|-------------|
38
+ | [VAR] | [yes/no] | [what it does, where to get the value] |
39
+
40
+ ## Project Structure
41
+
42
+ ```
43
+ [project-root]/
44
+ src/
45
+ lib/
46
+ components/ [UI components]
47
+ server/ [Backend services]
48
+ types/ [TypeScript types]
49
+ routes/
50
+ api/ [API endpoints]
51
+ [pages]/ [App pages]
52
+ static/ [Static assets]
53
+ docs/ [Project documentation]
54
+ ```
55
+
56
+ ## Features
57
+
58
+ | Feature | Description | Location |
59
+ |---------|-------------|----------|
60
+ | [Feature] | [What it does] | [Where in the app] |
61
+
62
+ ## Tech Stack
63
+
64
+ - **Framework:** [name + version]
65
+ - **Language:** [name]
66
+ - **Styling:** [name]
67
+ - **Database:** [name]
68
+ - **AI:** [name, or "none"]
69
+
70
+ ## Documentation
71
+
72
+ - [TECHNICAL_REFERENCE.md](docs/TECHNICAL_REFERENCE.md) - How features work
73
+ - [BRAND_AND_PRODUCT.md](docs/BRAND_AND_PRODUCT.md) - Positioning and messaging
74
+ - [DEPLOYMENT.md](docs/DEPLOYMENT.md) - Production deployment
75
+ - [TODO.md](docs/TODO.md) - Feature backlog
@@ -0,0 +1,155 @@
1
+ # [Feature name] — feature spec
2
+
3
+ _Copy into your app repo as `specs/[feature-name].md` (kebab-case). Fill bracketed placeholders. Delete guidance blockquotes before locking the draft if you want a lean file. For MCP: `getTemplate({ name: "SPEC_FEATURE_TEMPLATE" })`._
4
+
5
+ **Spec kind:** `[Delivery | Canonical reference]`
6
+ **Status:** `[Draft | Partial | Implemented | Canonical; …]`
7
+ **Date:** `[YYYY-MM-DD]`
8
+ **Related:** `[TODO.md item, PHASE_1_BRIEF, other specs, issues]`
9
+ **Surfaces (optional):** `[components, routes, scripts this touches]`
10
+
11
+ > 🔧 **Guidance:** Use **Delivery** for time-boxed feature work (lifecycle: `specs/` → `partial/` → `completed/`). Use **Canonical reference** only for living catalogs that stay in `specs/canonical/` and never move for “done.” See ForgeTrail WORKFLOW.md Phase 4 and `.cursor/rules/specs-and-todo.mdc` when present.
12
+
13
+ > 🔧 **Lite cut:** For a small change, keep header + §1–§3 + §5 (proposed behavior only) + §8 + §9. Skip data/API/UI subsections that do not apply. Still require testable acceptance criteria.
14
+
15
+ ---
16
+
17
+ ## 1. Problem
18
+
19
+ **What is painful today:**
20
+
21
+
22
+ **Friction / current workaround (if any):**
23
+
24
+
25
+ ---
26
+
27
+ ## 2. Goals
28
+
29
+ 1.
30
+ 2.
31
+ 3.
32
+
33
+ ### Non-goals
34
+
35
+ _What this pass will not do. Prevents scope creep._
36
+
37
+ -
38
+ -
39
+
40
+ ---
41
+
42
+ ## 3. Background / current state
43
+
44
+ _Optional. What exists today (code, data, UX) that the builder must know. Link files; do not paste large dumps._
45
+
46
+
47
+ ---
48
+
49
+ ## 4. Core concepts / definitions
50
+
51
+ _Optional. Domain terms, enums, or mental model unique to this feature._
52
+
53
+
54
+ ---
55
+
56
+ ## 5. Proposed approach / Design
57
+
58
+ _Prefer **what** the system does over **how** to implement it, unless a format or existing module forces a path. Delete subsections that do not apply._
59
+
60
+ ### 5.1 Behavior
61
+
62
+ _When the user does X, the system does Y. Step-by-step or bullets._
63
+
64
+
65
+ ### 5.2 Data model
66
+
67
+ _Entities, fields, migrations, PocketBase collections, local storage keys, etc._
68
+
69
+
70
+ ### 5.3 API / integrations
71
+
72
+ _Routes, webhooks, LLM calls, external APIs, env vars._
73
+
74
+
75
+ ### 5.4 UI / UX
76
+
77
+ _Surfaces, empty/loading/error states, copy notes, a11y._
78
+
79
+
80
+ ### 5.5 Files (optional)
81
+
82
+ | New | Modified |
83
+ | --- | -------- |
84
+ | | |
85
+
86
+ ---
87
+
88
+ ## 6. Edge cases and risks
89
+
90
+ -
91
+ -
92
+
93
+ | Risk | Mitigation |
94
+ | ---- | ---------- |
95
+ | | |
96
+
97
+ ---
98
+
99
+ ## 7. Milestones / phasing (optional)
100
+
101
+ | Milestone | Outcome |
102
+ | --------- | ------- |
103
+ | M1 | Smallest usable slice |
104
+ | M2 | |
105
+
106
+ ---
107
+
108
+ ## 8. Acceptance criteria
109
+
110
+ _Testable. Prefer “Given / when / then” or checkbox style. The feature is not done until these pass._
111
+
112
+ 1. Given …, when …, then …
113
+ 2. Given …, when …, then …
114
+
115
+ ---
116
+
117
+ ## 9. Open questions
118
+
119
+ | # | Question | Blocking? | Owner |
120
+ | - | -------- | --------- | ----- |
121
+ | 1 | | yes/no | |
122
+
123
+ ---
124
+
125
+ ## 10. Decisions (optional)
126
+
127
+ _Lock choices here (and mirror major ones into `.forgetrail/workflow_tracking.json` → `decisions[]` when they are architectural)._
128
+
129
+ **D1.**
130
+
131
+
132
+ ---
133
+
134
+ ## Progress (while Partial)
135
+
136
+ _Date-stamped notes while work is in `specs/partial/`. Remove or fold into Implementation summary when completed._
137
+
138
+ - `[YYYY-MM-DD]:` …
139
+
140
+ ---
141
+
142
+ ## Implementation summary
143
+
144
+ _Required when moving a **Delivery** spec to `specs/completed/`. Leave empty until then._
145
+
146
+ **Implemented:** `[YYYY-MM-DD]`
147
+
148
+ 1. …
149
+ 2. …
150
+
151
+ **Verification:** `[e.g. pnpm check / test / manual walkthrough]`
152
+
153
+ ---
154
+
155
+ > 💡 **Lesson learned:** Specs are session anchors. When the agent context resets, a filled spec plus `TODO.md` beats rediscovering intent from chat. Write the spec **before** multi-file implementation; move it to `partial/` when work starts; append this summary and move to `completed/` when acceptance criteria are met.
@@ -0,0 +1,48 @@
1
+ # Spec: UI Chrome, Layout & Nav Flyouts (template)
2
+
3
+ _Copy this file into your app as e.g. `docs/SPEC_UI_CHROME_NAV.md` when you ship substantial nav, typography, or nested-menu work. Fill `[BRACKETED]` placeholders and remove this header._
4
+
5
+ **Purpose:** Capture **invariants** for typography roles, app shell height, interactive rounding, and nested dropdown flyouts so future sessions do not re-litigate the same layout and hover bugs.
6
+
7
+ ---
8
+
9
+ ## Typography
10
+
11
+ - **Chrome / UI:** `[sans stack]` — nav, filters, column headers, short labels.
12
+ - **Reading / long-form:** `[serif or alternate stack]` — `[where it applies: e.g. narrative panels, prep content]`.
13
+
14
+ ---
15
+
16
+ ## App shell
17
+
18
+ - Outer: `[e.g. flex flex-col h-screen overflow-hidden]`
19
+ - Nav: `shrink-0`
20
+ - Main: `flex-1 min-h-0` + scroll **inside** main where needed
21
+ **Invariant:** Avoid `[calc(100vh − X)]` unless `[nav height]` is verified per breakpoint.
22
+
23
+ ---
24
+
25
+ ## Interactive controls
26
+
27
+ - Default radius for buttons/inputs/pills: `[e.g. rounded-lg]`
28
+ - Document exceptions (cards, modals) explicitly.
29
+
30
+ ---
31
+
32
+ ## Nested menu flyouts
33
+
34
+ | Topic | Rule |
35
+ |-------|------|
36
+ | Shared chrome | One CSS class for surface/border/shadow on secondary panels |
37
+ | Padding context | `[Describe: padded vs full-width menu rows]` — `absolute` children measure from different boxes; test gaps side by side |
38
+ | Large panels | Center vertically on trigger + `max-height` + internal scroll; do not clip off-screen with `bottom: 0` only |
39
+ | Hover state | Stable **id** per flyout; re-enter same id → cancel timers only; reset all when **parent menu** closes |
40
+ | Anti-pattern | Do not clear all flyouts on every `mouseenter` |
41
+
42
+ ---
43
+
44
+ ## Revision history
45
+
46
+ | Date | Notes |
47
+ |------|--------|
48
+ | `[ISO date]` | Initial spec |