1
0
mirror of https://github.com/tabler/tabler.git synced 2026-08-06 19:32:22 +04:00
Files
tabler/CONTRIBUTING.md

42 lines
2.2 KiB
Markdown

# Contributing to Tabler
Thank you for wanting to contribute! This is a short overview - the full guide lives in the documentation: [How to Contribute](https://docs.tabler.io/ui/getting-started/how-to-contribute/).
## Quick start
Requirements: Node.js 22.12+ and [pnpm](https://pnpm.io/).
```sh
pnpm install
pnpm run dev
```
This starts the preview website at [http://localhost:3000](http://localhost:3000) and the documentation at [http://localhost:3010](http://localhost:3010), both with live reload.
## Where things live
- `core/` - the framework: SCSS (`core/scss/`) and JavaScript (`core/js/`)
- `preview/` - demo website (Astro, pages in `preview/pages/*.astro`)
- `docs/` - documentation website (Astro, pages in `docs/pages/**/*.mdx`)
- `shared/astro/` - components and layouts shared by preview and docs (`@shared` alias)
- `shared/data/` - JSON data for demo pages (`@data` alias)
Do not edit `dist/` folders - they are generated by the build.
## Before you open a pull request
1. **Branch off `dev`** and use the branch naming convention: `<type>/<short-description>`, for example `feat/gh-123-add-stepper-component` or `fix/markdown-table-overflow`. Allowed types: `feat`, `fix`, `docs`, `chore`, `refactor`, `test`, `build`, `ci`, `perf`, `style`, `revert`.
2. **Build and test**: `pnpm run build` must pass. For docs changes, also run `pnpm run lint`.
3. **Add a changeset** if your change affects any package: `pnpm exec changeset`. Use one sentence starting with `Added`, `Updated`, `Fixed` or `Removed`, with backticks for code tokens (for example `` Added `.btn-ghost` variant for buttons. ``).
4. **Write the PR in English**: a concise title in present tense (max ~72 chars, no trailing period) and a short description that explains why the change is needed.
## Code style
- Use Bootstrap 5 conventions and Tabler's CSS custom properties pattern: `--#{$prefix}component-property`.
- Write documentation in simple English: short sentences, common words, direct instructions.
- Ensure changes work in all supported browsers (see the [browser support docs](https://docs.tabler.io/ui/getting-started/browser-support/)).
## Code of conduct
By participating, you agree to follow our [Code of Conduct](.github/CODE_OF_CONDUCT.md).