@appsforgood/next-supabase-kit 0.4.2 → 0.4.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/CHANGELOG.md +10 -0
- package/README.md +2 -1
- package/UPGRADE.md +12 -0
- package/USER_GUIDE.html +9 -2
- package/USER_GUIDE.md +1 -0
- package/dist/index.js +319 -242
- package/dist/index.js.map +1 -1
- package/examples/next-supabase-installed/.antigravity/runtime-skills/deslop/SKILL.md +7 -1
- package/examples/next-supabase-installed/.antigravity/runtime-skills/frontend-design/SKILL.md +3 -1
- package/examples/next-supabase-installed/.antigravity/runtime-skills/planning/SKILL.md +1 -1
- package/examples/next-supabase-installed/.antigravity/runtime-skills/testing-qa/SKILL.md +2 -0
- package/examples/next-supabase-installed/.cursor/skills/deslop/SKILL.md +7 -1
- package/examples/next-supabase-installed/.cursor/skills/frontend-design/SKILL.md +3 -1
- package/examples/next-supabase-installed/.cursor/skills/planning/SKILL.md +1 -1
- package/examples/next-supabase-installed/.cursor/skills/testing-qa/SKILL.md +2 -0
- package/examples/next-supabase-installed/USER_GUIDE.html +9 -2
- package/examples/next-supabase-installed/USER_GUIDE.md +1 -0
- package/examples/next-supabase-installed/skills/deslop/SKILL.md +7 -1
- package/examples/next-supabase-installed/skills/frontend-design/SKILL.md +3 -1
- package/examples/next-supabase-installed/skills/planning/SKILL.md +1 -1
- package/examples/next-supabase-installed/skills/testing-qa/SKILL.md +2 -0
- package/package.json +1 -1
- package/skills/deslop/SKILL.md +7 -1
- package/skills/frontend-design/SKILL.md +3 -1
- package/skills/planning/SKILL.md +1 -1
- package/skills/testing-qa/SKILL.md +2 -0
|
@@ -38,7 +38,7 @@ Second pass: re-read the rewrite. If the same tell remains, rewrite the paragrap
|
|
|
38
38
|
|
|
39
39
|
## Visual P0s — fail if still on screen
|
|
40
40
|
|
|
41
|
-
These are the 2026
|
|
41
|
+
These are the 2026 flat AI/SaaS chrome cluster (same family as accent-border cards, glow rails, and card soup). One is a smell. Two or more is a reject. A pick-list row or status well with a left stroke is already a fail.
|
|
42
42
|
|
|
43
43
|
- Purple-to-blue (or indigo) gradient hero, or gradient-clipped headline type
|
|
44
44
|
- Inter / Roboto / default shadcn zinc as the whole identity
|
|
@@ -48,6 +48,12 @@ These are the 2026 convergence cluster. One is a smell. Two or more is a reject.
|
|
|
48
48
|
- Acid green or neon vermilion on near-black used as decoration, not meaning
|
|
49
49
|
- Lucide Sparkles / Zap as the product metaphor
|
|
50
50
|
- Fake dashboard metrics or DiceBear avatars
|
|
51
|
+
- Left accent bars / left-hand borderlines on selected rows, list items, cards, or success/error/warn wells (the “colored stroke on the left edge” pattern)
|
|
52
|
+
- Thick one-sided colored borders, glow rails, neon strokes, or gradient borders used as the main state cue
|
|
53
|
+
|
|
54
|
+
Selection must use radio/checkbox + light row tint (or weight/space) only. Status wells may use a flat tint fill. No `border-left` accent, no inset bar, no vertical rail as decoration. Keep one accent for the primary CTA, not as a row edge.
|
|
55
|
+
|
|
56
|
+
**Acceptance fixture:** a pick-list row and a “verified” well must pass with **zero** left border accents. If screenshots show a blue/green/amber left stroke, deslop fails.
|
|
51
57
|
|
|
52
58
|
Copy does not restyle the page. It lists the P0s from the screenshot and sends them to Design.
|
|
53
59
|
|
|
@@ -77,7 +77,9 @@ One family, or two that are obviously different (display vs mono). Inter + syste
|
|
|
77
77
|
- Mobile (~390): the primary CTA still fits above the fold.
|
|
78
78
|
- Hierarchy from size, weight, and space — not from cards.
|
|
79
79
|
- Landing and marketing pages take a full direction. App chrome (settings, tables) stays quiet and dense.
|
|
80
|
-
-
|
|
80
|
+
- Do not mark selection or severity with a left edge stroke. That pattern reads as default AI/SaaS chrome even on flat full-bleed sheets.
|
|
81
|
+
- Prefer: radio + tint, check + tint, or typography/weight. Keep one accent for the primary CTA, not as a row edge.
|
|
82
|
+
- Reject: centered hero + two pills + three icon cards; glass navbar; four-column empty footer; fake metrics; broadsheet hairlines + dense newsprint columns (that look is itself a 2026 default); left selection rails; callouts whose only cue is a thick left border.
|
|
81
83
|
|
|
82
84
|
## Motion
|
|
83
85
|
|
|
@@ -28,4 +28,4 @@ Owner, extra reviewers, required skills, preserved behavior, and required screen
|
|
|
28
28
|
|
|
29
29
|
## Reject
|
|
30
30
|
|
|
31
|
-
Implementing in the planning pass. Asking one chat to play every role. Skipping `supabase-auth-rls` because “it’s just a table.”
|
|
31
|
+
Implementing in the planning pass. Asking one chat to play every role. Skipping `supabase-auth-rls` because “it’s just a table.” Skipping `nextjs-app-router` because the route is small.
|
|
@@ -18,6 +18,8 @@ Adding or reviewing tests, smoke checks, or regression coverage.
|
|
|
18
18
|
- Network failure, empty, and error behavior is covered.
|
|
19
19
|
- Gaps are named when infrastructure is missing.
|
|
20
20
|
|
|
21
|
+
If the change is App Router, Auth/RLS, or a migration, tests must cover those contracts. This skill does not replace `nextjs-app-router`, `supabase-auth-rls`, `postgres-migrations`, or `owasp-security-review`. Visual proof of a screen still uses `browser-qa`.
|
|
22
|
+
|
|
21
23
|
## Visual proof
|
|
22
24
|
|
|
23
25
|
User-visible screens also require `browser-qa`. This skill does not replace screenshots. Passing `toBeVisible` is not image review.
|
|
@@ -220,12 +220,15 @@
|
|
|
220
220
|
}
|
|
221
221
|
|
|
222
222
|
.rule {
|
|
223
|
-
border-left: 4px solid var(--safelight);
|
|
224
223
|
padding: 0.7rem 0.9rem;
|
|
225
|
-
background: #
|
|
224
|
+
background: #23160f;
|
|
226
225
|
margin: 0 0 1.4rem;
|
|
227
226
|
}
|
|
228
227
|
|
|
228
|
+
.rule strong {
|
|
229
|
+
color: var(--safelight);
|
|
230
|
+
}
|
|
231
|
+
|
|
229
232
|
.steps {
|
|
230
233
|
display: grid;
|
|
231
234
|
gap: 0.85rem;
|
|
@@ -763,6 +766,10 @@ npx agent-kit update</pre>
|
|
|
763
766
|
<td>QA finished from the diff</td>
|
|
764
767
|
<td>Reject it. Re-run with the good QA prompt.</td>
|
|
765
768
|
</tr>
|
|
769
|
+
<tr>
|
|
770
|
+
<td>GitHub shows this page as code</td>
|
|
771
|
+
<td>Open <code>USER_GUIDE.html</code> in a browser, or run <code>npx agent-kit guide</code>. GitHub does not render the layout.</td>
|
|
772
|
+
</tr>
|
|
766
773
|
<tr>
|
|
767
774
|
<td><code>doctor</code> fails the guide</td>
|
|
768
775
|
<td>The screenshot fail-closed sentence must stay in <code>USER_GUIDE.md</code> and this page.</td>
|
|
@@ -179,5 +179,6 @@ Pristine files refresh. Local edits win or land in `.agent-kit/conflicts/`. Do n
|
|
|
179
179
|
| Skill not triggering | Mention the skill name (`browser-qa`) or `@` it in Cursor. |
|
|
180
180
|
| No browser in Copilot / Codex | Use the Playwright commands in `browser-qa`. |
|
|
181
181
|
| QA finished from the diff | Reject it. Re-run with the good QA prompt above. |
|
|
182
|
+
| GitHub shows `USER_GUIDE.html` as code | Open the file in a browser. Run `npx agent-kit guide` to print the path. GitHub does not render the layout. |
|
|
182
183
|
| `doctor` fails USER_GUIDE | The screenshot fail-closed sentence must stay in this file. |
|
|
183
184
|
| Still have `QUALITY_GATES.md` / `COUNCIL.md` | Expected. `update` does not delete them. `doctor` lists leftovers. |
|
|
@@ -38,7 +38,7 @@ Second pass: re-read the rewrite. If the same tell remains, rewrite the paragrap
|
|
|
38
38
|
|
|
39
39
|
## Visual P0s — fail if still on screen
|
|
40
40
|
|
|
41
|
-
These are the 2026
|
|
41
|
+
These are the 2026 flat AI/SaaS chrome cluster (same family as accent-border cards, glow rails, and card soup). One is a smell. Two or more is a reject. A pick-list row or status well with a left stroke is already a fail.
|
|
42
42
|
|
|
43
43
|
- Purple-to-blue (or indigo) gradient hero, or gradient-clipped headline type
|
|
44
44
|
- Inter / Roboto / default shadcn zinc as the whole identity
|
|
@@ -48,6 +48,12 @@ These are the 2026 convergence cluster. One is a smell. Two or more is a reject.
|
|
|
48
48
|
- Acid green or neon vermilion on near-black used as decoration, not meaning
|
|
49
49
|
- Lucide Sparkles / Zap as the product metaphor
|
|
50
50
|
- Fake dashboard metrics or DiceBear avatars
|
|
51
|
+
- Left accent bars / left-hand borderlines on selected rows, list items, cards, or success/error/warn wells (the “colored stroke on the left edge” pattern)
|
|
52
|
+
- Thick one-sided colored borders, glow rails, neon strokes, or gradient borders used as the main state cue
|
|
53
|
+
|
|
54
|
+
Selection must use radio/checkbox + light row tint (or weight/space) only. Status wells may use a flat tint fill. No `border-left` accent, no inset bar, no vertical rail as decoration. Keep one accent for the primary CTA, not as a row edge.
|
|
55
|
+
|
|
56
|
+
**Acceptance fixture:** a pick-list row and a “verified” well must pass with **zero** left border accents. If screenshots show a blue/green/amber left stroke, deslop fails.
|
|
51
57
|
|
|
52
58
|
Copy does not restyle the page. It lists the P0s from the screenshot and sends them to Design.
|
|
53
59
|
|
|
@@ -77,7 +77,9 @@ One family, or two that are obviously different (display vs mono). Inter + syste
|
|
|
77
77
|
- Mobile (~390): the primary CTA still fits above the fold.
|
|
78
78
|
- Hierarchy from size, weight, and space — not from cards.
|
|
79
79
|
- Landing and marketing pages take a full direction. App chrome (settings, tables) stays quiet and dense.
|
|
80
|
-
-
|
|
80
|
+
- Do not mark selection or severity with a left edge stroke. That pattern reads as default AI/SaaS chrome even on flat full-bleed sheets.
|
|
81
|
+
- Prefer: radio + tint, check + tint, or typography/weight. Keep one accent for the primary CTA, not as a row edge.
|
|
82
|
+
- Reject: centered hero + two pills + three icon cards; glass navbar; four-column empty footer; fake metrics; broadsheet hairlines + dense newsprint columns (that look is itself a 2026 default); left selection rails; callouts whose only cue is a thick left border.
|
|
81
83
|
|
|
82
84
|
## Motion
|
|
83
85
|
|
|
@@ -28,4 +28,4 @@ Owner, extra reviewers, required skills, preserved behavior, and required screen
|
|
|
28
28
|
|
|
29
29
|
## Reject
|
|
30
30
|
|
|
31
|
-
Implementing in the planning pass. Asking one chat to play every role. Skipping `supabase-auth-rls` because “it’s just a table.”
|
|
31
|
+
Implementing in the planning pass. Asking one chat to play every role. Skipping `supabase-auth-rls` because “it’s just a table.” Skipping `nextjs-app-router` because the route is small.
|
|
@@ -18,6 +18,8 @@ Adding or reviewing tests, smoke checks, or regression coverage.
|
|
|
18
18
|
- Network failure, empty, and error behavior is covered.
|
|
19
19
|
- Gaps are named when infrastructure is missing.
|
|
20
20
|
|
|
21
|
+
If the change is App Router, Auth/RLS, or a migration, tests must cover those contracts. This skill does not replace `nextjs-app-router`, `supabase-auth-rls`, `postgres-migrations`, or `owasp-security-review`. Visual proof of a screen still uses `browser-qa`.
|
|
22
|
+
|
|
21
23
|
## Visual proof
|
|
22
24
|
|
|
23
25
|
User-visible screens also require `browser-qa`. This skill does not replace screenshots. Passing `toBeVisible` is not image review.
|
package/package.json
CHANGED
package/skills/deslop/SKILL.md
CHANGED
|
@@ -38,7 +38,7 @@ Second pass: re-read the rewrite. If the same tell remains, rewrite the paragrap
|
|
|
38
38
|
|
|
39
39
|
## Visual P0s — fail if still on screen
|
|
40
40
|
|
|
41
|
-
These are the 2026
|
|
41
|
+
These are the 2026 flat AI/SaaS chrome cluster (same family as accent-border cards, glow rails, and card soup). One is a smell. Two or more is a reject. A pick-list row or status well with a left stroke is already a fail.
|
|
42
42
|
|
|
43
43
|
- Purple-to-blue (or indigo) gradient hero, or gradient-clipped headline type
|
|
44
44
|
- Inter / Roboto / default shadcn zinc as the whole identity
|
|
@@ -48,6 +48,12 @@ These are the 2026 convergence cluster. One is a smell. Two or more is a reject.
|
|
|
48
48
|
- Acid green or neon vermilion on near-black used as decoration, not meaning
|
|
49
49
|
- Lucide Sparkles / Zap as the product metaphor
|
|
50
50
|
- Fake dashboard metrics or DiceBear avatars
|
|
51
|
+
- Left accent bars / left-hand borderlines on selected rows, list items, cards, or success/error/warn wells (the “colored stroke on the left edge” pattern)
|
|
52
|
+
- Thick one-sided colored borders, glow rails, neon strokes, or gradient borders used as the main state cue
|
|
53
|
+
|
|
54
|
+
Selection must use radio/checkbox + light row tint (or weight/space) only. Status wells may use a flat tint fill. No `border-left` accent, no inset bar, no vertical rail as decoration. Keep one accent for the primary CTA, not as a row edge.
|
|
55
|
+
|
|
56
|
+
**Acceptance fixture:** a pick-list row and a “verified” well must pass with **zero** left border accents. If screenshots show a blue/green/amber left stroke, deslop fails.
|
|
51
57
|
|
|
52
58
|
Copy does not restyle the page. It lists the P0s from the screenshot and sends them to Design.
|
|
53
59
|
|
|
@@ -77,7 +77,9 @@ One family, or two that are obviously different (display vs mono). Inter + syste
|
|
|
77
77
|
- Mobile (~390): the primary CTA still fits above the fold.
|
|
78
78
|
- Hierarchy from size, weight, and space — not from cards.
|
|
79
79
|
- Landing and marketing pages take a full direction. App chrome (settings, tables) stays quiet and dense.
|
|
80
|
-
-
|
|
80
|
+
- Do not mark selection or severity with a left edge stroke. That pattern reads as default AI/SaaS chrome even on flat full-bleed sheets.
|
|
81
|
+
- Prefer: radio + tint, check + tint, or typography/weight. Keep one accent for the primary CTA, not as a row edge.
|
|
82
|
+
- Reject: centered hero + two pills + three icon cards; glass navbar; four-column empty footer; fake metrics; broadsheet hairlines + dense newsprint columns (that look is itself a 2026 default); left selection rails; callouts whose only cue is a thick left border.
|
|
81
83
|
|
|
82
84
|
## Motion
|
|
83
85
|
|
package/skills/planning/SKILL.md
CHANGED
|
@@ -28,4 +28,4 @@ Owner, extra reviewers, required skills, preserved behavior, and required screen
|
|
|
28
28
|
|
|
29
29
|
## Reject
|
|
30
30
|
|
|
31
|
-
Implementing in the planning pass. Asking one chat to play every role. Skipping `supabase-auth-rls` because “it’s just a table.”
|
|
31
|
+
Implementing in the planning pass. Asking one chat to play every role. Skipping `supabase-auth-rls` because “it’s just a table.” Skipping `nextjs-app-router` because the route is small.
|
|
@@ -18,6 +18,8 @@ Adding or reviewing tests, smoke checks, or regression coverage.
|
|
|
18
18
|
- Network failure, empty, and error behavior is covered.
|
|
19
19
|
- Gaps are named when infrastructure is missing.
|
|
20
20
|
|
|
21
|
+
If the change is App Router, Auth/RLS, or a migration, tests must cover those contracts. This skill does not replace `nextjs-app-router`, `supabase-auth-rls`, `postgres-migrations`, or `owasp-security-review`. Visual proof of a screen still uses `browser-qa`.
|
|
22
|
+
|
|
21
23
|
## Visual proof
|
|
22
24
|
|
|
23
25
|
User-visible screens also require `browser-qa`. This skill does not replace screenshots. Passing `toBeVisible` is not image review.
|