Open-Source Library Website
HacktoberFest Accepted
AEC-Library is an Open-Source library website that will help people in need of books. It has the following categories:
- Resources: A section that provides you resources to learn about different topics
- Donate Books: A section to donate your old books
- Book Issue: A section to keep a record of all the books issued
This website helps you to find the books easily without any cost. The best part about the website is that you can also contribute to the website for others to use the resources by donating the books you have. All categories of books are welcome for donation. Come forward to donate the books!
[ In development Phase ]
## Table of Content
- [Tech Stack](#tech)
- [Project Maintainer](#project)
- [OUR VALUABLE CONTRIBUTORS](#contributor)
- [Contact](#contact)
- [Contributing Guidelines](#contribution)
# Contribution is fun! 🧡
## 📌 Tech Stack
![HTML](https://img.shields.io/badge/html5%20-%23E34F26.svg?&style=for-the-badge&logo=html5&logoColor=white)
![CSS](https://img.shields.io/badge/css3%20-%231572B6.svg?&style=for-the-badge&logo=css3&logoColor=white)
![JS](https://img.shields.io/badge/javascript%20-%23323330.svg?&style=for-the-badge&logo=javascript&logoColor=%23F7DF1E)
In order to make a hassle-free environment, I implore you all (_while contributing_) to follow the instructions mentioned below!
Happy Submissions :slightly_smiling_face:
Project Maintainer ⚡
OUR VALUABLE CONTRIBUTORS✨
Happy Coding 👨💻
---
📬 Contact
If you want to contact me, you can reach me through below handles.
Contributing Guidelines
## Basics of Git and GitHub
### Git & GitHub
Before we proceed, it's better to know the difference between Git and Github. Git is a version control system (VCS) that allows us to keep track of the history of our source code , whereas GitHub is a service that hosts Git projects.
We assume you have created an account on Github and installed Git on your System.
Now enter your name and E-mail (used on Github) address in Git, by using following command.
`$ git config --global user.name "YOUR NAME"`
` $ git config --global user.email "YOUR EMAIL ADDRESS"`
This is an important step to mark your commits to your name and email.
### Fork a project
You can make a copy of the project to your account. This process is called forking a project to your Github account. On Upper right side of project page on Github, you can see -
Click on fork to create a copy of project to your account. This creates a separate copy for you to work on.
### Clone the forked project
You have forked the project you want to contribute to your github account. To get this project on your development machine we use clone command of git.
`$ git clone https://github.com/SauravMukherjee44/Aec-Library-Website.git`
Now you have the project on your local machine.
### Add a remote (upstream) to original project repository
Remote means the remote location of project on Github. By cloning, we have a remote called origin which points to your forked repository. Now we will add a remote to the original repository from where we had forked.
`$ cd
`
`$ git remote add upstream https://github.com/SauravMukherjee44/Aec-Library-Website.git`
You will see the benefits of adding remote later.
### Synchronizing your fork
Open Source projects have a number of contributors who can push code anytime. So it is necessary to make your forked copy equal with the original repository. The remote added above called Upstream helps in this.
`$ git checkout main`
`$ git fetch upstream`
`$ git merge upstream/main`
`$ git push origin main`
The last command pushes the latest code to your forked repository on Github. The origin is the remote pointing to your forked repository on github.
### Create a new branch for a feature or bugfix
Usually, all repositories have a main branch that is regarded to be stable, and any new features should be developed on a separate branch before being merged into the main branch. As a result, we should establish a new branch for our feature or bugfix and go to work on the issue.
`$ git checkout -b `
This will create a new branch out of master branch. Now start working on the problem and commit your changes.
`$ git add --all`
`$ git commit -m ""`
The first command adds all the files or you can add specific files by removing -a and adding the file names. The second command gives a message to your changes so you can know in future what changes this commit makes. If you are solving an issue on original repository, you should add the issue number like #35 to your commit message. This will show the reference to commits in the issue.
### Push code and create a pull request
You now have a new branch containing the modifications you want in the project you forked. Now, push your new branch to your remote github fork.
`$ git push origin main`
Now you are ready to help the project by opening a pull request means you now tell the project managers to add the feature or bug fix to original repository. You can open a pull request by clicking on green icon -
Remember your upstream base branch should be main and source should be your feature branch. Click on create pull request and add a name to your pull request. You can also describe your feature.
Congratulations! You've already made your first contribution.🥳
Good Luck for your journey
© 2021 Saurav Mukherjee and contributors\
This project is licensed under the [**MIT license**](https://github.com/SauravMukherjee44/Aec-Library-Website/blob/main/LICENSE).
[![forthebadge](https://forthebadge.com/images/badges/built-with-love.svg)](https://forthebadge.com)