Start
Contributing
பங்களிப்பு
Tamil DS is built by and for the Tamil digital community. Whether you fix a typo, report a bug, add a component, or share the project — every contribution matters.
Tamil DS தமிழ் டிஜிட்டல் சமூகத்தால் கட்டப்படுகிறது. ஒவ்வொரு பங்களிப்பும் முக்கியமானது.
Ways to contribute
Report a bug
பிழை தெரிவிக்கவும்
Found something broken? Open a GitHub issue with the component name, steps to reproduce, and your environment. Accessibility bugs are treated as P0 — highest priority.
Improve documentation
ஆவணங்களை மேம்படுத்தவும்
Docs can always be clearer. Fix typos, add examples, improve Tamil translations, or add missing usage rules. Documentation PRs are the fastest to review.
Add or improve a component
கூறுகளை சேர்க்கவும்
New components must be bilingual, WCAG AA compliant, and built on @base-ui/react. Follow the AI Vibe Coding manual for implementation quality.
Translate Tamil content
தமிழ் மொழிபெயர்ப்பு
Every component and page should have Tamil labels and descriptions. If you find missing Tamil content, submit a PR with natural Tamil phrases — not transliterated English.
Share Tamil DS
Tamil DS ஐ பகிரவும்
Use it in a project and share what you built. Write about it. Present it at a design or developer meetup. Regional adoption depends on community sharing.
Fork and experiment
பிரிந்து சோதிக்கவும்
Tamil DS is MIT licensed. Fork it, adapt it, build something new on top of it. If your experiment improves the core system, open a PR.
Development setup
Clone the repository and run the dev server locally in under 2 minutes:
# 1. Clone git clone https://github.com/selva-toi/Tamil_Design_System.git cd tamilds # 2. Install npm install # 3. Dev server (Turbopack) npm run dev # → http://localhost:3000 # 4. Type check npx tsc --noEmit # 5. Production build (required before PR) npm run build # → All 92+ routes must appear in output
Project structure
src/app/(docs)/All documentation routes — add new pages here
src/app/(preview)/Standalone block preview routes
src/components/ui/UI primitives — built on @base-ui/react
src/components/docs/Doc helpers: PageHeader, ComponentPreview, DoDont, PropsTable
src/components/layout/Site shell: header, sidebar, footer, mobile nav
src/components/landing/Homepage sections
src/components/blocks/Large civic page compositions
src/lib/nav.tsAll sidebar and top nav items — add pages here too
src/app/globals.cssTailwind v4 CSS-first tokens via @theme {}
Contribution guidelines
Every PR is reviewed against these requirements before merge:
One PR per feature or fix — keep changes focused and reviewable
All components must be bilingual: Tamil labels and descriptions required
WCAG AA minimum for all interactive UI — accessibility is non-negotiable
Follow the AI Vibe Coding manual for code quality, imports, and naming
Use @base-ui/react primitives — not Radix UI or custom div/button markup
Run npm run build before submitting — all 92+ routes must pass
Never hardcode oklch/hex/rgb values — use CSS token utilities only
Apply font-tamil only to text nodes, never to wrapper elements with controls
Code of conduct
Tamil DS is a Tamil-first, inclusive community. We welcome contributors of all backgrounds, experience levels, and geographies. In all interactions — issues, PRs, discussions — be respectful, patient, and constructive.
- Tamil speakers: use natural Tamil, not transliterated English, in content PRs
- English is fine for code, PR titles, and technical discussions
- Discriminatory, harmful, or exclusionary language is never acceptable
- Treat every bug report as an opportunity to improve, not a criticism