Skip to content

ArtisanPack-UI/code-style

Repository files navigation

ArtisanPack UI Code Standards

A custom PHP code style standard based on PHPStorm settings. This package provides custom sniffs for PHP_CodeSniffer that enforce consistent code style across your PHP projects.

Installation

You can install the ArtisanPack UI Code Standards package by running the following composer command:

composer require artisanpack-ui/code-style --dev

Usage

Configuration

After installation, you can create a phpcs.xml file in your project root with the following content:

<?xml version="1.0"?>
<ruleset name="YourProjectStandard">
    <description>Your project's coding standard</description>

    <!-- Use ArtisanPackUI standard -->
    <rule ref="ArtisanPackUIStandard"/>

    <!-- Specify paths to check -->
    <file>app</file>
    <file>src</file>
    <file>tests</file>

    <!-- Exclude paths -->
    <exclude-pattern>*/vendor/*</exclude-pattern>
    <exclude-pattern>*/node_modules/*</exclude-pattern>
</ruleset>

Running PHP_CodeSniffer

You can run PHP_CodeSniffer with the ArtisanPackUI standard using the following command:

./vendor/bin/phpcs --standard=ArtisanPackUIStandard .

Or if you've set up a custom phpcs.xml file:

./vendor/bin/phpcs

Custom Sniffs

This package includes 16+ custom sniffs covering:

  • Formatting: Indentation, braces, spacing, alignment
  • Code Structure: Classes, control structures, imports, arrays
  • Naming Conventions: PascalCase for classes, camelCase for functions/variables, snake_case for table columns
  • Security: Input validation, output escaping (see Security Sniffs)
  • Best Practices: Yoda conditionals, type declarations, disallowed functions

For complete details on all sniffs with examples, see the Custom Sniffs Reference.

Customizing Sniffs

You can customize the behavior of the sniffs by overriding their properties in your phpcs.xml file:

<rule ref="ArtisanPackUI.Formatting.Indentation">
    <properties>
        <property name="indent" value="2"/>
    </properties>
</rule>

Documentation

📚 Complete Documentation - Comprehensive guides and references

Quick Links

Contributing

🤝 Contributing Guidelines - How to contribute to the project

As an open source project, this package is open to contributions from anyone. Whether you want to report bugs, suggest features, improve documentation, or contribute code, please read through our comprehensive contributing guidelines.

Additional Resources

About

Enforce a clean and consistent code style across your entire project automatically. Spend less time debating formatting and more time writing incredible code that's readable for everyone. This package automates formatting consistency across projects, reducing time spent on style discussions while improving code readability across teams.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors