Source profileQuality 91/100

nimadorostkar/Claude-Skills-collection/skills/frontend/frontend-architecture/SKILL.md

frontend-architecture

Use when structuring a frontend codebase. Covers module and folder organization, state boundaries, data-fetching layers, build configuration, and keeping a large application navigable.

Source repository stars
26
Declared platforms
0
Static risk flags
0
Last source update
2026-08-18
Source checked
2026-08-25

Decision brief

What it does: where it fits

Covers module and folder organization, state boundaries, data-fetching layers, build configuration, and keeping a large application navigable.

Best for

  • Starting a new frontend application.
  • A codebase where features are scattered across components/, utils/, hooks/, and types/.
  • Deciding where state belongs and what owns data fetching.

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/nimadorostkar/Claude-Skills-collection --skill "skills/frontend/frontend-architecture"
Safe inspection promptEditorial

Inspect the Agent Skill "frontend-architecture" from https://github.com/nimadorostkar/Claude-Skills-collection/blob/03f39b7041ec2679255f8d6bb5b18421561821ae/skills/frontend/frontend-architecture/SKILL.md at commit 03f39b7041ec2679255f8d6bb5b18421561821ae. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Workflow

    1. Organize by feature, not by kind — features/checkout/ containing its components, hooks, api, and types beats components/, hooks/, api/ each containing a slice of every feature. 2. Draw the import rules — Features may import from shared/. Features may not import from each othe…

    Organize by feature, not by kind — features/checkout/ containing its components, hooks, api, and types beats components/, hooks/, api/ each containing a slice of every feature.Draw the import rules — Features may import from shared/. Features may not import from each other; if two need the same thing, it moves to shared/. Enforce this with a lint rule, not a convention document.Layer the state deliberately — Server data in a query cache. Genuinely global client state (theme, session) in one store. Everything else stays local. Most "global state" is server state in disguise.
  2. 02

    Purpose

    Structure a frontend so that a new engineer can find the code for a feature in under a minute, and so that changing one feature does not require touching five others.

    Structure a frontend so that a new engineer can find the code for a feature in under a minute, and so that changing one feature does not require touching five others.
  3. 03

    When to Use

    Starting a new frontend application.

    Starting a new frontend application.A codebase where features are scattered across components/, utils/, hooks/, and types/.Deciding where state belongs and what owns data fetching.
  4. 04

    Capabilities

    Feature-based organization and module boundaries.

    Feature-based organization and module boundaries.State layering: server cache, global client state, feature state, component state.Data-access layer design and API client structure.
  5. 05

    Inputs

    The application's feature set and team structure.

    The application's feature set and team structure.Current pain: where changes ripple, what is hard to find.Build tooling and deployment target.

Permission review

Static risk signals and limitations

No configured static risk pattern was detected

This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score91/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars26SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
nimadorostkar/Claude-Skills-collection
Skill path
skills/frontend/frontend-architecture/SKILL.md
Commit
03f39b7041ec2679255f8d6bb5b18421561821ae
License
MIT
Collected
2026-08-25
Default branch
main
View the original SKILL.md

Frontend Architecture

Purpose

Structure a frontend so that a new engineer can find the code for a feature in under a minute, and so that changing one feature does not require touching five others.

When to Use

  • Starting a new frontend application.
  • A codebase where features are scattered across components/, utils/, hooks/, and types/.
  • Deciding where state belongs and what owns data fetching.
  • Setting up a monorepo or splitting a large application.

Capabilities

  • Feature-based organization and module boundaries.
  • State layering: server cache, global client state, feature state, component state.
  • Data-access layer design and API client structure.
  • Build configuration, code splitting, and bundle budgets.
  • Monorepo structure and shared package design.

Inputs

  • The application's feature set and team structure.
  • Current pain: where changes ripple, what is hard to find.
  • Build tooling and deployment target.

Outputs

  • A folder structure organized by feature, not by file type.
  • Explicit rules for what may import what.
  • Bundle budgets enforced in CI.

Workflow

  1. Organize by feature, not by kindfeatures/checkout/ containing its components, hooks, api, and types beats components/, hooks/, api/ each containing a slice of every feature.
  2. Draw the import rules — Features may import from shared/. Features may not import from each other; if two need the same thing, it moves to shared/. Enforce this with a lint rule, not a convention document.
  3. Layer the state deliberately — Server data in a query cache. Genuinely global client state (theme, session) in one store. Everything else stays local. Most "global state" is server state in disguise.
  4. Centralize the API client — One place that knows about base URLs, auth headers, error mapping, and retries. Feature code calls typed functions, not fetch.
  5. Budget the bundle — Set a size limit per route and fail the build when it is exceeded. Bundle size regresses one dependency at a time.

