frontend-dev-guidelines

Standardize React/TypeScript frontend development with Suspense, TanStack Query, and MUI v7.

1|Updated Nov 9, 2025
One-click install
npx skills add https://github.com/ramunasnognys/workflow-template --skill frontend-dev-guidelines-ramunasnognys
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: frontend-dev-guidelines
Source: https://github.com/ramunasnognys/workflow-template/tree/main/.claude/skills/frontend-dev-guidelines
Command: npx skills add https://github.com/ramunasnognys/workflow-template --skill frontend-dev-guidelines-ramunasnognys

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Modern React development can be complex, leading to inconsistent code, performance issues, and difficult maintenance. This Skill provides a comprehensive guide to best practices, helping you build scalable, high-performance React/TypeScript applications with clear patterns for data fetching, styling, and file organization.

Core Features & Use Cases

  • Suspense-First Data Fetching: Leverage useSuspenseQuery and Suspense boundaries to eliminate manual loading states and prevent layout shifts.
  • Modular File Organization: Structure your codebase with features/ and components/ directories, ensuring maintainability and reusability.
  • MUI v7 Styling & Routing: Implement consistent UI with MUI v7's sx prop and manage application flow with TanStack Router's file-based routing.
  • Use Case: You need to build a new user profile page. Use this Skill to quickly set up the component structure, implement Suspense-based data fetching for user data, apply MUI v7 styling, and integrate it into the TanStack Router, all while adhering to performance best practices.

Quick Start

Generate a new React component named UserProfileCard that fetches user data using useSuspenseQuery and displays it within a SuspenseLoader boundary, following the recommended component structure.

Frequently Asked Questions about frontend-dev-guidelines

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

FAQPage Schema
How do I structure a React/TypeScript project for better performance and maintainability?

Organize your React project with `features/` and `components/` directories, use alias imports, apply TypeScript best practices, and enforce React.FC<Props> patterns. This modular structure improves code reusability, scalability, and makes maintenance easier across large applications.

What's the best way to handle data fetching in React with Suspense?

Use `useSuspenseQuery` with Suspense boundaries to eliminate manual loading states and prevent layout shifts. This approach standardizes async data handling, reduces boilerplate code, and provides a cleaner component interface for handling pending and error states.

How do I implement consistent styling in React with MUI v7?

Use MUI v7's `sx` prop for inline styling or maintain separate styling files based on component complexity. This approach keeps styling scoped, maintainable, and consistent across your application while leveraging MUI's theming system.

Can I use TanStack Query with Suspense for data fetching in React?

Yes, TanStack Query's `useSuspenseQuery` hook integrates directly with Suspense boundaries, enabling you to manage server state with automatic caching, retry logic, and synchronization without manual loading state management.

How do I set up file-based routing in a React application?

Use TanStack Router for file-based routing that integrates with your feature-driven file structure. This provides type-safe routes, lazy loading support, and automatic code splitting aligned with your component and feature organization.

What are the key patterns for handling loading and error states in React components?

Combine Suspense boundaries with error boundaries to implement robust loading and error handling patterns. Suspense manages pending states while error boundaries catch failures, providing consistent user feedback and preventing cascading component failures.