Borrowing it
Nothing to install: this file belongs to Szesnasty/Jarvis. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Szesnasty/Jarvis/main/.claude/skills/senior-frontend/SKILL.mdgit clone --depth 1 https://github.com/Szesnasty/JarvisWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/szesnasty/jarvis/senior-frontend)<a href="https://agentmods.dev/skills/szesnasty/jarvis/senior-frontend"><img src="https://agentmods.dev/badge/skills/szesnasty/jarvis/senior-frontend/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/szesnasty/jarvis/senior-frontend"><img src="https://agentmods.dev/badge/skills/szesnasty/jarvis/senior-frontend.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00053 | $0.00777 |
| Opus 5.5 | $0.00021 | $0.00311 |
| Sonnet 5.5 | $0.00011 | $0.00155 |
| Haiku 4.5 | $0.00005 | $0.00078 |
Grade A, and why
senior-frontend scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 82 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Frontend Development
Component Design
Structure
- One component per file, named to match the export
- Co-locate styles, tests, and types with the component
- Extract shared components only when used in 3+ places
- Keep components under 200 lines — split when they do too much
Props
- Use TypeScript interfaces for all props — no
any - Prefer specific types over broad ones:
"sm" | "md" | "lg"notstring - Destructure props in the function signature for readability
- Default optional props at the destructuring site, not with
defaultProps
State Management
- Local state first (
useState), lift only when needed - Use
useReducerfor complex state with multiple related fields - Context for truly global state (theme, auth, locale) — not for prop drilling avoidance
- External state libraries (Zustand, Jotai) for server cache or cross-component state
- Never put derived data in state — compute it
Performance
Rendering
- Avoid unnecessary re-renders:
React.memoonly when measured, not preventively - Move expensive computations to
useMemo— but measure first - Stabilize callback references with
useCallbackwhen passed to memoized children - Use
keyprops correctly — stable IDs, not array indices for dynamic lists
Loading
- Lazy-load routes and heavy components with
React.lazy/next/dynamic - Optimize images: proper sizes, modern formats (WebP/AVIF), lazy loading
- Minimize bundle size — check imports, avoid barrel file re-exports in libraries
- Prefetch critical data, defer non-critical requests
Next.js Specific
- Use Server Components by default — add
"use client"only when needed - Fetch data in Server Components, not in client
useEffect - Use
loading.tsxanderror.tsxfor route-level loading/error states - Leverage ISR or static generation for content that doesn't change per-request
Styling
Tailwind CSS
- Extract repeated patterns into component abstractions, not
@applyclasses - Use design tokens via
tailwind.config— don't hardcode colors or spacing - Keep className strings readable — break to multiple lines if long
- Use
cn()orclsx()for conditional classes
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 82 lines · 53 tokens per session scan A 53addf01bda4
senior-frontend is a skill published in the GitHub repository Szesnasty/Jarvis (12 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 53 tokens to every session and 777 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
web-design-engineer
Build or redesign polished browser-rendered visual artifacts with HTML/CSS/JavaScript/React: pages, dashboards, prototypes, slide decks, animations, UI mockups, and data visualizations. Use for visual front-end creation, design-system exploration, design critique, or explicit browser acceptance / QA of a web artifact.…
sn-motion-html
Build continuous-shot motion-driven HTML stories from a subject or narrative, including research, story structure, consistent AI stills, Seedance scene and connector clips, interface styling, media normalization, and browser QA. Use for immersive journeys, timelines, product stories, fictional worlds, or other…
proto-bot-getting-started
A first-conversation guide for starting an interface-prototyping task. It gathers the application, design rules, allowed changes, and preferred delivery format only as needed before producing an initial result.
proto-bot-ops
A workflow for turning an existing application into interface prototypes, implementing approved page changes, and collecting review evidence. It checks the real code, pages, components, data, and visual states instead of treating a design file as an integrated product.
byted-util-vite-react-tailwind
A setup guide for building frontend projects with Vite, React, Tailwind CSS, TypeScript, and Lucide icons.
shodh-memory
Persistent memory system for AI agents. Use this skill to remember context across conversations, recall relevant information, and build long-term knowledge. Activate when you need to store decisions, learnings, errors, or context that should persist beyond the current session.