Awesome-omni-skill frontend-development

Frontend development - React, Vue, component architecture, state management

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/frontend-development-pluginagentmarketplace" ~/.claude/skills/diegosouzapw-awesome-omni-skill-frontend-development-e90397 && rm -rf "$T"
manifest: skills/development/frontend-development-pluginagentmarketplace/SKILL.md
source content

Frontend Development Skill

Atomic skill for frontend development including component creation, state management, and build optimization.

Responsibility

Single Purpose: Implement frontend components and configure client-side architecture

Actions

create_component

Create a new React/Vue component with proper patterns.

// Input
{
  action: "create_component",
  framework: "react",
  component_type: "compound",
  typescript: true
}

// Output
{
  success: true,
  code: "import { memo } from 'react';\n...",
  files: [
    { path: "components/MyComponent.tsx", content: "..." },
    { path: "components/MyComponent.test.tsx", content: "..." }
  ],
  performance_impact: { bundle_size: "+2kb", render_time: "5ms" }
}

manage_state

Configure state management solution.

configure_routing

Set up client-side routing.

optimize_build

Optimize bundle size and build performance.

Validation Rules

function validateParams(params: SkillParams): ValidationResult {
  if (!params.action) {
    return { valid: false, error: "action is required" };
  }

  if (params.action === 'create_component' && !params.component_type) {
    return { valid: false, error: "component_type required for create_component" };
  }

  return { valid: true };
}

Error Handling

Error CodeDescriptionRecovery
INVALID_FRAMEWORKUnsupported frameworkCheck supported frameworks
A11Y_VIOLATIONAccessibility issue detectedApply accessible pattern
BUNDLE_BUDGET_EXCEEDEDComponent too largeSuggest code splitting

Logging Hooks

{
  "on_invoke": "log.info('frontend-development invoked', { action, framework })",
  "on_success": "log.info('Component created', { files, bundle_impact })",
  "on_error": "log.error('Frontend skill failed', { error })"
}

Unit Test Template

import { describe, it, expect } from 'vitest';
import { frontendDevelopment } from './frontend-development';

describe('frontend-development skill', () => {
  describe('create_component', () => {
    it('should create React component with TypeScript', async () => {
      const result = await frontendDevelopment({
        action: 'create_component',
        framework: 'react',
        component_type: 'presentational',
        typescript: true
      });

      expect(result.success).toBe(true);
      expect(result.code).toContain('interface');
      expect(result.files).toHaveLength(2); // Component + test
    });

    it('should include accessibility attributes', async () => {
      const result = await frontendDevelopment({
        action: 'create_component',
        framework: 'react',
        component_type: 'presentational'
      });

      expect(result.code).toMatch(/aria-|role=/);
    });
  });

  describe('manage_state', () => {
    it('should configure zustand for simple state', async () => {
      const result = await frontendDevelopment({
        action: 'manage_state',
        framework: 'react'
      });

      expect(result.success).toBe(true);
    });
  });
});

Integration

  • Bonded Agent: 02-frontend-development
  • Upstream Skills: fullstack-basics
  • Downstream Skills: fullstack-testing

Version History

VersionDateChanges
1.0.02024-01Initial release
2.0.02025-01Production-grade upgrade with React 19 patterns