Agent skill · Frontend

frontend-architecture

A portable, framework-agnostic architecture style for any React or React Native frontend. Organizes apps into feature modules with page/screen directories, a strict server-state vs UI-state split, barrel-only cross-module imports, co-located styles, and clear component-promotion rules....

Nick44,086★ · +407/wk · 1 repos on radarProfile →
claude-codecodexcursorMIT
Install
npx skills add sickn33/agentic-awesome-skills --skill frontend-architecture --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 22 KB
Bundled scripts: none
Path: skills/frontend-architecture/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 44,414 · +328 this week
Language: Python
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

Review
written from the skill's own SKILL.md · Aug 5, 2026

What it does

It prescribes a portable, framework-agnostic architecture for React or React Native frontends. It organizes apps into feature modules inside a modules/{feature}/ directory, with a PUBLIC BARREL at modules/{feature}/index.ts that re-exports pages, data hooks, stores, and types. Pages are directories (pages/{page}/) containing a page component, styles file, an index.ts, and optionally page-scoped components, hooks, and data. It enforces a strict split between server state (in a query/cache layer) and UI/client state (in a module-owned store) and requires one store unit per module. Data access goes through a single typed client in shared/api-client/, with module-specific hooks and a hierarchical key factory for cache invalidation. Styling must be co-located per page/component via a dedicated {name}.styles.ts (or equivalent) and never inline styles. Naming conventions are clearly defined (I-prefixed interfaces, kebab-case folders, PascalCase components, etc.). Framework adapters are designed to map onto Next.js App Router, React + Vite SPA, Remix, and Expo/React Native, with a library-agnostic approach to choosing state libraries.

How it works

  1. Structure the code into feature modules under modules/{feature}/ with a single PUBLIC BARREL in index.ts exporting pages, data hooks, stores, and types. 2) Organize each page as a directory pages/{page}/ containing {page}.tsx, {page}.styles.ts, index.ts, and optional subfolders for page-scoped components/hooks. 3) Maintain a strict server state vs UI state split: server data via a query/cache layer, UI state in a module store. 4) Do not mirror server responses into the client store; components read server data via data hooks and UI state from store selectors. 5) Access the network only through a shared typed client in shared/api-client/. 6) Keep styling in co-located {name}.styles.ts files appropriate to the chosen styling stack; avoid inline styles. 7) Follow the naming conventions for interfaces, components, stores, hooks, and barrels. 8) Use framework adapters to map the structure to the target framework routing layer.

When to use it

Use this when you need a portable, framework-agnostic architecture style for any React or React Native frontend. It applies to Next.js (App Router), React + Vite (SPA), Remix, and Expo / React Native, and works with any state-management and styling stack. It aims to answer quickly where code lives, what can import what, and whether data is server or UI state.

What it can touch

  • Modules and their public barrels: imports from "@/modules/{feature}".
  • Shared data client at "shared/api-client/".
  • Data hooks and state stores inside each feature (e.g., "modules/{feature}/stores/…" or equivalent per library).
  • Page components, page-specific hooks, and styling files under each feature.

Caveats

  • Risk: critical
  • License: MIT
From the SKILL.md

# Frontend Architecture (portable, module-based) ## When to Use Use this skill when you need a portable, framework-agnostic architecture style for any React or React Native frontend. Organizes apps into feature modules with page/screen directories, a strict server-state vs UI-state split, barrel-only cross-module imports, co-located styles, and clear component-promotion rules.... > Portable skill — readable by Claude Code, OpenCode, Codex, Cursor, Windsurf, and others. > This skill describes a **structure and a set of rules**, not a component library, a state library, or a visual style. > It is deliberately global: the same module/page/state model maps onto > **Next.js (App Router)**, **React + Vite (SPA)**, **Remix**, and **Expo / React Native**, and it works > with **any** state-management and styling stack. The goal: a codebase where any contributor can instantly answer three questions — **"where does this code live?"**, **"what is allowed to import what?"**, and **"is this server state or UI state?"** — without asking anyone. The structure makes the answers obvious. --- ## 0. The five core ideas 1. **Feature modules own their world.** Each feature is a self-contained `modules/{

What's inside
Steps it walks through
  1. When to Use
  2. 0. The five core ideas
  3. 1. Directory layout
  4. 2. Feature modules
  5. 2.1 The barrel (index.ts) is the contract
  6. 2.2 One module = one bounded context
  7. 2.3 Module README
  8. 3. Pages/screens as directories
  9. 4. State: split by origin (non-negotiable, library-agnostic)
  10. 4.1 Hard rules (independent of library)
  11. 4.2 Choosing a client-state library — same shape, different syntax
  12. 4.3 Data layer (server state)
  13. 5. Styling: co-located, no inline styles (styling-library agnostic)
  14. 6. Naming conventions
More from agentic-awesome-skills
All skills →
About this skill
What does the frontend-architecture skill do?

A portable, framework-agnostic architecture style for any React or React Native frontend. Organizes apps into feature modules with page/screen directories, a strict server-state vs UI-state split, barrel-only cross-module imports, co-located styles, and clear component-promotion rules....

How do I install it?

Run `npx skills add sickn33/agentic-awesome-skills --skill frontend-architecture --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From sickn33/agentic-awesome-skills, a repository with 44,414 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going