Contributing
How to contribute to Tau - guidelines, setup, and resources.
Contributing to Tau
Thank you for your interest in contributing to Tau! We welcome contributions of all kinds — code, documentation, bug reports, feature requests, and more.
Getting Started
Development Setup
See our Contributing Guide for detailed instructions on:
- Prerequisites (Node.js 24+, pnpm, Docker)
- Installing dependencies
- Setting up the database
- Running development servers
- Database commands
- Linting rules and conventions
Quick Start
# Clone the repository
git clone https://github.com/taucad/tau.git
cd tau
# Install dependencies
pnpm install
# Start the database
pnpm db:up
# Copy environment files
cp apps/ui/.env.example apps/ui/.env.local
cp apps/api/.env.example apps/api/.env.local
# Start development servers
pnpm devWays to Contribute
Report Bugs
Found a bug? Open an issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Screenshots or screen recordings if applicable
Suggest Features
Have an idea? Start a discussion or open an issue describing:
- The problem you're trying to solve
- Your proposed solution
- Any alternatives you've considered
Submit Code
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests and linting (
pnpm nx affected -t test,lint,typecheck) - Commit with clear messages
- Push and open a Pull Request
Add a CAD Kernel
Want to integrate a new CAD engine? See our Kernel Integration Guide for step-by-step instructions on adding support for new kernels.
Improve Documentation
Documentation improvements are always welcome! You can:
- Fix typos or unclear explanations
- Add examples and tutorials
- Translate documentation
- Improve API documentation
Community Guidelines
Code of Conduct
Please read our Code of Conduct before participating. We're committed to providing a welcoming and inclusive environment.
Security
Found a security vulnerability? Please review our Security Policy and report it responsibly to security@tau.new.
Resources
| Resource | Description |
|---|---|
| Discord | Join our community for questions and discussions |
| GitHub Issues | Bug reports and feature requests |
| GitHub Discussions | General questions and ideas |
| Contributing Guide | Development setup and guidelines |
Current Limitations
Some areas where contributions are especially welcome:
OpenSCAD Kernel
- Only STL export is currently implemented; STEP export is planned
- Error messages could be improved with better parsing
Zoo (KCL) Kernel
- Requires internet connection for Zoo API access
- API token required for full functionality
General
- Accessibility improvements
- Mobile experience optimization
- Additional export formats
- Performance optimizations
Thank you for helping make Tau better! 🙏