Thank you for your interest in contributing to Tesslate Studio! This document provides guidelines and information for contributors.
By participating in this project, you agree to maintain a respectful and inclusive environment.
- Node.js 18+ and npm/pnpm
- Python 3.11+
- Docker and Docker Compose
- Git
-
Fork the repository on GitHub
-
Clone your fork:
git clone https://github.com/YOUR_USERNAME/Studio.git cd Studio -
Copy environment variables:
cp .env.example .env
-
Start the development environment:
docker compose up -d
-
Access the application:
- Frontend: http://localhost
- API: http://localhost/api
Backend tests:
cd orchestrator
uv run pytestFrontend tests:
cd app
npm test- Check existing issues to avoid duplicates
- Include steps to reproduce, expected vs actual behavior
- Add screenshots if applicable
- Check if it's already been suggested
- Clearly describe the problem it solves
- Consider the impact on existing functionality
Look for issues labeled:
good first issuehelp wanted
-
Create a branch from
main:git checkout -b feature/your-feature-name
-
Make your changes following our coding standards
-
Commit your changes with a descriptive message:
git commit -m "feat: add new feature X"We follow Conventional Commits:
feat:- New featurefix:- Bug fixdocs:- Documentation changesrefactor:- Code refactoring
-
Push and create a Pull Request
- Follow PEP 8 style guide
- Use type hints where possible
- Write docstrings for public functions
- Use TypeScript for all new code
- Define interfaces for component props
- Use functional components with hooks
Studio/
├── app/ # React frontend
├── orchestrator/ # FastAPI backend
├── k8s/ # Kubernetes manifests
└── docker-compose.yml # Local development setup
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.