Please read this guide if you're interested in contributing to Prisma.
We welcome any form of contribution, especially from new members of our community 💚
Our community is a safe and friendly environment, where we support and treat each other with respect.
We invite you to actively participate in discussions on Github, the Forum and Slack.
You'll see many discussions about usage or design questions, but any topic is welcome. They are a great foundation to find potential issues, feature requests or documentation improvements.
To report a bug, you can use this template.
New bug reports require to be triaged. Oftentimes this includes creating a minimal reproduction, or verifying that the problem still occurs on the latest stable version or the unstable channel (see below).
When you're starting to look into fixing a bug, create a WIP PR that you mention in the original issue. This way, we ensure that everyone interested can share their thoughts, and duplicate work is prevented.
Adding tests is a great way to help preventing future bugs.
You can either improve existing content or add new resources.
If you miss a particular information in the reference documentation, feel free to either create an issue or PR. We also welcome tutorials for related topics that you're interested in. If you come across an interesting pattern, feel free to add a new example to our example list!
Releases are separated into three channels: alpha, beta and stable. You can learn more about these three channels and Prisma's release process here.
To request a new feature, you can use this template.
To contribute features or API changes, it's best to start a discussion in an issue first, ideally with a proposal. This allows everyone to participate and ensures that no potential implementation work is in vain.
After getting some feedback, push to your fork and submit a pull request. We may suggest some changes or improvements or alternatives, but for small changes your pull request should be accepted quickly.
Here are further contribution instructions:
For cli
and server
, PRs need to be made against the alpha
branch (not master
).
Below are a series of steps to help you from a more "practical" perspective. If you need additional help concerning Git, Github has some great guides that you may want to check out! Check them out here
Fork the repo and then clone your fork
SSH:
git clone git@github.com:YOUR_USERNAME/prisma.git
HTTPS:
git clone https://github.com/YOUR_USERNAME/prisma.git
Add the remote upstream
git remote add upstream git://github.com/prisma/prisma.git
Fetch changes from upstream
git fetch upstream
Pull changes locally
git pull upstream master
Push changes up
git push
Read more about our labels here