Getting started
The steps below will help you get set up to open a pull request in the Amplify JS project. Check out the CONTRIBUTING.md
in each project's repository for instructions on how to get started with local environment set up.
The Amplify Contributor Program is an open invitation for you to participate in the Amplify open source development journey. It is a great way to learn more about the Amplify ecosystem and make constructive, helpful pull requests. It builds your resume by demonstrating that you can collaborate with others on code, and it feels good to give back to a project you use! We're looking forward to developing with you!
Prerequisites
A GitHub account. You can create one here .
IDE (e.g. VS Code)
Amplify JS development environment. Follow the steps here to get set up.
Set up the Amplify Docs development environment .Optional
Steps to take to make your contribution
Start on the contributing page of the Amplify JS repo and find the right issue for you.
Fork the Amplify JS GitHub project.
Open VS Code and clone your fork down to your machine so you can begin making changes.
Run
git status
before you start coding to make sure everything in the project files are updated with theorigin/main
branch.git statusOn branch mainYour branch is up to date with 'origin/main'.nothing to commit, working tree cleanUse one of the commands below to create a new branch within your fork.
git checkout -b "<group-token>/<short-token>/<branch-name>"# orgit checkout -b "<short-token>/<branch-name>"Use the
group-token
to indicate the category you are working on. e.g.amplify-datastore
.The
short-token
can be one of the following:feat
,chore
, orbug
.The
branch-name
should be representative of the feature or fix.- Make your contribution and then run
git add
,git commit
andpush
your branch.git add .git commit -m "A commit message"git push -u origin <branch-name>GitHub will process the push command and display a link to create a pull request.
Enumerating objects: 5, done.Counting objects: 100% (5/5), done.Delta compression using up to 8 threadsCompressing objects: 100% (3/3), done.Writing objects: 100% (3/3), 323 bytes | 323.00 KiB/s, done.Total 3 (delta 2), reused 0 (delta 0), pack-reused 0remote: Resolving deltas: 100% (2/2), completed with 2 local objects.remote:remote: Create a pull request for <branch-name> on GitHub by visiting:remote: https://github.com/offlineprogrammer/amplify-js/pull/new/feat/<branch-name>remote:To https://github.com/offlineprogrammer/amplify-js.git* [new branch] feat/my-amazing-branche -> feat/<branch-name>Branch 'feat/<branch-name>' set up to track remote branch 'feat/<branch-name>' from 'origin'. Click on the link to create a new pull request using the Amplify JS PR template.
That's it!
The Amplify team will review your PR and provide feedback if needed. The review process might require API design & security reviews. For such cases it might take up to 4 weeks to complete the review. Make sure to address any automated check that fail (such as linting, unit tests, etc. in the CI pipeline). Finally, once your changes meet the requirements and checks, the team will merge your changes into the Amplify JS repo.
Well done and congrats! We're very excited about your contribution!
Resources
We've put together a few resources that can help you create quality PRs.
Amplify JS Contributing Guidelines
Please read through these guidelines carefully before submitting a PR.
Amplify Documentation
Learn more about the AWS Amplify JS library.
Amplify Community Discord server
This is a great place to meet other developers using Amplify, ask questions, and share what you're building with Amplify.
The #contribute-to-javascript Discord channel
Meet other contributors and ask questions related to contributing to Amplify JS.
Amplify Discord Office Hours
Join the weekly office hour in the Discord Voice channel where you can ask questions, share what you're working on and get feedback.