Welcome to the Goodnotes Design System! This repository is the single source of truth for our shared UI components, built with React and Storybook. Our goal is to enable designers and developers to collaborate and build a consistent, scalable design system for all Goodnotes products.
git clone https://github.com/mubarakmarafa/Goodnotes-design-system.git
cd Goodnotes-design-systemnpm installnpm run storybookThis will start Storybook at http://localhost:6006, where you can view and interact with all components.
We use a branch-based workflow. Please follow these steps for every new feature or fix:
git checkout -b feature/your-feature-name- Use a descriptive branch name, e.g.,
feature/add-toast-componentorfix/button-padding.
- Add or update components in the
src/componentsdirectory. - Add or update stories in the
src/componentsdirectory. - Test your changes in Storybook.
git add .
git commit -m "Describe your change here"
git push origin feature/your-feature-name- Go to the GitHub repo.
- Click Compare & pull request for your branch.
- Add a clear description of your changes.
- Request a review from a teammate.
- All PRs should be reviewed by at least one other team member before merging to
main. - Once approved, merge your PR.
- One feature/fix per branch/PR.
- Write clear commit messages and PR descriptions.
- Document new components and usage in Storybook.
- Keep the
mainbranch clean and stable.
Goodnotes-design-system/
├── src/
│ └── components/ # All design system components and stories
├── .storybook/ # Storybook configuration
├── README.md # This file
└── ...
If you have any questions, ask in the team chat or open an issue in this repo.
Happy contributing! 🎉
Test commit to trigger GitHub Actions deployment.