Skip to content

Latest commit

 

History

History
186 lines (132 loc) · 5.82 KB

File metadata and controls

186 lines (132 loc) · 5.82 KB

Contributing Guidelines (V2)

Thank you for taking the time to contribute to this personal portfolio repository. Contributions help improve the project and make it even better. Below you will find guidelines to ensure a productive and respectful collaboration experience. For further details on standards and practices, you may also reference the documentation for Artify-AI and snips.dev.


Table of Contents

  1. Code of Conduct
  2. Ways to Contribute
  3. Development and Testing Guidelines
  4. Reporting Issues and Proposing Enhancements
  5. Submitting Pull Requests
  6. Commit Message Conventions
  7. Style Guidelines
  8. Templates
  9. License

Code of Conduct

This project follows a Code of Conduct to foster a welcoming and inclusive community. Please review the CODE_OF_CONDUCT.md file for details on expectations for participant behavior.


Ways to Contribute

Here are several ways through which you can contribute:

  • Reporting Issues: If you find a bug or have a suggestion, please open an issue.
  • Submitting Enhancements: Propose new features or improvements.
  • Writing or Improving Code: Fork the repository, develop your feature or fix, and open a pull request.
  • Enhancing Documentation: Improve the README, guides, or any documentation.
  • Providing Feedback: Share ideas on how to improve the project.

Development and Testing Guidelines

Coherent development practices are crucial for maintaining a high-quality codebase. Please follow these steps when contributing code:

  1. Fork and Clone:

    git clone https://github.com/<your_username>/<repository_name>.git
    cd <repository_name>
  2. Installation and Setup:

    • Follow the setup instructions in the README.md to prepare your development environment.
  3. Branching Strategy:

    • Create a new branch for each feature or bugfix:
      git checkout -b feature/brief-description
    • Use descriptive names for branches (e.g., fix/navbar-bug, feature/add-new-section).
  4. Code and Test:

    • Write clear, readable code adhering to the project's coding conventions.
    • Include unit tests or integration tests when applicable.
    • Validate your changes by running project-specific linters and test suites:
      npm run lint
      npm test
  5. Documentation:

    • Update relevant documentation to reflect your changes.
    • Refer to the documentation style in Artify-AI and snips.dev for best practices.

Reporting Issues and Proposing Enhancements

When opening an issue:

  • Search for Duplicates: Ensure the issue or feature isn’t already reported.
  • Provide Detailed Information:
    • Clear and concise title.
    • Steps to reproduce (for bugs).
    • Expected and actual outcomes.
    • Screenshots or logs if applicable.

For feature proposals, outline the problem statement, your proposed solution, and potential alternatives.


Submitting Pull Requests

Before submitting a pull request:

  1. Fork and Update:
    • Fork the repository and sync with the latest changes on the main branch.
  2. Create a Feature Branch:
    • Develop your changes in a new branch.
  3. Testing:
    • Run all tests and ensure no regressions are introduced.
  4. Pull Request Guidelines:
    • Open a pull request against the main branch.
    • Include a detailed description of your changes and reference any related issues.
    • Address any review feedback promptly.

Commit Message Conventions

Clear commit messages help maintain a useful project history. Please follow the Conventional Commits style:

<type>(<scope>): <short description>

Examples:

  • feat(home): add new hero banner
  • fix(contact): resolve form validation error
  • docs(readme): enhance contributing guidelines

Commit types include:

  • feat: New features
  • fix: Bug fixes
  • docs: Documentation changes
  • style: Code formatting and style adjustments
  • refactor: Code improvements that do not change functionality
  • test: Adding or modifying tests
  • chore: Miscellaneous tasks (e.g., dependency updates)

Style Guidelines

Consistency is key. Please adhere to the following style practices:

  • Coding Standards: Follow established standards suitable for the tech stack (e.g., HTML5, CSS3, JavaScript ES6+).
  • Linting/Formatting: Use provided linters and formatters prior to commits.
  • Code Comments: Write clear and concise comments where necessary.
  • Reference: For style inspirations, refer to best practices documented in Artify-AI and snips.dev.

Templates

To streamline contributions, use the following templates:

  • Issue Template:

    **Description:**
    A clear and concise description of the issue.
    
    **Steps to Reproduce:**
    1. Step one
    2. Step two
    
    **Expected Behavior:**
    What you expected to happen.
    
    **Actual Behavior:**
    What actually happened.
    
    **Screenshots/Logs:**
    (If applicable)
  • Pull Request Template:

    **Description:**
    A detailed description of the changes made.
    
    **Related Issues:**
    (If applicable, reference related issues here.)
    
    **Testing:**
    Steps taken to test the changes.
    
    **Additional Notes:**
    Any additional context or information.

License

When you submit contributions, they are automatically licensed under the repository’s MIT License.


Thank you for your contributions. Your involvement helps enhance the quality, security, and usability of this project, and supports a collaborative community.