eq-frontend-prototype

Configures reduced-gate prototype mode for throwaway frontend repos with expiry and graduation paths.

Updated Aug 3, 2026
One-click install
npx skills add https://github.com/everquint/frontend-skills --skill eq-frontend-prototype-everquint
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: eq-frontend-prototype
Source: https://github.com/everquint/frontend-skills/tree/main/skills/engineering/eq-frontend-prototype
Command: npx skills add https://github.com/everquint/frontend-skills --skill eq-frontend-prototype-everquint

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Prototypes and proof-of-concept repos often skip engineering gates entirely or inherit full production standards that slow them down. This Skill defines a bounded prototype mode: a sanctioned reduced gate set for repos that answer one question and are then deleted or graduated, preventing throwaway code from silently becoming ungated production code. ## Core Features & Use Cases - Prototype initialization: The init-prototype.mjs script writes PROTOTYPE.md and an eqPrototype marker into package.json, lands the kept gates (typecheck, base lint, formatter hook, protected-files guard), and verifies that kept gates are actually enforcing rather than hollow. - Graduation measurement: The graduate-check.mjs script measures lint backlog, typecheck state, code size, and structure violations against the full standard, then returns a verdict (one-sitting, ratchet, or blocked) via exit codes. - Expiry enforcement: A SessionStart hook prints the prototype's question and expiry date and warns loudly once the date passes, so expired prototypes cannot masquerade as healthy repos. - Use Case: A team spikes a proof-of-concept to test whether virtualized rendering holds at 50k rows. They run init-prototype.mjs with the question and an expiry date, build with only typecheck and base lint as gates, then run graduate-check.mjs at expiry to decide between deleting the repo or graduating it to the full standard. ## Quick Start Ask the agent to set up prototype mode in a new Vite React repo by running the init-prototype script with your one question and an expiry date.

Frequently Asked Questions about eq-frontend-prototype

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a prototype repo with reduced engineering gates?

Run init-prototype.mjs from the repo root with --question and --expires arguments after scaffolding with Vite. It writes PROTOTYPE.md, marks package.json with eqPrototype, and lands only the kept gates: typecheck, base lint, and the formatter hook.

Which quality gates stay on in prototype mode?

Typecheck and base oxlint stay on, along with the oxfmt formatter hook and the protected-files guard. Coverage gates, e2e tests, CI, changesets, commitlint, PRs, and code review are all dropped because they gate nobody in a throwaway repo.

How do I graduate a prototype to the full frontend standard?

Run graduate-check.mjs first to measure the backlog; exit 0 means graduation fits one reviewed PR. Then follow references/graduation.md in order: branch, run the greenfield installer, clear strict lint findings, backfill tests, and remove the prototype markers.

When does prototype mode not apply to a repo?

Prototype mode fails its entry test if the repo has users, external dependents, production data, live credentials, or no expiry date. Any of those conditions means the repo must follow the full frontend standard from the start.

Why does init-prototype.mjs exit with code 2?

Exit 2 means a kept gate is hollow: the repo's own .oxlintrc.json lacks the standard's rules, leaf tsconfigs miss the checking flags, or the @/ alias is wired only on the tsc side. The script prints the exact fix for each case.

What happens when a prototype passes its expiry date?

The SessionStart hook prints an EXPIRED warning at every session start. On that date there are exactly two moves: delete the repo, or graduate it to the full standard using the graduation procedure.