Comprehensive developer toolkit providing reusable skills for Java/Spring Boot, TypeScript/NestJS/React/Next.js, Python, PHP, AWS CloudFormation, AI/RAG, DevOps, and more.
90
90%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Risky
Do not use without reviewing
Reference guide for Python coding rules that activate automatically for all **/*.py files.
Rules activate automatically based on file globs (**/*.py) and provide consistent Python coding standards across the project.
| Rule | File | Purpose |
|---|---|---|
error-handling | rules/error-handling.md | Exception hierarchies, logging, and recovery patterns |
language-best-practices | rules/language-best-practices.md | Modern Python (3.11+) patterns and type hints |
naming-conventions | rules/naming-conventions.md | PEP 8 naming standards |
project-structure | rules/project-structure.md | Modular project organization |
File: rules/error-handling.md
Establishes a consistent error handling strategy with meaningful error reporting, proper exception hierarchies, and clean recovery patterns.
class ApplicationError(Exception):
"""Base exception for all application errors."""
class NotFoundError(ApplicationError):
"""Raised when a requested resource is not found."""
def __init__(self, resource: str, identifier: str | int) -> None:
self.resource = resource
self.identifier = identifier
super().__init__(f"{resource} with ID '{identifier}' was not found")except: - always catch specific exception typesexcept: pass)raise NewError("message") from original_errorlogger.exception() to capture tracebackdef process_order(order_id: int) -> OrderResult:
try:
order = self.find_by_id(order_id)
result = self._payment_gateway.charge(order)
except PaymentGatewayError as e:
logger.exception("Payment failed for order %d", order_id)
raise PaymentProcessingError(order_id) from e
else:
logger.info("Order %d processed successfully", order_id)
return resultFile: rules/language-best-practices.md
Enforces modern Python (3.11+) best practices for clean, maintainable, and type-safe code.
list[str], dict[str, int] (not List, Dict)X | None instead of Optional[X]X | Y instead of Union[X, Y]BaseModel for API request/response schemasdataclasses for internal data structuresNamedTuple for lightweight immutable records@dataclass(frozen=True) for immutable data classesasync/await for I/O-bound operationsasyncio.TaskGroup over asyncio.gather()from dataclasses import dataclass
@dataclass(frozen=True)
class AppConfig:
database_url: str
max_connections: int = 10
debug: bool = False
def read_config(path: Path) -> AppConfig:
"""Read application configuration from a TOML file."""
with open(path) as f:
data = tomllib.load(f)
return AppConfig(**data)File: rules/naming-conventions.md
Standardizes identifier naming following PEP 8 conventions.
| Element | Convention | Example |
|---|---|---|
| Modules | snake_case | order_service.py |
| Packages | snake_case | models/ |
| Classes | PascalCase | OrderService |
| Functions | snake_case | calculate_total() |
| Variables | snake_case | order_total |
| Constants | UPPER_SNAKE_CASE | MAX_RETRY_COUNT |
| Exceptions | PascalCase + Error | OrderNotFoundError |
_internal_state__mangled_nameUse is_, has_, can_, should_ prefixes:
is_activehas_permissioncan_loginMAX_RETRY_COUNT = 3
@dataclass
class OrderResponse:
order_id: int
customer_name: str
is_active: bool
class OrderService:
def __init__(self, order_repository: OrderRepository) -> None:
self._order_repository = order_repository
def find_by_id(self, order_id: int) -> OrderResponse | None:
...File: rules/project-structure.md
Enforces a consistent, modular project structure with clear layer separation.
project_name/
├── pyproject.toml # Project metadata
├── src/
│ └── project_name/
│ ├── __init__.py
│ ├── main.py # Entry point
│ ├── config/ # Configuration
│ ├── common/ # Shared utilities
│ ├── order/ # Domain module
│ │ ├── router.py # API endpoints
│ │ ├── schemas.py # Pydantic models
│ │ ├── service.py # Business logic
│ │ ├── repository.py # Data access
│ │ └── models.py # ORM models
│ └── user/ # Domain module
├── tests/
│ ├── conftest.py # Shared fixtures
│ ├── test_order/
│ └── test_user/
└── scripts/| File | Responsibility |
|---|---|
router.py | API route definitions, request parsing |
schemas.py | Pydantic models for validation |
service.py | Business logic, orchestration |
repository.py | Data access, database queries |
models.py | ORM models (SQLAlchemy, Django) |
config/ | Settings, environment variables |
Mirror source structure under tests/:
tests/
├── conftest.py
├── test_order/
│ ├── test_router.py
│ └── test_service.py
└── test_user/| Rule | Key Points |
|---|---|
| error-handling | Exception hierarchy, logging, never bare except |
| language-best-practices | Type hints, dataclasses, async patterns |
| naming-conventions | snake_case modules, PascalCase classes |
| project-structure | Modular organization, layer separation |
Note: Rules activate automatically for all **/*.py files. See the rule files at rules/*.md for complete guidelines.
docs
plugins
developer-kit-ai
developer-kit-aws
agents
docs
skills
aws
aws-cli-beast
aws-cost-optimization
aws-drawio-architecture-diagrams
aws-sam-bootstrap
aws-cloudformation
aws-cloudformation-auto-scaling
aws-cloudformation-bedrock
aws-cloudformation-cloudfront
aws-cloudformation-cloudwatch
aws-cloudformation-dynamodb
aws-cloudformation-ec2
aws-cloudformation-ecs
aws-cloudformation-elasticache
references
aws-cloudformation-iam
references
aws-cloudformation-lambda
aws-cloudformation-rds
aws-cloudformation-s3
aws-cloudformation-security
aws-cloudformation-task-ecs-deploy-gh
aws-cloudformation-vpc
references
developer-kit-core
agents
commands
skills
developer-kit-devops
developer-kit-java
agents
commands
docs
skills
aws-lambda-java-integration
aws-rds-spring-boot-integration
aws-sdk-java-v2-bedrock
aws-sdk-java-v2-core
aws-sdk-java-v2-dynamodb
aws-sdk-java-v2-kms
aws-sdk-java-v2-lambda
aws-sdk-java-v2-messaging
aws-sdk-java-v2-rds
aws-sdk-java-v2-s3
aws-sdk-java-v2-secrets-manager
clean-architecture
graalvm-native-image
langchain4j-ai-services-patterns
references
langchain4j-mcp-server-patterns
references
langchain4j-rag-implementation-patterns
references
langchain4j-spring-boot-integration
langchain4j-testing-strategies
langchain4j-tool-function-calling-patterns
langchain4j-vector-stores-configuration
references
qdrant
references
spring-ai-mcp-server-patterns
spring-boot-actuator
spring-boot-cache
spring-boot-crud-patterns
spring-boot-dependency-injection
spring-boot-event-driven-patterns
spring-boot-openapi-documentation
spring-boot-project-creator
spring-boot-resilience4j
spring-boot-rest-api-standards
spring-boot-saga-pattern
spring-boot-security-jwt
assets
references
scripts
spring-boot-test-patterns
spring-data-jpa
references
spring-data-neo4j
references
unit-test-application-events
unit-test-bean-validation
unit-test-boundary-conditions
unit-test-caching
unit-test-config-properties
references
unit-test-controller-layer
unit-test-exception-handler
references
unit-test-json-serialization
unit-test-mapper-converter
references
unit-test-parameterized
unit-test-scheduled-async
references
unit-test-service-layer
references
unit-test-utility-methods
unit-test-wiremock-rest-api
references
developer-kit-php
developer-kit-project-management
developer-kit-python
developer-kit-specs
commands
docs
hooks
test-templates
tests
skills
developer-kit-tools
developer-kit-typescript
agents
docs
hooks
rules
skills
aws-cdk
aws-lambda-typescript-integration
better-auth
clean-architecture
drizzle-orm-patterns
dynamodb-toolbox-patterns
references
nestjs
nestjs-best-practices
nestjs-code-review
nestjs-drizzle-crud-generator
nextjs-app-router
nextjs-authentication
nextjs-code-review
nextjs-data-fetching
nextjs-deployment
nextjs-performance
nx-monorepo
react-code-review
react-patterns
shadcn-ui
tailwind-css-patterns
tailwind-design-system
references
turborepo-monorepo
typescript-docs
typescript-security-review
zod-validation-utilities
references
github-spec-kit