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#
| Skill | Description | Output |
|---|---|---|
| api-endpoint | RESTful API endpoint patterns | Route handlers, validation, responses |
| react-component | React component templates | Accessible, typed components |
| prisma-crud | Database CRUD operations | Prisma queries, transactions |
| auth-flow | Authentication patterns | JWT, OAuth, session management |
| test-suite | Testing patterns | Unit, integration, E2E tests |
| error-handling | Error management | Error classes, handlers, logging |
| validation | Input validation | Zod 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:
| Task | Skill |
|---|---|
| Create API endpoint | api-endpoint |
| Build UI component | react-component |
| Add database operations | prisma-crud |
| Implement login/signup | auth-flow |
| Write tests | test-suite |
| Handle errors | error-handling |
| Validate input | validation |
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#
- api-endpoint - Most commonly used skill
- react-component - UI component patterns
- test-suite - Testing patterns