원클릭으로
uui-pr-contributing
// Guides the UUI pull request process including branch naming, pre-PR checklist, changelog updates, and quality requirements. Use when preparing a pull request, writing commit messages, or following UUI PR requirements.
// Guides the UUI pull request process including branch naming, pre-PR checklist, changelog updates, and quality requirements. Use when preparing a pull request, writing commit messages, or following UUI PR requirements.
| name | uui-pr-contributing |
| description | Guides the UUI pull request process including branch naming, pre-PR checklist, changelog updates, and quality requirements. Use when preparing a pull request, writing commit messages, or following UUI PR requirements. |
Follow this checklist when preparing a pull request for UUI.
Before opening a PR, ensure all items are complete:
yarn testyarn test-updateyarn test-e2eyarn eslint (or yarn eslint-fix)yarn stylelint (or yarn stylelint-fix)Note: Husky runs lint-staged on commit, which auto-fixes ESLint and Stylelint for staged files. You can still run lint manually to catch issues before committing.
yarn track-bundle-sizeyarn test-typecheckchangelog.mddevelop (not main):
git checkout develop
git pull origin develop
git checkout -b fix/123-description
Use descriptive branch names following these patterns:
For bug fixes:
fix/123-dropdown-position - Include GitHub issue numberfix/dropdown-position - If no issue numberFor features:
feature/456-new-component - Include GitHub issue numberfeature/new-component - If no issue numberFor other changes:
refactor/component-structuredocs/update-readmeImportant: When working on features or bugs from GitHub issues, include the issue number in the branch name (e.g., fix/123-description, feature/456-new-component).
Avoid generic names:
updatefixchangesfix: resolve dropdown positioning issue (#123)feat: add new componentfix: correct date formattingdocs: update READMErefactor: simplify component logicgit commit. Do not commit automatically.<<'EOF', && chaining). Use multiple -m flags for multi-line commits:
git commit -m "subject line" -m "body line 1" -m "body line 2"
yarn test)yarn track-bundle-size)yarn eslint, yarn stylelint)If making API changes or adding functionality:
Add example to documentation:
app/src/docs/_examplesapp/src/docs/pagesUpdate Property Explorer:
app/src/docs/explorerConfigsGenerate API (usually done in deployment):
yarn generate-components-api
Add entry to the top (unreleased) section of changelog.md:
# 6.x.x - xx.xx.2026
**What's New**
* [ComponentName]: description of new feature ([#456](https://github.com/epam/UUI/issues/456))
**What's Fixed**
* [ComponentName]: description of fix ([#123](https://github.com/epam/UUI/issues/123))
Format:
**What's New** for features/enhancements, **What's Fixed** for bug fixes[ComponentName]: to identify the affected component([#123](https://github.com/epam/UUI/issues/123))develop (include GitHub issue number if applicable)yarn test), update snapshots if neededchangelog.mddevelop branchWhen opening a PR, include:
PRs must pass these quality checks:
If bundle size increased intentionally:
yarn track-bundle-size-override
Warning: Only use if sizes are expected to increase. This overrides the baseline.
Use reduced worker count:
yarn test --maxWorkers=2 --testTimeout=10000
You can increase maxWorkers up to 4 if needed.
yarn start or yarn build-server && yarn start-server).env file for UUI_APP_BASE_URL if using non-standard URLyarn test-e2e-updateyarn and cd server && yarn to install all dependenciesyarn build-server before yarn startPORT env var or stop the conflicting processyarn test -- --testPathPattern="Button"
Use --testNamePattern="should render" to match test names. See unit-testing for more.
Helps create and modify UUI (EPAM Unified UI) components following established patterns. Use when creating new components, modifying existing components, working with withMods, component props, styling, or component architecture in the UUI library.
Helps work with UUI DataSources (ArrayDataSource, LazyDataSource, AsyncDataSource) powering PickerInput, DataTable, FiltersPanel, and other data-driven components. Use when implementing or fixing features that load, filter, sort, or display lists of data.
Helps update UUI documentation, add doc examples, configure Property Explorer, and manage component API documentation. Use when adding documentation examples, updating Property Explorer configs, generating API references, working with UUI documentation site, or when adding/removing/modifying public props on component interfaces.
Helps create and maintain E2E and screenshot tests for UUI components using Playwright. Use when adding E2E tests, creating screenshot tests, updating preview configurations, or working with Property Explorer previews for testing.
Fetches GitHub issues from URLs and creates implementation plans for UUI. Use when the user provides a GitHub issue link (github.com/.../issues/N), asks to plan work from an issue, or implement/fix an issue by URL.
Guides the UUI package release process including stable and beta releases, changelog updates, and handling failed releases. Use when releasing UUI packages, updating changelog, or troubleshooting release issues. For maintainers only.