Skip to content

InstallationGuide

Aman Dwivedi edited this page Jul 22, 2021 · 2 revisions

Contributing to FOSSologyUI

Requirements 📜

  1. Your machine should have Yarn (preferable) or Npm installed.

  2. A working FOSSology setup.

  3. Setup CORS in FOSSology

  • Open FOSSology and go to Admin > Customize.
  • Lookout for "Allowed origins for REST API"
  • Set the value to "http://localhost:3000"

image

Installation Steps 🚶

1. Fork it 🍴

You can get your own fork/copy of FOSSologyUI by using the Fork button.

Fork Button

2. Clone it 👥

You need to clone (download) it to a local machine using

git clone https://github.com/Your_Username/FOSSologyUI.git

This makes a local copy of the repository in your machine.

Once you have cloned the FOSSologyUI repository in GitHub, move to that folder first using the change directory command.

# This will change directory to a folder FOSSologyUI
cd FOSSologyUI

Move to this folder for all other commands.

3. Set it up ⬆️

Run the following commands to see that your local copy has a reference to your forked remote repository in GitHub :octocat:

git remote -v
origin  https://github.com/Your_Username/FOSSologyUI.git (fetch)
origin  https://github.com/Your_Username/FOSSologyUI.git (push)

Now, add a reference to the original FOSSologyUI repository using

git remote add upstream https://github.com/fossology/FOSSologyUI.git

This adds a new remote named upstream.

See the changes using

git remote -v
origin    https://github.com/Your_Username/FOSSologyUI.git (fetch)
origin    https://github.com/Your_Username/FOSSologyUI.git (push)
upstream  https://github.com/fossology/FOSSologyUI.git (fetch)
upstream  https://github.com/fossology/FOSSologyUI.git (push)

4. Run it 🏁

Using Yarn (preferable)

# To install all the dependencies
yarn install

# To start the application
yarn start

OR using NPM

# To install all the dependencies
npm install

# To start the application
npm start

The React application will start on port 3000. Go to: http://localhost:3000

Contributing Steps

1. Sync it ♻️

Always keep your local copy of the repository updated with the original repository. Before making any changes and/or in an appropriate interval, run the following commands carefully to update your local repository.

# Fetch all remote repositories and delete any deleted remote branches
git fetch --all --prune

# Switch to `main` branch
git checkout main

# Reset local `main` branch to match `upstream` repository's `main` branch
git reset --hard upstream/main

# Push changes to your forked `FOSSologyUI` repo
git push origin main

2. Ready Steady Go... 🐢 🐇

Once you have completed these steps, you are ready to start contributing by checking our Help Wanted Issues and creating pull requests.

3. Create a new branch 🌲

Whenever you are going to contribute, please create a separate branch using command and keep your main branch clean (i.e. synced with remote branch).

# It will create a new branch with the name <branch_name> and will switch to that branch.
git checkout -b <branch_name>

Create a separate branch for contribution and try to use the same name of the branch as of folder.

To switch to the desired branch

# To switch from one folder to other
git checkout <branch_name>

To add the changes to the branch. Use

# To add all files to branch <branch_name>
git add .

Type in a message relevant for the code reviewer using

# This message gets associated with all files you have changed
git commit -s -m '<type>(<scope>): <subject>'

Example of allowed types:

  • feat: A new feature
  • fix: A bug fix
  • docs: Documentation only changes
  • style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, newline, line endings, etc.)
  • refactor: A code change that neither fixes a bug or adds a feature
  • perf: A code change that improves performance
  • test: Adding missing tests
  • chore: Changes to the build process or auxiliary tools and libraries such as documentation generation

Now, Push your awesome work to your remote repository using

# To push your work to your remote repository
git push -u origin <branch_name>

Finally, go to your repository in the browser and click on compare and pull requests. Then add a title and description to your pull request that explains your precious effort.

Sit and relax till we review your PR, you've made your contribution to our project.

🎉 🎊 😃 Happy Contributing 😃 🎊 🎉

Clone this wiki locally