Skip to content
This repository was archived by the owner on Jul 3, 2023. It is now read-only.

Latest commit

 

History

History
55 lines (41 loc) · 2.36 KB

File metadata and controls

55 lines (41 loc) · 2.36 KB

How to contribute

We ❤️ pull requests. If you'd like to fix a bug, contribute a feature or just correct a typo, please feel free to do so, as long as you follow our Code of Conduct and the Contributing Developer Certificate of Origin.

If you're thinking of adding a big new feature, consider opening an issue first to discuss it to ensure it aligns to the direction of the project (and potentially save yourself some time!).

Getting Started

To start working on the codebase, first fork the repo, then clone it:

git clone git@github.com:your-username/unity-buy-sdk.git

Note: replace "your-username" with your Github handle

To check your the project's dependencies run:

$ scripts/check_setup.sh

Building the Shopify SDK for Unity

As an alternative to downloading the Unity package, you have the option to build from source and import that into your project.

Before you can start developing on the SDK you'll need to run the code generator. Under the hood, the Shopify SDK for Unity works on top of GraphQL. In order to query Shopify, we generate a GraphQL client based on the Storefront API introspection schema.

To build the GraphQL client, run the following command:

$ scripts/build.sh

Now you are free to write some features.

Testing

Read our Testing Guide

Add some tests and make your change. Re-run the tests with:

$ scripts/build.sh
$ scripts/test_unity.sh

# If you made iOS plugin changes
$ scripts/test_ios.sh

Creating your Pull Requests

We use the beta branch to hold new features and bug fixes before they are seen on master. Please make your pull request to the beta branch.

Documentation

If your change affects how people use the project (i.e. adding or changing arguments to a function, adding a new function, changing the return value, etc), please ensure the documentation is also updated to reflect this. Documentation is in the docs/ folder if further documentation is needed please communicate via Github Issues.