@mindrally/go-api-development

240+ Claude Code skills converted from Cursor rules. Expert coding guidelines for every major framework and language.

View in AI SkillSafe app
Scanned · no findings
0 downloads
0 stars
0 demos
SKILL.md
namego-api-development
descriptionGo API development guidelines using the standard library (1.22+) with best practices for RESTful API design, error handling, and security

Go API Development with Standard Library

Core Principles

  • Always use the latest stable version of Go (1.22 or newer) and be familiar with RESTful API design principles, net/http package, and the new ServeMux introduced in Go 1.22
  • Follow the user's requirements carefully and to the letter
  • First think step-by-step - describe your plan for the API structure, endpoints, and data flow in pseudocode, written out in great detail
  • Write correct, up-to-date, bug-free, fully functional, secure, and efficient Go code for APIs
  • Leave NO todos, placeholders, or missing pieces in the API implementation
  • Always prioritize security, scalability, and maintainability in your API designs

API Development Guidelines

Routing and HTTP Handling

  • Use the new http.ServeMux introduced in Go 1.22 for routing
  • Implement proper HTTP method handling (GET, POST, PUT, DELETE, PATCH)
  • Use appropriate HTTP status codes for responses
  • Implement proper content-type handling for requests and responses

Error Handling

  • Implement proper error handling, including custom error types when beneficial
  • Return appropriate HTTP status codes with error responses
  • Use structured error responses in JSON format
  • Log errors appropriately for debugging and monitoring

Input Validation

  • Implement input validation for API endpoints
  • Validate request bodies, query parameters, and path parameters
  • Return clear validation error messages to clients
  • Sanitize inputs to prevent injection attacks

JSON Handling

  • Use encoding/json for JSON serialization/deserialization
  • Implement proper struct tags for JSON field mapping
  • Handle JSON parsing errors gracefully
  • Use appropriate JSON formatting for responses

Concurrency

  • Leverage Go's built-in concurrency features when appropriate for API performance
  • Use goroutines for concurrent operations where beneficial
  • Implement proper synchronization for shared state
  • Use context for request cancellation and timeouts

Middleware

  • Implement middleware for cross-cutting concerns (logging, authentication, rate limiting)
  • Use middleware chaining for composable request processing
  • Implement CORS handling where needed
  • Add request/response logging middleware

Security

  • Implement authentication and authorization where appropriate
  • Use HTTPS in production
  • Implement rate limiting to prevent abuse
  • Validate and sanitize all user inputs
  • Use secure defaults for cookies and sessions

Logging

  • Use standard library logging with structured output
  • Log appropriate information for debugging and monitoring
  • Avoid logging sensitive information
  • Use log levels appropriately

Testing

  • Write unit tests for handlers and business logic
  • Implement integration tests for API endpoints
  • Use table-driven tests where appropriate
  • Mock external dependencies in tests

Embed badges

Add these to your README to show the skill's verification status.

SkillSafe verified badge
Verified badge
[![SkillSafe verified badge](https://api.skillsafe.ai/v1/badge/@mindrally/go-api-development/verified)](https://skillsafe.ai/skill/@mindrally/go-api-development/)
Installs badge
Installs badge
[![Installs badge](https://api.skillsafe.ai/v1/badge/@mindrally/go-api-development/installs)](https://skillsafe.ai/skill/@mindrally/go-api-development/)
Scan badge
Scan badge
[![Scan badge](https://api.skillsafe.ai/v1/badge/@mindrally/go-api-development/scan)](https://skillsafe.ai/skill/@mindrally/go-api-development/)
Eval pass rate badge
Eval pass rate
[![Eval pass rate badge](https://api.skillsafe.ai/v1/badge/@mindrally/go-api-development/eval)](https://skillsafe.ai/skill/@mindrally/go-api-development/)