Skip to content

Create CONTRIBUTING.md #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# CONTRIBUTING GUIDELINES

Thank you for considering contributing to this Project Euler solutions repository. Before proceeding, please take a moment to review and understand these guidelines to ensure a consistent and beneficial experience for all contributors.

## Table of Contents

1. [Purpose of This Repository](#purpose-of-this-repository)
2. [Before You Begin](#before-you-begin)
3. [How to Contribute](#how-to-contribute)
4. [Code Style and Standards](#code-style-and-standards)
5. [Pull Request Process](#pull-request-process)
6. [Community Conduct](#community-conduct)
7. [Feedback and Questions](#feedback-and-questions)

## Purpose of This Repository

The primary goal of this repository is to provide solutions for Project Euler problems for educational purposes and personal growth. We aim to encourage algorithmic thinking, mathematical problem-solving, and the spirit of learning.

## Before You Begin

1. **Respect Project Euler's Ethos**: Project Euler discourages the public dissemination of solutions. Any contribution should be for educational purposes and should not diminish the challenge for others.
2. **Familiarize Yourself**: Ensure you understand the problem thoroughly and have tested your solution on the Project Euler platform before contributing.

## How to Contribute

1. **Fork the Repository**: Start by forking this repository to your own GitHub account.
2. **Clone the Forked Repository**: Clone your forked repository to your local machine.
3. **Create a New Branch**: For every new contribution, create a separate branch.
4. **Commit Your Solution**: Add and commit your solution to the newly created branch.
5. **Push to GitHub**: Push your branch to your forked GitHub repository.
6. **Open a Pull Request**: Create a pull request from your forked repository to the original repository.

## Code Style and Standards

1. **Naming Conventions**: Ensure that file names clearly reflect the Project Euler problem number and title, e.g., `problem_001_sum_of_multiples.py`.
2. **Comments**: Comment your code where necessary, explaining your approach and any algorithms used.
3. **Optimization**: While not mandatory, optimized solutions are preferred. Ensure your solution can run within a reasonable timeframe.
4. **Test**: Before submitting, ensure your solution is correct by verifying it on the Project Euler platform.

## Pull Request Process

1. **Description**: Provide a concise description of the problem and your approach.
2. **Review**: Once submitted, your pull request will be reviewed. Feedback, if any, will be provided.
3. **Merging**: Upon approval, your solution will be merged into the main repository.

## Community Conduct

Please maintain respect and courtesy when interacting with other contributors. We adhere to a code of conduct, and any form of harassment, trolling, or negative behavior will not be tolerated.

## Feedback and Questions

If you have any feedback, questions, or concerns, please open an issue in the repository. We appreciate your understanding and adherence to these guidelines. Happy coding and problem-solving!