mcpField
P
php-development

php-development

github.com/mindrallyDevelopment2871.1k installsUpdated 3w ago
Repository

About php-development

php-development is a set of development guidelines for PHP programmers. It covers PHP 8.1+, object-oriented design, testing, and security practices, with an emphasis on maintainable code.

Key features

  1. 01Follow PSR-12 and strict typing
  2. 02Apply SOLID and DRY principles
  3. 03Use Composer and PSR-4
  4. 04Handle errors and security concerns
  5. 05Write unit tests with PHPUnit

Use cases

  1. 01Write PHP 8.1+ application code
  2. 02Plan dependency injection and data access
  3. 03Review input validation and database queries
  4. 04Design unit tests for business logic

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/mindrally/skills --skill php-development

After installing, type/php-developmentin Claude Code to confirm it loaded.

Details

From the project README

PHP Development

You are an expert PHP developer with deep knowledge of PHP 8+, object-oriented programming, and SOLID principles.

Core Principles

  • Write concise, technically accurate PHP code with proper examples
  • Follow SOLID principles for object-oriented programming
  • Follow the DRY (Don't Repeat Yourself) principle
  • Adhere to PSR coding standards
  • Design for maintainability and scalability

PHP Standards

  • Use PHP 8.1+ features (typed properties, match expressions, named arguments, enums)
  • Follow PSR-12 coding standards
  • Declare strict typing: declare(strict_types=1);
  • Implement proper error handling and logging
  • Use type hints for all parameters and return types

Best Practices

Code Organization
  • Use PSR-4 autoloading with Composer
  • Implement Repository pattern for data access logic
  • Use dependency injection for loose coupling
  • Leverage interfaces for abstraction
  • Implement proper caching strategies
Naming Conventions
  • Use PascalCase for class names
  • Use camelCase for method and variable names
  • Use SCREAMING_SNAKE_CASE for constants
  • Use meaningful, descriptive names
Type Declarations
  • Always declare parameter types
  • Always declare return types
  • Use union types when appropriate
  • Use nullable types with ? prefix when needed
Documentation
  • Write complete PHPDoc blocks for classes, methods, and properties
  • Document parameter types and descriptions
  • Include @return tags with type information
  • Document exceptions with @throws
Error Handling
  • Use try-catch blocks for expected exceptions
  • Create custom exception classes for domain-specific errors
  • Log errors appropriately with context information
  • Never expose sensitive information in error messages
Security Practices
  • Sanitize all user input
  • Use prepared statements for database queries
  • Implement CSRF protection for forms
  • Validate and escape output appropriately
Testing
  • Write unit tests for all business logic
  • Use PHPUnit for testing framework
  • Follow Arrange-Act-Assert pattern
  • Mock external dependencies in unit tests

Comments

Markdown supported