# Contributing Guidelines📝
> :information_source: Before contributing, please make sure you have read the guidelines below.
If you're new to _git_ and/or _GitHub_, we suggest you go through [the GitHub Guides](https://guides.github.com/introduction/flow/).
Thank you for your interest in contributing to our Repo! Pull requests are welcome. For major changes, please open an [issue](https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects/issues/new/choose) first to discuss what you would like to change.
To start contributing, follow the below guidelines:
**1.** **Star** and **Fork** [this](https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects) repository.
**2.** Clone your forked copy of the project via `git`
```
git clone https://github.com//ZeroOctave-Javascript-Projects.git
```
**3.** Navigate to the project directory :file_folder: .
```
cd ZeroOctave-Javascript-Projects
```
**4.** Add a reference(remote) to the original repository.
```
git remote add upstream https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects.git
```
**5.** Check the remotes for this repository.
```
git remote -v
```
**6.** Always take a pull from the upstream repository to your master branch to keep it at par with the main project(updated repository).
```
git pull upstream main
```
**7.** Create a new branch.
```
git checkout -b
```
**8.** Perfom your desired changes to the code base.
**9.** Track your changes:heavy_check_mark: .
```
git add .
```
**10.** Commit your changes .
```
git commit -m "Relevant message"
```
**11.** Push the committed changes in your feature branch to your remote repo.
```
git push -u origin
```
**12.** To create a pull request, click on `compare and pull requests`.
**13.** Add appropriate title and description to your pull request explaining your changes and efforts done.
**14.** Click on `Create Pull Request`.
**15.** Woohoo! You have made a PR to the ZeroOctave-Javascript-projects :boom: . Wait for your submission to be accepted and your PR to be merged.
**Thank you for your interest in contributing to our Repo!🏼**
**Kudos to you🎈**
## Important Guidelines
Please ensure that your project adheres to the following guidelines:
- This repository accepts projects on Tech Stack: `HTML`, `CSS`, `JavaScript`.
- Search the list of [projects](https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects#available-projects) to make sure you don't add a duplicate.
- Follow the correct directory structure of the repository. All files like `css`, `js`, `video`, `images`.. are in [assets](https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects/tree/main/assets) directory and `html` files are in [Public](https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects/tree/main/Public) directory
- Make sure someone else has not already pulled the request for the changes you wish to do. You can see [here](https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects/pulls?q=is%3Apr+)
- Make sure to avoid creating a duplicate issue. You can check for existing issues [here](https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects/issues?q=is%3Aissue+)
- Any changes or suggestions to the existing content or repository are welcomed.
- You don't need to worry, maintainers will ask you to do the changes if required.