Skip to content

Latest commit

 

History

History
165 lines (130 loc) · 5.84 KB

CONTRIBUTING.md

File metadata and controls

165 lines (130 loc) · 5.84 KB

Contributing

Table of Contents

Introduction ⭐

This guide should serve as a set of guidelines and instructions for all contributors with respect to how they can participate and improve the project.

The purpose of this guide is to establish a clear and consistent process for contributing to the project. This guide outlines how to setup the project locally, submit issues, branching conventions submit and review pull requests.

Project Setup 🔨

If you have write permissions:

Follow these instructions if you have permissions to edit the remote repository

Install Node.js

https://nodejs.org/en/download/

Install pnpm using npm

$ npm install -g pnpm

Clone the repo

$ git clone https://github.com/LaurierHawkHacks/ComingSoon.git

From your terminal, navigate to the root path of clone

$ cd path/to/your/clone

Install dependencies

$ pnpm i

Run local server

$ pnpm run dev

For everyone else:

Follow these instructions if you do not have permissions to edit the remote repository

Note: This project uses GitHub Pull Requests to manage contributions, so read up on how to fork a GitHub project and file a PR if you've never done it before

Install Node.js

https://nodejs.org/en/download/

Install pnpm using npm

$ npm install -g pnpm

Clone the repo

$ git clone path/to/your/fork.git

From your terminal, navigate to the root path of clone

$ cd path/to/your/clone

Install dependencies

$ pnpm i

Run local server

$ pnpm run dev

Code Contribution 🚧

We welcome all contributions to the project. Follow the step-by-step guide below to ensure that your contribution fits the required standard and can be added to the project!

To contribute code:

  • Set up the project.

  • Identify any required modifications in the source code.

  • Create and checkout a new branch.

    • git checkout -b <token/summary/ticket_number>
    • Tokens that should be used:
      Token Type Description
      feat This is a new feature
      refac This is for refactoring an existing feature
      bug This is for a bug fix
      doc This is for creating & editing documentation
      test This is a branch used for experimenting
    • Your summary should be no more than 2-3 words and seperated by dashes.
    • Your ticket number can be found in the issues / projects tab of the repo.
    • Example:
      • git checkout -b refac/readme-update/1
  • Implement these changes accordingly.

  • Incorporate supplementary documentation as needed to support the modifications made.

  • Add modified code for staging

    • git add <path/to/file>
    • Note: Add each changed file individually, this will allow for better tracking of issues.
  • Commit staged file with a descriptive message

  • Once you are satisfied with your contribution, go to Pull Requests and open a new pull request with your changes.

  • A maintainer or specified reviewer will be assigned to verify and test your changes. See more here.

Warning: If your contribution does not align with the instructions above, it will not be acknowledged.

Issue Tracking 🚨

Issues will be used for every possible contribution that needs to be made to the project - this includes, bugs, fixes, enhancements, testing and so on.

Github has predefined labels, they should be used as follows:

Labels Description
bug Use if something isn't working / defective
documentation Use when creating / editing / deleting documentation
duplicate Use for issue tickets with similar problems
enhancement Use for new contributions to the codebase
good first issue Don't use lol - need to remove
help wanted Use if you are having issues solving a problem
invalid Use if the issue might break the codebase
question Use if you are unsure about implementation
wontfix Use if you no longer want to work on this contribution / is redundant

Note: Multiple labels can be used on any specific issue.

Pull Requests Review & Management 📝

All comments and feedback are welcome on any Pull Request (PR). However, only repository maintainers can approve or deny these requests.

Once you successfully create a Pull Request, the maintainer will review and sufficently test the contribution to determine if it is merged into the main or any other branch. In the case where you want a speicific reviewer, Github has a feature that will allow you to assign the specified maintainer.

For more information regarding Github's Pull Request review feature, see here.

Author: Aidan Traboulay (15/06/2023)