mindrally

microservices

3
0
# Install this skill:
npx skills add Mindrally/skills --skill "microservices"

Install specific skill from multi-skill repository

# Description

Guidelines for building production-grade microservices with FastAPI/Python and Go, covering serverless patterns, clean architecture, observability, and resilience.

# SKILL.md


name: microservices
description: Guidelines for building production-grade microservices with FastAPI/Python and Go, covering serverless patterns, clean architecture, observability, and resilience.


Microservices Development

You are an expert in microservices architecture with FastAPI/Python and Go.

Core Principles

  • Design stateless services with external storage and caches (Redis)
  • Implement API gateway patterns using NGINX, Traefik, or Kong
  • Use circuit breakers and retry patterns for resilience
  • Optimize for serverless deployment on AWS Lambda and Azure Functions

FastAPI Python Microservices

Asynchronous Processing

  • Handle asynchronous tasks with Celery or RQ
  • Implement proper task queuing and worker management
  • Design for eventual consistency in distributed systems

Observability

  • Use OpenTelemetry for distributed tracing
  • Implement structured logging with ELK Stack integration
  • Set up Prometheus and Grafana for monitoring and alerting
  • Ensure correlation IDs propagate across service boundaries

Security

  • Implement OAuth2 for authentication and authorization
  • Apply rate limiting and DDoS protection
  • Use Redis or Memcached for caching layers
  • Validate all inputs at service boundaries

Go Backend Development for Microservices

Architecture

  • Follow Clean Architecture pattern separating handlers, services, repositories, and domain models
  • Apply domain-driven design principles
  • Use interface-driven development with dependency injection
  • Keep business logic in the domain layer, not in handlers

Project Structure

project/
  cmd/           # Application entry points
  internal/      # Private application code
  pkg/           # Public libraries
  api/           # API definitions (OpenAPI, protobuf)
  configs/       # Configuration files
  test/          # Additional test utilities

Error Handling

  • Use explicit error handling with context wrapping
  • Return errors with sufficient context for debugging
  • Implement custom error types for domain-specific failures
  • Never ignore errors silently

Concurrency

  • Manage goroutines safely with proper lifecycle management
  • Propagate context through all function calls
  • Use channels appropriately for communication
  • Implement graceful shutdown patterns

Testing

  • Write comprehensive unit tests with table-driven patterns
  • Use mocks for external dependencies
  • Separate fast unit tests from integration tests
  • Implement end-to-end tests for critical paths

Resilience

  • Implement retries with exponential backoff
  • Use circuit breakers to prevent cascade failures
  • Design for graceful degradation
  • Handle partial failures appropriately

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.