Skip to content
This repository has been archived by the owner on Dec 22, 2023. It is now read-only.

Latest commit

 

History

History
104 lines (71 loc) · 5.26 KB

CONTRIBUTING.md

File metadata and controls

104 lines (71 loc) · 5.26 KB

Contributing to Prism UI (PUI)

If you're reading this, you're awesome! Thank you for helping us make this project great and being a part of the PUI community. Here are a few guidelines that will help you along the way. Follow the Component Guidelines to make awesome components and get your PR accepted right away.

Summary

Code of Conduct

Our code of coduct can be found here and we expect project participants to adhere to it. Please read the full text to understand what actions will and will not be tolerated.

A large spectrum of contributions

There are many ways to contribute to PUI, code contribution is one aspect of it. For instance, documentation improvements are as important as code changes.

Writting Clean code

Writting clean cod eis very important as it gives us the following benifits:

  • Clean code
  • Quality of code
  • Readability of code
  • Makes code maintenance easier

Please read this blog to help you write better code: 12 Conventions for Writing Clean Code

How to get your proposals accepted?

Writing good proposals are the 1st step towards contributing. If you are submitting new proposals or a solution to a issue, the proposal structure remains the same.

  • Provide a summary
  • What is your Motivation?
  • Design details (for new proposals)
  • How to replicate? (for solution to bug issues)
  • General Implementation plan
  • A testing Plan (optional)
  • Risks and Mitigation (if any)
  • Timeline

Following this structure ensures that your proposals will get accepted.

Your first Pull Request

Working on your first Pull Request? You can learn how from this free video series:

How to Contribute to an Open Source Project on GitHub

To help you get your feet wet and get you familiar with our contribution process, we have a list of good first issues that contain changes that have a relatively limited scope. This label means that there is already a working solution to the issue in the discussion section. Therefore, it is a great place to get started.

We also have a list of good to take issues. This label is set when there has already been some discussion about the solution, and it is clear in which direction to go. These issues are good for developers that want to reduce the chance of going down a rabbit hole.

You can also work on any other issue you choose to. The "good first" and "good to take" issues are just issues where we have a clear picture about scope and timeline. Pull requests working on other issues or completely new problems may take a bit longer to review when they don't fit into our current development cycle.

If you decide to fix an issue, please make sure to check the comment thread in case somebody is already working on a fix. If nobody is working on it at the moment, please leave a comment stating that you have started to work on it, so other people don't accidentally duplicate your effort.

If somebody claims an issue but doesn't follow up for more than a week, it's fine to take it over, but you should still leave a comment. If there has been no activity on the issue for 7 to 14 days, it is safe to assume that nobody is working on it.

Sending a Pull Request

1. Fork and clone this repository

Use code given below to clone this to your local computer

git clone https://github.com/DugarRishab/prism-ui
cd ./prism-ui

2. Make changes to the code

  • Add all the necessary changes.
  • Make sure to provide an explanation of the code in the comments at the top.

3. Commit and push the changes to the forked repo

  • Always used active voice while writting commit messages.
  • Try to explain what you did in the title of the commit.

4. Create a pull request (PR)

  • Always use the given PR template to make them as informatic as possible
  • Must Follow the PR guidelines to make exceptional PRs

PR Guidelines

  • Use the PR template provided
  • Only refer a PR to an issue if you were assigned to that PR