Skip to content

Latest commit

 

History

History
56 lines (39 loc) · 2.88 KB

CodeContributionsGuidelines.md

File metadata and controls

56 lines (39 loc) · 2.88 KB

Contributing code

Getting Started

All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult GitHub Help for more information on using pull requests. Before raising a pull request, ensure you have raised a corresponding issue and discussed a possible solution with a maintainer. This gives your pull request the highest chance of getting merged quickly.

Good First Issues

Looking for issues to contribute? Good First Issues is a great place to begin your contribution journey with Appsmith!

🍴 Git Workflow

We use Github Flow, so all code changes happen through pull requests.

  1. Fork the repo and create a new branch from the release branch.
  2. Branches are named as fix/fix-name or feature/feature-name
  3. Please add tests for your changes. Client-side changes require Cypress/Jest tests while server-side changes require JUnit tests.
  4. Once you are confident in your code changes, create a pull request in your fork to the release branch in the appsmithorg/appsmith base repository.
  5. If you've changed any APIs, please call this out in the pull request and ensure backward compatibility.
  6. Link the issue of the base repository in your Pull request description. Guide
  7. When you raise a pull request, we automatically run tests on our CI. Please ensure that all the tests are passing for your code change. We will not be able to accept your change if the test suite doesn't pass.

🏡 Setup for local development

Pre-requisites

  1. Install git-secrets
    1. brew install git-secrets (macOS)
    2. Linux
    3. Windows
  2. Register the secrets with git-secrets
    1. git secrets --register-aws
    2. This is very important step as it registers the regex to be scanned by the git-secrets.
  3. Verify the secrets are registered
    1. git secrets --list
  4. Refer to this repo for more information.

Code setup

Other Contributions

Server Code

Please follow these guidelines according to the module that you wish to contribute to:

Client Code

Please follow the below guideline to add a new JS library to the Appsmith platform:

Please follow the below guideline for widget development