Skills Overview

Bootspring provides 7 skill patterns - reusable templates and best practices for common development tasks.

What Are Skills?#

Skills are pre-built patterns that encode best practices for specific development tasks. When you apply a skill, you get production-ready code that follows established conventions.

How to Use Skills#

Via Natural Language#

Use the api-endpoint skill to create a POST /api/users endpoint.

Via MCP Tool#

Use the bootspring_skill tool with: - skill: "api-endpoint" - context: { method: "POST", path: "/api/users" }

Available Skills#

SkillDescriptionOutput
api-endpointRESTful API endpoint patternsRoute handlers, validation, responses
react-componentReact component templatesAccessible, typed components
prisma-crudDatabase CRUD operationsPrisma queries, transactions
auth-flowAuthentication patternsJWT, OAuth, session management
test-suiteTesting patternsUnit, integration, E2E tests
error-handlingError managementError classes, handlers, logging
validationInput validationZod schemas, sanitization

Skill Anatomy#

Each skill includes:

1. Template Code#

Production-ready code that you can use immediately.

2. Configuration Options#

Customize the output for your needs.

3. Best Practices#

Encoded knowledge from experts.

4. Examples#

Real-world usage examples.

Using Skills Effectively#

Skill Selection#

Choose based on your task:

TaskSkill
Create API endpointapi-endpoint
Build UI componentreact-component
Add database operationsprisma-crud
Implement login/signupauth-flow
Write teststest-suite
Handle errorserror-handling
Validate inputvalidation

Customization#

Skills accept options to customize output:

Use the react-component skill with: - name: "UserProfile" - props: ["user", "onEdit"] - includeTests: true - styling: "tailwind"

Chaining Skills#

Combine skills for complete features:

1. api-endpoint → Create the API route 2. validation → Add input validation 3. prisma-crud → Add database operations 4. error-handling → Handle edge cases 5. test-suite → Write tests

Skill Configuration#

Configure skill preferences in your config:

1// bootspring.config.js 2module.exports = { 3 skills: { 4 preferred: { 5 // Component preferences 6 components: 'functional', 7 styling: 'tailwind', 8 9 // API preferences 10 api: 'rest', 11 validation: 'zod', 12 13 // Database preferences 14 orm: 'prisma', 15 16 // Testing preferences 17 testing: 'vitest', 18 }, 19 20 // Custom templates 21 templates: { 22 'api-endpoint': './templates/api-endpoint.ts', 23 'react-component': './templates/component.tsx', 24 }, 25 }, 26};

Creating Custom Skills#

You can create custom skills for your team:

1// templates/api-endpoint.ts 2export const template = ` 3import { NextResponse } from 'next/server'; 4import { z } from 'zod'; 5import { prisma } from '@/lib/prisma'; 6 7const {{name}}Schema = z.object({ 8 {{#each fields}} 9 {{name}}: z.{{type}}(), 10 {{/each}} 11}); 12 13export async function {{method}}(request: Request) { 14 try { 15 const body = await request.json(); 16 const validated = {{name}}Schema.parse(body); 17 18 // TODO: Implement logic 19 20 return NextResponse.json({ data: result }); 21 } catch (error) { 22 if (error instanceof z.ZodError) { 23 return NextResponse.json( 24 { error: 'Validation failed', details: error.errors }, 25 { status: 400 } 26 ); 27 } 28 throw error; 29 } 30} 31`;

Best Practices#

When to Use Skills#

  • Starting new features
  • Applying consistent patterns
  • Onboarding team members
  • Enforcing standards

When to Customize#

  • Team-specific conventions
  • Project-specific requirements
  • Technology preferences

Keeping Skills Updated#

  • Review skills regularly
  • Update for new best practices
  • Share improvements with team

Next Steps#