Awesome Open Source
Awesome Open Source

AlgoCode ✨

forthebadge forthebadge forthebadge forthebadge

Hey there!👋

What can you do here?🧐

  • You can solve questions put up by contributors (tag moderators in comment to assign an issue to you and mention the language you will be using).
  • You can put up a problem yourself.
  • You can even contribute a project made by you!

New to github? No problem :)🆕

  • Git and github crash course by TraversyMedia: Youtube
  • Git and github for beginners by FreeCodeCamp: Youtube
  • Git and github articles on atlassian.com: Website

Steps to put up an issue:📑

First let's see when should you create an issue?

  • If you want to contribute a question or project.
  • If you have a better solution to an existing solved issue.

To create an issue:

Click on the Issue button at top of the page:

Click new issue and fill up the details!

Note: Issues must clearly mention what they are addressing, if a problem is being put up then explain it using an example.

Get contributing🤩

Note: One must read CODE_OF_CONDUCT before starting work on any issue

First things first, In order to contribute you have to create a Pull Request from your forked repo which is a remote clone of this upstream repository.

  1. Click this button at the top of screen to fork this repo, don't forget to star the repository!:

  2. Now head over to the forked repository and copy the clone HTTPS URL:

  3. Next up clone the forked repo on to the local machine using:

    git clone <copied-fork-link>

  4. It is critical to keep your forked repository in sync the upstream repository so merge conflicts can be avoided:

    git remote add upstream https://github.com/pratik-choudhari/AlgoCode.git
    git fetch upstream
    git pull upstream master
    git push
    
  5. Create a seperate branch to work on:

    The branch name must be selected according to the issue

    git checkout -b <branch-name>

  6. Contributors must follow the directory structure guidelines:

    • All files must be kept in a directory.
    • Directory name must resemble the issue assigned.
    • Based on the language used, create a directory inside the language directory.
    • Example: If I am writing in Python I will create a directory inside Python directory.
    • In case a project is being contributed make sure to add the files inside a directory(name according to project) which in turn must be placed inside the Projects directory.
    • Changes done by you will not affect existing structure of the project.
    • Add a README.md with your name and link to github profile using [your-name](link-to-profile)
  7. After the contribution work is ready go ahead and add it to staging area:

    git add -A

  8. Now it is time to commit your changes and sync these changes to forked repo:

    git commit -m <your_message>

    git push origin <branch-name>

  9. Issue a pull request from forked repo to this repo:

    • Head over to Pull Request tab in the forked repo and click on New Pull Request
    • Verify base and head repository name and branch names.
    • Fill in the title and provide a concise description.
  10. Wait for respose on the PR. Congratulations you just contributed to open source!

  11. Get your name in CONTRIBUTORS.md!

Code of conduct 👨‍💻

CODE_OF_CONDUCT.md

Our contrubitors(updated daily) ❤

CONTRIBUTORS.md

Labels 🏷

Issues labelled with language name e.g Python, mean that the particular issue has been assigned for language in the label

Note that a problem can be solved in above mentioned languages unless any language is explicitly mentioned

About me

Hi! I am Pratik Choudhari an undergrad student. Recently I have discovered my liking for open source since then I have been working diligently towards it and here I am with this repository😄.

Got something interesting to talk about? Let's connect

Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Javascript (1,059,720
Python (807,238
Java (388,471
C Plus Plus (238,799
C (182,009
C Sharp (164,144
Golang (158,264
Jupyter Notebook (154,306
Language (30,061
Data Science (10,155
Competitive Programming (1,486
Good First Issue (319