Skip to content

Latest commit

 

History

History
183 lines (130 loc) · 7.05 KB

CONTRIBUTING.md

File metadata and controls

183 lines (130 loc) · 7.05 KB

Contributing to LEETCODE_DAILY_TASK

Thank you for your interest in contributing to LEETCODE_DAILY_TASK!
This repository is dedicated to daily LeetCode challenges and tasks. Your contributions help build a valuable resource for developers who want to practice and improve their coding skills. We encourage you to share your solutions, thoughts, and feedback.


Table of Contents


How to Contribute

  1. Fork the Repository:
    Click the Fork button on the repository page to create your own copy.

  2. Clone Your Fork:

    git clone https://github.com/your-username/LEETCODE_DAILY_TASK.git
  3. Create a Branch:
    Create a new branch for your feature, solution, or bug fix.

    git checkout -b feature/your-feature-name
  4. Implement Your Changes:

    • Add your solution for the daily task.
    • If desired, add your discussion points or explanations in the designated discussion area (see below).
    • Follow the coding guidelines (see below).
    • Update or add test cases as needed.
  5. Commit Your Changes:
    Use clear and descriptive commit messages (see Commit Message Guidelines).

  6. Open a Pull Request:
    Submit a pull request (PR) with a clear title and description outlining your changes, and reference any related issues.


Today's Task & Discussion

Each day, we post a new LeetCode task for the community. This section is dedicated to:

  • Daily Task: A detailed description of the current LeetCode problem.
  • Solution Discussion: Share your approach, code, and insights.
  • Contributor Recognition: The first contributor who commits a solution and raises a PR for the day's task will have their name highlighted in this section as a token of recognition.

Today's Task:

Placeholder for the current LeetCode question

Example: "Two Sum" - Given an array of integers and a target, find two numbers that add up to the target.

How to Participate:

  1. Discuss:
    Start by discussing your thoughts, approach, or any questions about the task in the discussion thread (via GitHub Discussions or PR comments).

  2. Solve:
    Implement your solution for the task in your preferred programming language.

  3. Contribute:
    Submit your solution via a PR.
    First Contributor Bonus:
    The first PR merged for the day's task will have the contributor's name added below the task details, for example:

    **Today's First Contributor:** @username

    In order to be recognized, please also email your GitHub username and Gmail address to [email protected]. This information will be used for contributor recognition and to share updates related to the repository.

Feel free to update this section daily with the problem details, sample input/output, and any additional context. The discussion area is open for ideas, alternative approaches, and questions related to the day's task.


Contributor Recognition Process

  • How It Works:
    The first contributor whose PR is merged for the daily task will be recognized as the day's first contributor.

  • Steps to Get Recognized:

    1. Submit your solution via a PR.
    2. Once your PR is merged, send an email to [email protected] with:
      • Your GitHub username.
      • Your Gmail address.
    3. Your details will be added to the "Today's Task" section for recognition.

This process not only encourages early contributions but also helps build a community of active contributors.


Share Your Thoughts

We welcome your feedback and ideas!

  • Questions & Suggestions: Open an issue or start a discussion if you have ideas for improvements, new challenges, or if you need help.
  • Solution Explanations: Share your approach and any insights that might help others understand the problem better.
  • Improvements: If you see a better or more optimized solution, feel free to contribute.

Issue Reporting

  • Found a Bug or Have a Suggestion?
    Open a new issue on GitHub with a descriptive title and details on how to reproduce the problem or suggest improvements.
  • Include the Following Information:
    • A clear explanation of the issue.
    • Steps to reproduce the problem.
    • Environment details if applicable (e.g., OS, specific LeetCode problem IDs).

Pull Request Process

  1. Ensure Tests Pass:
    Verify that your changes pass all existing tests. If you're adding new functionality, please include corresponding tests.

  2. Provide a Descriptive Title:
    Your PR title should succinctly describe your changes (e.g., "Add solution for Two Sum challenge").

  3. Detailed Description:
    In your pull request, include:

    • The purpose of your changes.
    • Instructions on how to test your changes.
    • Any additional context, screenshots, or references to related issues.
    • If you're the first contributor for the day's task, please include a note so we can update the contributor recognition section.
  4. Review & Feedback:
    Your PR will be reviewed by the maintainers. Please address any feedback or requested changes promptly.


Coding Guidelines

  • Consistent Formatting:
    Follow the repository’s existing style for code formatting, naming conventions, and folder structure.

  • Comment Your Code:
    Write clear comments explaining your logic, especially for more complex solutions.

  • Efficiency and Readability:
    Ensure that your solutions are optimized for performance and are easy to understand.

  • Documentation:
    If your changes affect existing functionality, update the documentation accordingly.


Commit Message Guidelines

  • Short & Descriptive:
    The first line of your commit message should be a brief summary (50 characters or less).

  • Imperative Mood:
    Use the imperative mood (e.g., "Add", "Fix", "Update").

  • Detailed Description:
    If needed, include a detailed description after the first line, separated by a blank line.

Example:

Add solution for Two Sum problem

This commit introduces an optimized solution for the Two Sum problem, including test cases and documentation.

Acknowledgments

Thank you for contributing to LEETCODE_DAILY_TASK!
Your help and commitment make this project a better resource for the community. If you have any questions or need further assistance, feel free to open an issue or contact the maintainers.

Happy coding and happy LeetCoding! 🚀