Best Practices

  • A utils/ folder is where code goes to be forgotten. If a function belongs to a feature, keep it in the feature.
  • Barrel files (index.ts re-exporting everything) defeat tree-shaking and create import cycles. Import from the source module.
  • Route-level code splitting is nearly free and pays for itself immediately. Component-level splitting rarely does.
  • Do not put server data in a global store. It has staleness, refetch, and error semantics that a store does not model — you will rebuild a query library, badly.
  • A shared component library inside the app is fine. Extracting it into a package before a second consumer exists is premature.
  • Keep the dependency count low. Every dependency is bundle weight, a supply-chain risk, and a future migration.

Examples

Feature-based structure with enforced boundaries:

src/
  app/                    # routing, providers, global layout
  features/
    checkout/
      components/         # only used by checkout
      api/                # checkout endpoints, typed
      model/              # checkout state and domain types
      index.ts            # the feature's public surface
    orders/
    account/
  shared/
    ui/                   # design-system primitives
    api/                  # http client, auth, error mapping
    lib/                  # genuinely cross-cutting helpers
// eslint.config.js — the boundary is enforced, not merely documented.
{
  rules: {
    "import/no-restricted-paths": ["error", {
      zones: [{
        target: "./src/features/*",
        from: "./src/features/*",
        message: "Features must not import each other. Move shared code to src/shared.",
      }],
    }],
  },
}

A bundle budget that fails the build:

{
  "bundlesize": [
    { "path": "dist/assets/index-*.js", "maxSize": "180 kB", "compression": "brotli" },
    { "path": "dist/assets/checkout-*.js", "maxSize": "90 kB", "compression": "brotli" }
  ]
}

Notes

  • The single most effective architectural rule in a frontend codebase is "features may not import each other". It is trivially enforceable and prevents the coupling that makes large frontends unchangeable.
  • Analyze the bundle before optimizing it. vite-bundle-visualizer or source-map-explorer will usually show one date library or one icon set accounting for a third of the payload.
  • Monorepos solve a versioning problem between packages. If you have one application, a monorepo is overhead with no corresponding benefit.

Frequently asked questions

What to verify before installation and use

What does the frontend-architecture source document cover?

Covers module and folder organization, state boundaries, data-fetching layers, build configuration, and keeping a large application navigable.

How do I install frontend-architecture?

The source record exposes this install command: npx skills add https://github.com/nimadorostkar/Claude-Skills-collection --skill "skills/frontend/frontend-architecture". Inspect the command and pinned source before running it.

Alternatives

Compare before choosing

Computed 10029,034

garrytan/gbrain

bulk-ingestion

End-to-end discipline for turning any large data source (audio libraries, email takeouts, document corpora, chat exports, API dumps) into brain pages at scale. The lifecycle spine: SCHEMA → ACCESS → TRIAL → EVALUATE → IMPROVE → CODIFY → TEST → SKILLIFY → BULK → MONITOR. State is tracked in a durable JSON manifest (see MANIFEST-PATTERN.md) so any crash, session boundary, or subagent fan-out resumes from ground truth instead of memory.

Computed 10024,921

alirezarezvani/claude-skills

app-store-optimization

App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist

Computed 1005,241

dotnet/skills

migrate-vstest-to-mtp

Migrates .NET test projects from VSTest to Microsoft.Testing.Platform (MTP). Use when user asks to "migrate to MTP", "switch from VSTest", "enable Microsoft.Testing.Platform", "use MTP runner", set OutputType=Exe only for test projects in Directory.Build.props, or mentions EnableMSTestRunner, EnableNUnitRunner, or UseMicrosoftTestingPlatformRunner. USE FOR: MTP behavioral differences vs VSTest (exit code 8, zero tests discovered, --ignore-exit-code, TESTINGPLATFORM_EXITCODE_IGNORE); centralizing

Computed 100147

oaustegard/claude-skills

featuring

Generate hierarchical _FEATURES.md files that describe what a codebase DOES from a user/consumer perspective, anchored to source symbols via tree-sitting. Supports large complex codebases through feature-driven decomposition into sub-feature files. Uses a multi-pass synthesis: orientation → detail → overview rewrite. Use when someone says "what does this do", "document features", "feature inventory", "_FEATURES.md", or needs to understand a codebase's purpose before modifying it. Complements tre