Standardize Markdown bullet points to use asterisks instead of hyphens
This commit is contained in:
116
.ai-assistant.md
116
.ai-assistant.md
@@ -6,50 +6,51 @@ This guide helps AI assistants understand the project structure, workflows, and
|
|||||||
|
|
||||||
This workspace may contain multiple repository folders. Always focus ONLY on the current repository you're working in and avoid hallucinating functionality from other repositories in the workspace.
|
This workspace may contain multiple repository folders. Always focus ONLY on the current repository you're working in and avoid hallucinating functionality from other repositories in the workspace.
|
||||||
|
|
||||||
- **Current Repository**: wp-plugin-starter-template-for-ai-coding
|
* **Current Repository**: wp-plugin-starter-template-for-ai-coding
|
||||||
- **Repository Purpose**: A comprehensive starter template for WordPress plugins with best practices for AI-assisted development
|
* **Repository Purpose**: A comprehensive starter template for WordPress plugins with best practices for AI-assisted development
|
||||||
- **Repository Scope**: All code changes, documentation, and functionality discussions should be limited to THIS repository only
|
* **Repository Scope**: All code changes, documentation, and functionality discussions should be limited to THIS repository only
|
||||||
|
|
||||||
## Project Overview
|
## Project Overview
|
||||||
|
|
||||||
- **Plugin Name**: WordPress Plugin Starter Template
|
* **Plugin Name**: WordPress Plugin Starter Template
|
||||||
- **Plugin Slug**: wp-plugin-starter-template
|
* **Plugin Slug**: wp-plugin-starter-template
|
||||||
- **Text Domain**: wp-plugin-starter-template
|
* **Text Domain**: wp-plugin-starter-template
|
||||||
- **Namespace**: WPALLSTARS\PluginStarterTemplate
|
* **Namespace**: WPALLSTARS\PluginStarterTemplate
|
||||||
- **Version**: 0.1.1
|
* **Version**: 0.1.10
|
||||||
- **Requires WordPress**: 5.0+
|
* **Requires WordPress**: 5.0+
|
||||||
- **Requires PHP**: 7.0+
|
* **Requires PHP**: 7.0+
|
||||||
- **License**: GPL-2.0+
|
* **License**: GPL-2.0+
|
||||||
|
|
||||||
## Repository Structure
|
## Repository Structure
|
||||||
|
|
||||||
- **wp-plugin-starter-template.php**: Main plugin file with plugin headers
|
* **wp-plugin-starter-template.php**: Main plugin file with plugin headers
|
||||||
- **includes/**: Core plugin functionality
|
* **includes/**: Core plugin functionality
|
||||||
- **plugin.php**: Main plugin class that initializes everything
|
* **plugin.php**: Main plugin class that initializes everything
|
||||||
- **core.php**: Core functionality class
|
* **core.php**: Core functionality class
|
||||||
- **updater.php**: Update mechanism for multiple sources
|
* **updater.php**: Update mechanism for multiple sources
|
||||||
- **admin/**: Admin-specific functionality
|
* **admin/**: Admin-specific functionality
|
||||||
- **lib/**: Admin classes
|
* **lib/**: Admin classes
|
||||||
- **css/**: Admin stylesheets
|
* **css/**: Admin stylesheets
|
||||||
- **js/**: Admin JavaScript files
|
* **js/**: Admin JavaScript files
|
||||||
- **languages/**: Translation files
|
* **languages/**: Translation files
|
||||||
- **.github/workflows/**: GitHub Actions workflows
|
* **.github/workflows/**: GitHub Actions workflows
|
||||||
- **.ai-workflows/**: Documentation for AI assistants
|
* **.ai-workflows/**: Documentation for AI assistants
|
||||||
- **.wiki/**: Wiki documentation templates
|
* **.wiki/**: Wiki documentation templates
|
||||||
|
|
||||||
## Coding Standards
|
## Coding Standards
|
||||||
|
|
||||||
This project follows the [WordPress Coding Standards](https://developer.wordpress.org/coding-standards/wordpress-coding-standards/):
|
This project follows the [WordPress Coding Standards](https://developer.wordpress.org/coding-standards/wordpress-coding-standards/):
|
||||||
|
|
||||||
- Use 4 spaces for indentation, not tabs (this is a project-specific override of WordPress standards)
|
* Use 4 spaces for indentation, not tabs (this is a project-specific override of WordPress standards)
|
||||||
- Follow WordPress naming conventions:
|
* Follow WordPress naming conventions:
|
||||||
- Class names: `Class_Name`
|
* Class names: `Class_Name`
|
||||||
- Function names: `function_name`
|
* Function names: `function_name`
|
||||||
- Variable names: `$variable_name`
|
* Variable names: `$variable_name`
|
||||||
- Use proper DocBlocks for all classes, methods, and functions
|
* Use proper DocBlocks for all classes, methods, and functions
|
||||||
- Ensure all user-facing strings are translatable
|
* Ensure all user-facing strings are translatable
|
||||||
- Validate and sanitize all inputs
|
* Validate and sanitize all inputs
|
||||||
- Escape all outputs
|
* Escape all outputs
|
||||||
|
* Use asterisks (*) for bullet points in all Markdown files, not hyphens (-)
|
||||||
|
|
||||||
### Code Quality Tools
|
### Code Quality Tools
|
||||||
|
|
||||||
@@ -76,10 +77,10 @@ This project uses several automated code quality tools to ensure high standards:
|
|||||||
```
|
```
|
||||||
|
|
||||||
5. **Continuous Integration Tools**: The project integrates with several code quality tools:
|
5. **Continuous Integration Tools**: The project integrates with several code quality tools:
|
||||||
- **CodeRabbit**: AI-powered code review tool
|
* **CodeRabbit**: AI-powered code review tool
|
||||||
- **CodeFactor**: Continuous code quality monitoring
|
* **CodeFactor**: Continuous code quality monitoring
|
||||||
- **Codacy**: Code quality and static analysis
|
* **Codacy**: Code quality and static analysis
|
||||||
- **SonarCloud**: Code quality and security analysis
|
* **SonarCloud**: Code quality and security analysis
|
||||||
|
|
||||||
Always run PHPCS and PHPCBF locally before committing code to ensure it meets the project's coding standards.
|
Always run PHPCS and PHPCBF locally before committing code to ensure it meets the project's coding standards.
|
||||||
|
|
||||||
@@ -103,15 +104,17 @@ When working in a multi-repository workspace, follow these guidelines to avoid c
|
|||||||
|
|
||||||
6. **Verify Before Implementation**: Before implementing or documenting a feature, verify that it actually exists in the current repository by checking the codebase.
|
6. **Verify Before Implementation**: Before implementing or documenting a feature, verify that it actually exists in the current repository by checking the codebase.
|
||||||
|
|
||||||
|
7. **Consistent Markdown Formatting**: Always use asterisks (*) for bullet points in Markdown files, not hyphens (-).
|
||||||
|
|
||||||
## Internationalization (i18n)
|
## Internationalization (i18n)
|
||||||
|
|
||||||
All user-facing strings should be translatable:
|
All user-facing strings should be translatable:
|
||||||
|
|
||||||
- Use `__()` for simple strings
|
* Use `__()` for simple strings
|
||||||
- Use `_e()` for echoed strings
|
* Use `_e()` for echoed strings
|
||||||
- Use `esc_html__()` for escaped strings
|
* Use `esc_html__()` for escaped strings
|
||||||
- Use `esc_html_e()` for escaped and echoed strings
|
* Use `esc_html_e()` for escaped and echoed strings
|
||||||
- Always use the plugin's text domain: `wp-plugin-starter-template`
|
* Always use the plugin's text domain: `wp-plugin-starter-template`
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
```php
|
```php
|
||||||
@@ -120,26 +123,27 @@ echo esc_html__('This is a translatable string', 'wp-plugin-starter-template');
|
|||||||
|
|
||||||
## Security Best Practices
|
## Security Best Practices
|
||||||
|
|
||||||
- Validate and sanitize all inputs
|
* Validate and sanitize all inputs
|
||||||
- Escape all outputs
|
* Escape all outputs
|
||||||
- Use nonces for form submissions
|
* Use nonces for form submissions
|
||||||
- Use capability checks for user actions
|
* Use capability checks for user actions
|
||||||
- Follow the principle of least privilege
|
* Follow the principle of least privilege
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
- Keep code comments up-to-date
|
* Keep code comments up-to-date
|
||||||
- Update README.md and readme.txt when adding new features
|
* Update README.md and readme.txt when adding new features
|
||||||
- Update wiki documentation in the `.wiki/` directory
|
* Update wiki documentation in the `.wiki/` directory
|
||||||
- Update changelog in both CHANGELOG.md and readme.txt
|
* Update changelog in both CHANGELOG.md and readme.txt
|
||||||
|
* Use asterisks (*) for bullet points in all Markdown files
|
||||||
|
|
||||||
## Git Workflow
|
## Git Workflow
|
||||||
|
|
||||||
- Create feature branches from `main`
|
* Create feature branches from `main`
|
||||||
- Use descriptive branch names (e.g., `feature/add-settings-page`)
|
* Use descriptive branch names (e.g., `feature/add-settings-page`)
|
||||||
- Make atomic commits with clear messages
|
* Make atomic commits with clear messages
|
||||||
- Create pull requests for review
|
* Create pull requests for review
|
||||||
- Tag releases with version numbers (e.g., `v1.0.0`)
|
* Tag releases with version numbers (e.g., `v1.0.0`)
|
||||||
|
|
||||||
## Developer Preferences
|
## Developer Preferences
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Code Review Guide for AI Assistants
|
# Code Review Guide for AI Assistants
|
||||||
|
|
||||||
This document provides guidance for AI assistants to help with code review for th plugin.
|
This document provides guidance for AI assistants to help with code review for this project.
|
||||||
|
|
||||||
## Code Review Checklist
|
## Code Review Checklist
|
||||||
|
|
||||||
@@ -8,54 +8,54 @@ When reviewing code, check for the following:
|
|||||||
|
|
||||||
### Functionality
|
### Functionality
|
||||||
|
|
||||||
- [ ] Does the code work as expected?
|
* [ ] Does the code work as expected?
|
||||||
- [ ] Does it handle edge cases appropriately?
|
* [ ] Does it handle edge cases appropriately?
|
||||||
- [ ] Are there any logical errors?
|
* [ ] Are there any logical errors?
|
||||||
- [ ] Is error handling implemented properly?
|
* [ ] Is error handling implemented properly?
|
||||||
|
|
||||||
### Code Quality
|
### Code Quality
|
||||||
|
|
||||||
- [ ] Does the code follow WordPress coding standards?
|
* [ ] Does the code follow WordPress coding standards?
|
||||||
- [ ] Is the code well-organized and easy to understand?
|
* [ ] Is the code well-organized and easy to understand?
|
||||||
- [ ] Are there any code smells (duplicate code, overly complex functions, etc.)?
|
* [ ] Are there any code smells (duplicate code, overly complex functions, etc.)?
|
||||||
- [ ] Are functions and variables named appropriately?
|
* [ ] Are functions and variables named appropriately?
|
||||||
- [ ] Are there appropriate comments and documentation?
|
* [ ] Are there appropriate comments and documentation?
|
||||||
|
|
||||||
### Security
|
### Security
|
||||||
|
|
||||||
- [ ] Is user input properly validated and sanitized?
|
* [ ] Is user input properly validated and sanitized?
|
||||||
- [ ] Is output properly escaped?
|
* [ ] Is output properly escaped?
|
||||||
- [ ] Are capability checks used for user actions?
|
* [ ] Are capability checks used for user actions?
|
||||||
- [ ] Are nonces used for form submissions?
|
* [ ] Are nonces used for form submissions?
|
||||||
- [ ] Are there any potential SQL injection vulnerabilities?
|
* [ ] Are there any potential SQL injection vulnerabilities?
|
||||||
- [ ] Are there any potential XSS vulnerabilities?
|
* [ ] Are there any potential XSS vulnerabilities?
|
||||||
|
|
||||||
### Performance
|
### Performance
|
||||||
|
|
||||||
- [ ] Are there any performance bottlenecks?
|
* [ ] Are there any performance bottlenecks?
|
||||||
- [ ] Are database queries optimized?
|
* [ ] Are database queries optimized?
|
||||||
- [ ] Is caching used appropriately?
|
* [ ] Is caching used appropriately?
|
||||||
- [ ] Are assets (CSS, JS) properly enqueued?
|
* [ ] Are assets (CSS, JS) properly enqueued?
|
||||||
|
|
||||||
### Compatibility
|
### Compatibility
|
||||||
|
|
||||||
- [ ] Is the code compatible with the minimum supported WordPress version (5.0)?
|
* [ ] Is the code compatible with the minimum supported WordPress version (5.0)?
|
||||||
- [ ] Is the code compatible with the minimum supported PHP version (7.0)?
|
* [ ] Is the code compatible with the minimum supported PHP version (7.0)?
|
||||||
- [ ] Are there any browser compatibility issues?
|
* [ ] Are there any browser compatibility issues?
|
||||||
- [ ] Are there any conflicts with other plugins?
|
* [ ] Are there any conflicts with other plugins?
|
||||||
|
|
||||||
### Internationalization
|
### Internationalization
|
||||||
|
|
||||||
- [ ] Are all user-facing strings translatable?
|
* [ ] Are all user-facing strings translatable?
|
||||||
- [ ] Is the correct text domain used?
|
* [ ] Is the correct text domain used?
|
||||||
- [ ] Are translation functions used correctly?
|
* [ ] Are translation functions used correctly?
|
||||||
|
|
||||||
### Accessibility
|
### Accessibility
|
||||||
|
|
||||||
- [ ] Does the code follow accessibility best practices?
|
* [ ] Does the code follow accessibility best practices?
|
||||||
- [ ] Are ARIA attributes used appropriately?
|
* [ ] Are ARIA attributes used appropriately?
|
||||||
- [ ] Is keyboard navigation supported?
|
* [ ] Is keyboard navigation supported?
|
||||||
- [ ] Is screen reader support implemented?
|
* [ ] Is screen reader support implemented?
|
||||||
|
|
||||||
## Automated Code Review Tools
|
## Automated Code Review Tools
|
||||||
|
|
||||||
@@ -65,33 +65,33 @@ This project uses several automated code review tools to maintain high code qual
|
|||||||
|
|
||||||
[CodeRabbit](https://www.coderabbit.ai/) is an AI-powered code review tool that provides automated feedback on pull requests.
|
[CodeRabbit](https://www.coderabbit.ai/) is an AI-powered code review tool that provides automated feedback on pull requests.
|
||||||
|
|
||||||
- **Integration**: Add the CodeRabbit GitHub App to your repository
|
* **Integration**: Add the CodeRabbit GitHub App to your repository
|
||||||
- **Benefits**: Provides AI-powered code reviews, identifies potential issues, and suggests improvements
|
* **Benefits**: Provides AI-powered code reviews, identifies potential issues, and suggests improvements
|
||||||
- **Usage**: CodeRabbit automatically reviews pull requests when they are created or updated
|
* **Usage**: CodeRabbit automatically reviews pull requests when they are created or updated
|
||||||
|
|
||||||
### 2. CodeFactor
|
### 2. CodeFactor
|
||||||
|
|
||||||
[CodeFactor](https://www.codefactor.io/) continuously monitors code quality and provides feedback on code style, complexity, and potential issues.
|
[CodeFactor](https://www.codefactor.io/) continuously monitors code quality and provides feedback on code style, complexity, and potential issues.
|
||||||
|
|
||||||
- **Integration**: Add the CodeFactor GitHub App to your repository
|
* **Integration**: Add the CodeFactor GitHub App to your repository
|
||||||
- **Benefits**: Provides a grade for your codebase, identifies issues, and tracks code quality over time
|
* **Benefits**: Provides a grade for your codebase, identifies issues, and tracks code quality over time
|
||||||
- **Usage**: CodeFactor automatically analyzes your codebase and provides feedback on pull requests
|
* **Usage**: CodeFactor automatically analyzes your codebase and provides feedback on pull requests
|
||||||
|
|
||||||
### 3. Codacy
|
### 3. Codacy
|
||||||
|
|
||||||
[Codacy](https://www.codacy.com/) is a code quality tool that provides static analysis, code coverage, and code duplication detection.
|
[Codacy](https://www.codacy.com/) is a code quality tool that provides static analysis, code coverage, and code duplication detection.
|
||||||
|
|
||||||
- **Integration**: Add the Codacy GitHub App to your repository
|
* **Integration**: Add the Codacy GitHub App to your repository
|
||||||
- **Benefits**: Provides a grade for your codebase, identifies issues, and tracks code quality over time
|
* **Benefits**: Provides a grade for your codebase, identifies issues, and tracks code quality over time
|
||||||
- **Usage**: Codacy automatically analyzes your codebase and provides feedback on pull requests
|
* **Usage**: Codacy automatically analyzes your codebase and provides feedback on pull requests
|
||||||
|
|
||||||
### 4. SonarCloud
|
### 4. SonarCloud
|
||||||
|
|
||||||
[SonarCloud](https://sonarcloud.io/) is a cloud-based code quality and security service that performs static code analysis to detect bugs, vulnerabilities, and code smells.
|
[SonarCloud](https://sonarcloud.io/) is a cloud-based code quality and security service that performs static code analysis to detect bugs, vulnerabilities, and code smells.
|
||||||
|
|
||||||
- **Integration**: Add the SonarCloud GitHub App to your repository
|
* **Integration**: Add the SonarCloud GitHub App to your repository
|
||||||
- **Benefits**: Provides detailed analysis of code quality, security vulnerabilities, and technical debt
|
* **Benefits**: Provides detailed analysis of code quality, security vulnerabilities, and technical debt
|
||||||
- **Usage**: SonarCloud automatically analyzes your codebase and provides feedback on pull requests
|
* **Usage**: SonarCloud automatically analyzes your codebase and provides feedback on pull requests
|
||||||
|
|
||||||
### Using AI Assistants with Code Review Tools
|
### Using AI Assistants with Code Review Tools
|
||||||
|
|
||||||
@@ -103,6 +103,16 @@ When you receive feedback from these code review tools, you can use AI assistant
|
|||||||
4. Implement the suggested fixes
|
4. Implement the suggested fixes
|
||||||
5. Commit the changes and verify that the issues are resolved
|
5. Commit the changes and verify that the issues are resolved
|
||||||
|
|
||||||
|
### Markdown Formatting Standards
|
||||||
|
|
||||||
|
When writing or updating Markdown files in this project, follow these standards:
|
||||||
|
|
||||||
|
* Always use asterisks (*) for bullet points, not hyphens (-)
|
||||||
|
* Use proper heading hierarchy (# for main title, ## for sections, etc.)
|
||||||
|
* Use code blocks with language specification for code examples
|
||||||
|
* Use relative links for internal documentation
|
||||||
|
* Include alt text for images
|
||||||
|
|
||||||
Example prompt for AI assistants:
|
Example prompt for AI assistants:
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -117,9 +127,9 @@ I received the following feedback from [Tool Name]. Please help me understand th
|
|||||||
|
|
||||||
Before reviewing code, understand:
|
Before reviewing code, understand:
|
||||||
|
|
||||||
- What problem is the code trying to solve?
|
* What problem is the code trying to solve?
|
||||||
- What are the requirements?
|
* What are the requirements?
|
||||||
- What are the constraints?
|
* What are the constraints?
|
||||||
|
|
||||||
### 2. Review the Code
|
### 2. Review the Code
|
||||||
|
|
||||||
@@ -129,54 +139,54 @@ Review the code with the checklist above in mind.
|
|||||||
|
|
||||||
When providing feedback:
|
When providing feedback:
|
||||||
|
|
||||||
- Be specific and clear
|
* Be specific and clear
|
||||||
- Explain why a change is needed
|
* Explain why a change is needed
|
||||||
- Provide examples or suggestions when possible
|
* Provide examples or suggestions when possible
|
||||||
- Prioritize feedback (critical issues vs. minor improvements)
|
* Prioritize feedback (critical issues vs. minor improvements)
|
||||||
- Be constructive and respectful
|
* Be constructive and respectful
|
||||||
|
|
||||||
### 4. Follow Up
|
### 4. Follow Up
|
||||||
|
|
||||||
After the code has been updated:
|
After the code has been updated:
|
||||||
|
|
||||||
- Review the changes
|
* Review the changes
|
||||||
- Verify that issues have been addressed
|
* Verify that issues have been addressed
|
||||||
- Provide additional feedback if necessary
|
* Provide additional feedback if necessary
|
||||||
|
|
||||||
## Common Issues to Look For
|
## Common Issues to Look For
|
||||||
|
|
||||||
### PHP Issues
|
### PHP Issues
|
||||||
|
|
||||||
- Undefined variables or functions
|
* Undefined variables or functions
|
||||||
- Incorrect function parameters
|
* Incorrect function parameters
|
||||||
- Missing return statements
|
* Missing return statements
|
||||||
- Improper error handling
|
* Improper error handling
|
||||||
- Inefficient loops or conditionals
|
* Inefficient loops or conditionals
|
||||||
- Hardcoded values that should be configurable
|
* Hardcoded values that should be configurable
|
||||||
|
|
||||||
### WordPress-Specific Issues
|
### WordPress-Specific Issues
|
||||||
|
|
||||||
- Incorrect hook usage
|
* Incorrect hook usage
|
||||||
- Missing or incorrect nonces
|
* Missing or incorrect nonces
|
||||||
- Missing capability checks
|
* Missing capability checks
|
||||||
- Direct database queries instead of using WordPress functions
|
* Direct database queries instead of using WordPress functions
|
||||||
- Improper enqueuing of scripts and styles
|
* Improper enqueuing of scripts and styles
|
||||||
- Not using WordPress functions for common tasks
|
* Not using WordPress functions for common tasks
|
||||||
|
|
||||||
### JavaScript Issues
|
### JavaScript Issues
|
||||||
|
|
||||||
- Undefined variables or functions
|
* Undefined variables or functions
|
||||||
- Event listener memory leaks
|
* Event listener memory leaks
|
||||||
- jQuery conflicts
|
* jQuery conflicts
|
||||||
- Browser compatibility issues
|
* Browser compatibility issues
|
||||||
- Missing error handling
|
* Missing error handling
|
||||||
|
|
||||||
### CSS Issues
|
### CSS Issues
|
||||||
|
|
||||||
- Browser compatibility issues
|
* Browser compatibility issues
|
||||||
- Specificity issues
|
* Specificity issues
|
||||||
- Unused styles
|
* Unused styles
|
||||||
- Overriding WordPress admin styles inappropriately
|
* Overriding WordPress admin styles inappropriately
|
||||||
|
|
||||||
## Example Feedback
|
## Example Feedback
|
||||||
|
|
||||||
|
|||||||
@@ -8,40 +8,40 @@ This plugin follows the [WordPress Coding Standards](https://developer.wordpress
|
|||||||
|
|
||||||
### File Structure
|
### File Structure
|
||||||
|
|
||||||
- Each PHP file should begin with the PHP opening tag `<?php` (no closing tag)
|
* Each PHP file should begin with the PHP opening tag `<?php` (no closing tag)
|
||||||
- Files should use the Unix line endings (LF)
|
* Files should use the Unix line endings (LF)
|
||||||
- Files should be encoded in UTF-8 without BOM
|
* Files should be encoded in UTF-8 without BOM
|
||||||
|
|
||||||
### Naming Conventions
|
### Naming Conventions
|
||||||
|
|
||||||
- **Classes**: Use `PascalCase` for class names
|
* **Classes**: Use `PascalCase` for class names
|
||||||
```php
|
```php
|
||||||
class MyClassName {}
|
class MyClassName {}
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Methods and Functions**: Use `snake_case` for method and function names
|
* **Methods and Functions**: Use `snake_case` for method and function names
|
||||||
```php
|
```php
|
||||||
function my_function_name() {}
|
function my_function_name() {}
|
||||||
public function my_method_name() {}
|
public function my_method_name() {}
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Variables**: Use `snake_case` for variable names
|
* **Variables**: Use `snake_case` for variable names
|
||||||
```php
|
```php
|
||||||
$my_variable_name = 'value';
|
$my_variable_name = 'value';
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
* **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
||||||
```php
|
```php
|
||||||
define('MY_CONSTANT', 'value');
|
define('MY_CONSTANT', 'value');
|
||||||
const MY_CLASS_CONSTANT = 'value';
|
const MY_CLASS_CONSTANT = 'value';
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Namespaces**: Use `PascalCase` for namespace segments
|
* **Namespaces**: Use `PascalCase` for namespace segments
|
||||||
```php
|
```php
|
||||||
namespace WPALLSTARS\PluginStarterTemplate;
|
namespace WPALLSTARS\PluginStarterTemplate;
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Hooks**: Prefix hooks with the plugin's prefix
|
* **Hooks**: Prefix hooks with the plugin's prefix
|
||||||
```php
|
```php
|
||||||
do_action('wpst_hook_name');
|
do_action('wpst_hook_name');
|
||||||
apply_filters('wpst_filter_name', $value);
|
apply_filters('wpst_filter_name', $value);
|
||||||
@@ -49,10 +49,10 @@ This plugin follows the [WordPress Coding Standards](https://developer.wordpress
|
|||||||
|
|
||||||
### Indentation and Formatting
|
### Indentation and Formatting
|
||||||
|
|
||||||
- Use 4 spaces for indentation (not tabs)
|
* Use 4 spaces for indentation (not tabs)
|
||||||
- Opening braces for classes and functions should be on the same line
|
* Opening braces for classes and functions should be on the same line
|
||||||
- Control structures should have one space between the statement and the opening parenthesis
|
* Control structures should have one space between the statement and the opening parenthesis
|
||||||
- Each line should be no longer than 100 characters
|
* Each line should be no longer than 100 characters
|
||||||
|
|
||||||
```php
|
```php
|
||||||
if ($condition) {
|
if ($condition) {
|
||||||
@@ -66,8 +66,8 @@ if ($condition) {
|
|||||||
|
|
||||||
### Documentation
|
### Documentation
|
||||||
|
|
||||||
- All classes, methods, and functions should be documented using PHPDoc
|
* All classes, methods, and functions should be documented using PHPDoc
|
||||||
- Include a description, parameters, return values, and exceptions
|
* Include a description, parameters, return values, and exceptions
|
||||||
|
|
||||||
```php
|
```php
|
||||||
/**
|
/**
|
||||||
@@ -87,9 +87,9 @@ function my_function($param1, $param2) {
|
|||||||
|
|
||||||
### Object-Oriented Programming
|
### Object-Oriented Programming
|
||||||
|
|
||||||
- Each class should have a single responsibility
|
* Each class should have a single responsibility
|
||||||
- Use visibility declarations for all properties and methods (public, protected, private)
|
* Use visibility declarations for all properties and methods (public, protected, private)
|
||||||
- Use type hints for parameters and return types when possible
|
* Use type hints for parameters and return types when possible
|
||||||
|
|
||||||
```php
|
```php
|
||||||
class MyClass {
|
class MyClass {
|
||||||
@@ -118,22 +118,22 @@ This plugin follows the [WordPress JavaScript Coding Standards](https://develope
|
|||||||
|
|
||||||
### Naming Conventions
|
### Naming Conventions
|
||||||
|
|
||||||
- **Variables and Functions**: Use `camelCase` for variable and function names
|
* **Variables and Functions**: Use `camelCase` for variable and function names
|
||||||
```javascript
|
```javascript
|
||||||
var myVariableName = 'value';
|
var myVariableName = 'value';
|
||||||
function myFunctionName() {}
|
function myFunctionName() {}
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
* **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
||||||
```javascript
|
```javascript
|
||||||
var MY_CONSTANT = 'value';
|
var MY_CONSTANT = 'value';
|
||||||
```
|
```
|
||||||
|
|
||||||
### Indentation and Formatting
|
### Indentation and Formatting
|
||||||
|
|
||||||
- Use 4 spaces for indentation (not tabs)
|
* Use 4 spaces for indentation (not tabs)
|
||||||
- Opening braces should be on the same line as the statement
|
* Opening braces should be on the same line as the statement
|
||||||
- Each line should be no longer than 100 characters
|
* Each line should be no longer than 100 characters
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
if (condition) {
|
if (condition) {
|
||||||
@@ -147,7 +147,7 @@ if (condition) {
|
|||||||
|
|
||||||
### Documentation
|
### Documentation
|
||||||
|
|
||||||
- Use JSDoc for documenting functions and objects
|
* Use JSDoc for documenting functions and objects
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
/**
|
/**
|
||||||
@@ -168,9 +168,9 @@ This plugin follows the [WordPress CSS Coding Standards](https://developer.wordp
|
|||||||
|
|
||||||
### Naming Conventions
|
### Naming Conventions
|
||||||
|
|
||||||
- Use lowercase for selectors
|
* Use lowercase for selectors
|
||||||
- Use hyphens to separate words in class and ID names
|
* Use hyphens to separate words in class and ID names
|
||||||
- Prefix classes and IDs with the plugin's prefix
|
* Prefix classes and IDs with the plugin's prefix
|
||||||
|
|
||||||
```css
|
```css
|
||||||
.wpst-container {
|
.wpst-container {
|
||||||
@@ -184,11 +184,11 @@ This plugin follows the [WordPress CSS Coding Standards](https://developer.wordp
|
|||||||
|
|
||||||
### Indentation and Formatting
|
### Indentation and Formatting
|
||||||
|
|
||||||
- Use 4 spaces for indentation (not tabs)
|
* Use 4 spaces for indentation (not tabs)
|
||||||
- Each property should be on its own line
|
* Each property should be on its own line
|
||||||
- Include a space after the colon in property declarations
|
* Include a space after the colon in property declarations
|
||||||
- End each declaration with a semicolon
|
* End each declaration with a semicolon
|
||||||
- Use single quotes for attribute selectors and property values
|
* Use single quotes for attribute selectors and property values
|
||||||
|
|
||||||
```css
|
```css
|
||||||
.wpst-container {
|
.wpst-container {
|
||||||
@@ -229,54 +229,55 @@ This plugin uses automated tools to enforce coding standards:
|
|||||||
This project integrates with several code quality tools that automatically analyze your code when you create a pull request. These tools are free for public repositories and should be integrated into any new repositories based on this template.
|
This project integrates with several code quality tools that automatically analyze your code when you create a pull request. These tools are free for public repositories and should be integrated into any new repositories based on this template.
|
||||||
|
|
||||||
1. **CodeRabbit**: AI-powered code review tool
|
1. **CodeRabbit**: AI-powered code review tool
|
||||||
- Provides automated feedback on pull requests
|
* Provides automated feedback on pull requests
|
||||||
- Identifies potential issues and suggests improvements
|
* Identifies potential issues and suggests improvements
|
||||||
- [Website](https://www.coderabbit.ai/)
|
* [Website](https://www.coderabbit.ai/)
|
||||||
|
|
||||||
2. **CodeFactor**: Continuous code quality monitoring
|
2. **CodeFactor**: Continuous code quality monitoring
|
||||||
- Provides a grade for your codebase
|
* Provides a grade for your codebase
|
||||||
- Identifies issues related to code style, complexity, and potential bugs
|
* Identifies issues related to code style, complexity, and potential bugs
|
||||||
- Tracks code quality over time
|
* Tracks code quality over time
|
||||||
- [Website](https://www.codefactor.io/)
|
* [Website](https://www.codefactor.io/)
|
||||||
|
|
||||||
3. **Codacy**: Code quality and static analysis
|
3. **Codacy**: Code quality and static analysis
|
||||||
- Provides a grade for your codebase
|
* Provides a grade for your codebase
|
||||||
- Identifies issues related to code style, security, and performance
|
* Identifies issues related to code style, security, and performance
|
||||||
- Tracks code quality over time
|
* Tracks code quality over time
|
||||||
- [Website](https://www.codacy.com/)
|
* [Website](https://www.codacy.com/)
|
||||||
|
|
||||||
4. **SonarCloud**: Code quality and security analysis
|
4. **SonarCloud**: Code quality and security analysis
|
||||||
- Provides detailed analysis of code quality
|
* Provides detailed analysis of code quality
|
||||||
- Identifies security vulnerabilities and technical debt
|
* Identifies security vulnerabilities and technical debt
|
||||||
- Tracks code quality over time
|
* Tracks code quality over time
|
||||||
- [Website](https://sonarcloud.io/)
|
* [Website](https://sonarcloud.io/)
|
||||||
|
|
||||||
### How to Pass Code Quality Checks
|
### How to Pass Code Quality Checks
|
||||||
|
|
||||||
To ensure your code passes the quality checks from these tools, follow these guidelines:
|
To ensure your code passes the quality checks from these tools, follow these guidelines:
|
||||||
|
|
||||||
1. **Run Local Checks First**
|
1. **Run Local Checks First**
|
||||||
- Before pushing your code, run PHPCS and PHPCBF locally
|
* Before pushing your code, run PHPCS and PHPCBF locally
|
||||||
- Fix any issues identified by these tools
|
* Fix any issues identified by these tools
|
||||||
|
|
||||||
2. **Address Common Issues**
|
2. **Address Common Issues**
|
||||||
- **Indentation**: Use 4 spaces for indentation (not tabs)
|
* **Indentation**: Use 4 spaces for indentation (not tabs)
|
||||||
- **Line Length**: Keep lines under 100 characters
|
* **Line Length**: Keep lines under 100 characters
|
||||||
- **Naming Conventions**: Follow WordPress naming conventions
|
* **Naming Conventions**: Follow WordPress naming conventions
|
||||||
- **Documentation**: Add PHPDoc comments to classes, methods, and functions
|
* **Documentation**: Add PHPDoc comments to classes, methods, and functions
|
||||||
- **Error Handling**: Implement proper error handling
|
* **Error Handling**: Implement proper error handling
|
||||||
- **Security**: Validate and sanitize input, escape output
|
* **Security**: Validate and sanitize input, escape output
|
||||||
|
* **Markdown**: Use asterisks (*) for bullet points, not hyphens (-)
|
||||||
|
|
||||||
3. **Using AI Assistants with Code Quality Tools**
|
3. **Using AI Assistants with Code Quality Tools**
|
||||||
- When you receive feedback from code quality tools, you can use AI assistants to help address the issues
|
* When you receive feedback from code quality tools, you can use AI assistants to help address the issues
|
||||||
- Copy the output from the code quality tool and paste it into your AI assistant chat
|
* Copy the output from the code quality tool and paste it into your AI assistant chat
|
||||||
- Ask the AI to help you understand and fix the issues
|
* Ask the AI to help you understand and fix the issues
|
||||||
- Example prompt: "I received the following feedback from [Tool Name]. Please help me understand these issues and suggest fixes: [Paste the tool output here]"
|
* Example prompt: "I received the following feedback from [Tool Name]. Please help me understand these issues and suggest fixes: [Paste the tool output here]"
|
||||||
|
|
||||||
4. **Iterative Improvement**
|
4. **Iterative Improvement**
|
||||||
- Address issues one at a time, starting with the most critical
|
* Address issues one at a time, starting with the most critical
|
||||||
- Commit and push your changes to see if they resolve the issues
|
* Commit and push your changes to see if they resolve the issues
|
||||||
- Continue this process until all issues are resolved
|
* Continue this process until all issues are resolved
|
||||||
|
|
||||||
## Conclusion
|
## Conclusion
|
||||||
|
|
||||||
|
|||||||
@@ -8,40 +8,40 @@ This plugin follows the [WordPress Coding Standards](https://developer.wordpress
|
|||||||
|
|
||||||
### File Structure
|
### File Structure
|
||||||
|
|
||||||
- Each PHP file should begin with the PHP opening tag `<?php` (no closing tag)
|
* Each PHP file should begin with the PHP opening tag `<?php` (no closing tag)
|
||||||
- Files should use the Unix line endings (LF)
|
* Files should use the Unix line endings (LF)
|
||||||
- Files should be encoded in UTF-8 without BOM
|
* Files should be encoded in UTF-8 without BOM
|
||||||
|
|
||||||
### Naming Conventions
|
### Naming Conventions
|
||||||
|
|
||||||
- **Classes**: Use `PascalCase` for class names
|
* **Classes**: Use `PascalCase` for class names
|
||||||
```php
|
```php
|
||||||
class MyClassName {}
|
class MyClassName {}
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Methods and Functions**: Use `snake_case` for method and function names
|
* **Methods and Functions**: Use `snake_case` for method and function names
|
||||||
```php
|
```php
|
||||||
function my_function_name() {}
|
function my_function_name() {}
|
||||||
public function my_method_name() {}
|
public function my_method_name() {}
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Variables**: Use `snake_case` for variable names
|
* **Variables**: Use `snake_case` for variable names
|
||||||
```php
|
```php
|
||||||
$my_variable_name = 'value';
|
$my_variable_name = 'value';
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
* **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
||||||
```php
|
```php
|
||||||
define('MY_CONSTANT', 'value');
|
define('MY_CONSTANT', 'value');
|
||||||
const MY_CLASS_CONSTANT = 'value';
|
const MY_CLASS_CONSTANT = 'value';
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Namespaces**: Use `PascalCase` for namespace segments
|
* **Namespaces**: Use `PascalCase` for namespace segments
|
||||||
```php
|
```php
|
||||||
namespace WPALLSTARS\PluginStarterTemplate;
|
namespace WPALLSTARS\PluginStarterTemplate;
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Hooks**: Prefix hooks with the plugin's prefix
|
* **Hooks**: Prefix hooks with the plugin's prefix
|
||||||
```php
|
```php
|
||||||
do_action('wpst_hook_name');
|
do_action('wpst_hook_name');
|
||||||
apply_filters('wpst_filter_name', $value);
|
apply_filters('wpst_filter_name', $value);
|
||||||
@@ -49,10 +49,10 @@ This plugin follows the [WordPress Coding Standards](https://developer.wordpress
|
|||||||
|
|
||||||
### Indentation and Formatting
|
### Indentation and Formatting
|
||||||
|
|
||||||
- Use 4 spaces for indentation (not tabs)
|
* Use 4 spaces for indentation (not tabs)
|
||||||
- Opening braces for classes and functions should be on the same line
|
* Opening braces for classes and functions should be on the same line
|
||||||
- Control structures should have one space between the statement and the opening parenthesis
|
* Control structures should have one space between the statement and the opening parenthesis
|
||||||
- Each line should be no longer than 100 characters
|
* Each line should be no longer than 100 characters
|
||||||
|
|
||||||
```php
|
```php
|
||||||
if ($condition) {
|
if ($condition) {
|
||||||
@@ -66,8 +66,8 @@ if ($condition) {
|
|||||||
|
|
||||||
### Documentation
|
### Documentation
|
||||||
|
|
||||||
- All classes, methods, and functions should be documented using PHPDoc
|
* All classes, methods, and functions should be documented using PHPDoc
|
||||||
- Include a description, parameters, return values, and exceptions
|
* Include a description, parameters, return values, and exceptions
|
||||||
|
|
||||||
```php
|
```php
|
||||||
/**
|
/**
|
||||||
@@ -87,9 +87,9 @@ function my_function($param1, $param2) {
|
|||||||
|
|
||||||
### Object-Oriented Programming
|
### Object-Oriented Programming
|
||||||
|
|
||||||
- Each class should have a single responsibility
|
* Each class should have a single responsibility
|
||||||
- Use visibility declarations for all properties and methods (public, protected, private)
|
* Use visibility declarations for all properties and methods (public, protected, private)
|
||||||
- Use type hints for parameters and return types when possible
|
* Use type hints for parameters and return types when possible
|
||||||
|
|
||||||
```php
|
```php
|
||||||
class MyClass {
|
class MyClass {
|
||||||
@@ -118,22 +118,22 @@ This plugin follows the [WordPress JavaScript Coding Standards](https://develope
|
|||||||
|
|
||||||
### Naming Conventions
|
### Naming Conventions
|
||||||
|
|
||||||
- **Variables and Functions**: Use `camelCase` for variable and function names
|
* **Variables and Functions**: Use `camelCase` for variable and function names
|
||||||
```javascript
|
```javascript
|
||||||
var myVariableName = 'value';
|
var myVariableName = 'value';
|
||||||
function myFunctionName() {}
|
function myFunctionName() {}
|
||||||
```
|
```
|
||||||
|
|
||||||
- **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
* **Constants**: Use `UPPERCASE_WITH_UNDERSCORES` for constants
|
||||||
```javascript
|
```javascript
|
||||||
var MY_CONSTANT = 'value';
|
var MY_CONSTANT = 'value';
|
||||||
```
|
```
|
||||||
|
|
||||||
### Indentation and Formatting
|
### Indentation and Formatting
|
||||||
|
|
||||||
- Use 4 spaces for indentation (not tabs)
|
* Use 4 spaces for indentation (not tabs)
|
||||||
- Opening braces should be on the same line as the statement
|
* Opening braces should be on the same line as the statement
|
||||||
- Each line should be no longer than 100 characters
|
* Each line should be no longer than 100 characters
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
if (condition) {
|
if (condition) {
|
||||||
@@ -147,7 +147,7 @@ if (condition) {
|
|||||||
|
|
||||||
### Documentation
|
### Documentation
|
||||||
|
|
||||||
- Use JSDoc for documenting functions and objects
|
* Use JSDoc for documenting functions and objects
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
/**
|
/**
|
||||||
@@ -168,9 +168,9 @@ This plugin follows the [WordPress CSS Coding Standards](https://developer.wordp
|
|||||||
|
|
||||||
### Naming Conventions
|
### Naming Conventions
|
||||||
|
|
||||||
- Use lowercase for selectors
|
* Use lowercase for selectors
|
||||||
- Use hyphens to separate words in class and ID names
|
* Use hyphens to separate words in class and ID names
|
||||||
- Prefix classes and IDs with the plugin's prefix
|
* Prefix classes and IDs with the plugin's prefix
|
||||||
|
|
||||||
```css
|
```css
|
||||||
.wpst-container {
|
.wpst-container {
|
||||||
@@ -184,11 +184,11 @@ This plugin follows the [WordPress CSS Coding Standards](https://developer.wordp
|
|||||||
|
|
||||||
### Indentation and Formatting
|
### Indentation and Formatting
|
||||||
|
|
||||||
- Use 4 spaces for indentation (not tabs)
|
* Use 4 spaces for indentation (not tabs)
|
||||||
- Each property should be on its own line
|
* Each property should be on its own line
|
||||||
- Include a space after the colon in property declarations
|
* Include a space after the colon in property declarations
|
||||||
- End each declaration with a semicolon
|
* End each declaration with a semicolon
|
||||||
- Use single quotes for attribute selectors and property values
|
* Use single quotes for attribute selectors and property values
|
||||||
|
|
||||||
```css
|
```css
|
||||||
.wpst-container {
|
.wpst-container {
|
||||||
@@ -229,54 +229,55 @@ This plugin uses automated tools to enforce coding standards:
|
|||||||
This project integrates with several code quality tools that automatically analyze your code when you create a pull request. These tools are free for public repositories and should be integrated into any new repositories based on this template.
|
This project integrates with several code quality tools that automatically analyze your code when you create a pull request. These tools are free for public repositories and should be integrated into any new repositories based on this template.
|
||||||
|
|
||||||
1. **CodeRabbit**: AI-powered code review tool
|
1. **CodeRabbit**: AI-powered code review tool
|
||||||
- Provides automated feedback on pull requests
|
* Provides automated feedback on pull requests
|
||||||
- Identifies potential issues and suggests improvements
|
* Identifies potential issues and suggests improvements
|
||||||
- [Website](https://www.coderabbit.ai/)
|
* [Website](https://www.coderabbit.ai/)
|
||||||
|
|
||||||
2. **CodeFactor**: Continuous code quality monitoring
|
2. **CodeFactor**: Continuous code quality monitoring
|
||||||
- Provides a grade for your codebase
|
* Provides a grade for your codebase
|
||||||
- Identifies issues related to code style, complexity, and potential bugs
|
* Identifies issues related to code style, complexity, and potential bugs
|
||||||
- Tracks code quality over time
|
* Tracks code quality over time
|
||||||
- [Website](https://www.codefactor.io/)
|
* [Website](https://www.codefactor.io/)
|
||||||
|
|
||||||
3. **Codacy**: Code quality and static analysis
|
3. **Codacy**: Code quality and static analysis
|
||||||
- Provides a grade for your codebase
|
* Provides a grade for your codebase
|
||||||
- Identifies issues related to code style, security, and performance
|
* Identifies issues related to code style, security, and performance
|
||||||
- Tracks code quality over time
|
* Tracks code quality over time
|
||||||
- [Website](https://www.codacy.com/)
|
* [Website](https://www.codacy.com/)
|
||||||
|
|
||||||
4. **SonarCloud**: Code quality and security analysis
|
4. **SonarCloud**: Code quality and security analysis
|
||||||
- Provides detailed analysis of code quality
|
* Provides detailed analysis of code quality
|
||||||
- Identifies security vulnerabilities and technical debt
|
* Identifies security vulnerabilities and technical debt
|
||||||
- Tracks code quality over time
|
* Tracks code quality over time
|
||||||
- [Website](https://sonarcloud.io/)
|
* [Website](https://sonarcloud.io/)
|
||||||
|
|
||||||
### How to Pass Code Quality Checks
|
### How to Pass Code Quality Checks
|
||||||
|
|
||||||
To ensure your code passes the quality checks from these tools, follow these guidelines:
|
To ensure your code passes the quality checks from these tools, follow these guidelines:
|
||||||
|
|
||||||
1. **Run Local Checks First**
|
1. **Run Local Checks First**
|
||||||
- Before pushing your code, run PHPCS and PHPCBF locally
|
* Before pushing your code, run PHPCS and PHPCBF locally
|
||||||
- Fix any issues identified by these tools
|
* Fix any issues identified by these tools
|
||||||
|
|
||||||
2. **Address Common Issues**
|
2. **Address Common Issues**
|
||||||
- **Indentation**: Use 4 spaces for indentation (not tabs)
|
* **Indentation**: Use 4 spaces for indentation (not tabs)
|
||||||
- **Line Length**: Keep lines under 100 characters
|
* **Line Length**: Keep lines under 100 characters
|
||||||
- **Naming Conventions**: Follow WordPress naming conventions
|
* **Naming Conventions**: Follow WordPress naming conventions
|
||||||
- **Documentation**: Add PHPDoc comments to classes, methods, and functions
|
* **Documentation**: Add PHPDoc comments to classes, methods, and functions
|
||||||
- **Error Handling**: Implement proper error handling
|
* **Error Handling**: Implement proper error handling
|
||||||
- **Security**: Validate and sanitize input, escape output
|
* **Security**: Validate and sanitize input, escape output
|
||||||
|
* **Markdown**: Use asterisks (*) for bullet points, not hyphens (-)
|
||||||
|
|
||||||
3. **Using AI Assistants with Code Quality Tools**
|
3. **Using AI Assistants with Code Quality Tools**
|
||||||
- When you receive feedback from code quality tools, you can use AI assistants to help address the issues
|
* When you receive feedback from code quality tools, you can use AI assistants to help address the issues
|
||||||
- Copy the output from the code quality tool and paste it into your AI assistant chat
|
* Copy the output from the code quality tool and paste it into your AI assistant chat
|
||||||
- Ask the AI to help you understand and fix the issues
|
* Ask the AI to help you understand and fix the issues
|
||||||
- Example prompt: "I received the following feedback from [Tool Name]. Please help me understand these issues and suggest fixes: [Paste the tool output here]"
|
* Example prompt: "I received the following feedback from [Tool Name]. Please help me understand these issues and suggest fixes: [Paste the tool output here]"
|
||||||
|
|
||||||
4. **Iterative Improvement**
|
4. **Iterative Improvement**
|
||||||
- Address issues one at a time, starting with the most critical
|
* Address issues one at a time, starting with the most critical
|
||||||
- Commit and push your changes to see if they resolve the issues
|
* Commit and push your changes to see if they resolve the issues
|
||||||
- Continue this process until all issues are resolved
|
* Continue this process until all issues are resolved
|
||||||
|
|
||||||
## Conclusion
|
## Conclusion
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user