Thanks for your interest in contributing to a11y-dialog! Please take a moment to review this document in order to make the contribution process smooth for all involved.
Please suggest a change before starting to code a new feature or bugfix.
Creating an issue to discuss the bug or feature gives a11y-dialog
’s maintainers a chance to consider your idea and provide feedback and guidance before you invest time and coding effort.
We use the following fork-pull-request model:
-
Fork the project, clone your fork, and configure the remotes:
# Use GitHub interface to fork the repo into your own forked repo # Then, clone your fork of the repo onto your local machine git clone https://github.com/<your-username>/a11y-dialog.git # Navigate to the newly cloned directory cd a11y-dialog # Now add "upstream" for our upstream repo to a remote called "upstream" git remote add upstream https://github.com/KittyGiraudel/a11y-dialog.git
-
If you cloned a while ago, get the latest changes from upstream:
git checkout main git pull --rebase upstream main
-
Create a new topic branch (off the
main
project development branch) to contain your feature, change, or fix:git checkout -b <topic-branch-name>
-
Commit your changes in logical chunks.
-
Locally merge (or rebase) the upstream development branch into your topic branch:
git pull [--rebase] upstream main
-
Push your topic branch up to your fork:
git push origin <topic-branch-name>
-
Open a Pull Request with a clear title and description against the
main
branch.
For visual changes, it never hurts to leave some screen grabs on the pull request.
IMPORTANT: By submitting a patch, you agree to allow the project owners to license your work under the terms of the MIT License.
Here are the main steps to get you started developing on a11y-dialog
.
Clone your fork of the repo and then do npm install
from the project root to download all required dependencies.
To run the main server:
npm run serve
a11y-dialog
uses Cypress to do end-to-end testing. In order to run the tests you’ll need to first run the server from the above step in a separate tab. Then, open a second tab and do:
npm run test
Alternatively, you can open the Cypress application with the following command if you want to benefit from the Cypress debugger:
npx cypress open
You can run the documentation site locally by checking out the documentation
branch, and then running npm install
and then npm start
. This should fire up a local server that runs Docusaurus.
Generally, if you make an update to a particular page in the documentation that is pertinent to all versions of a11y-dialog
, you will need to update 3 files (since there are 3 versions for the documentation—v6, v7 and current).
For example, to update the Advanced chapter’s Animations page, you would need to update the files docs/advanced.animations.md
, versioned_docs/version-6.1.0/advanced.animations.md
and versioned_docs/version-7.0.0/advanced.animations.md
.
Of course, if your update is only relevant to v7 or v8 and current you would only update the files that correspond to those versions.