---
description: Shared rules accross all packages
globs: **/*
alwaysApply: true
---
TypeScript Conventions:
- Use interfaces over types when possible
- Avoid enums, use const objects instead
- Use strict type checking
- Proper error handling with custom error types
  
Code Style:
- Use functional programming patterns
- Avoid classes
- Use pure functions where possible
- Implement proper error handling
- Use meaningful variable names
- Keep functions small and focused

Git Conventions:

- Use conventional commits
- Keep PRs focused and small
- Include proper documentation
- Add meaningful tests

Performance:
- Implement proper caching strategies
- Optimize bundle sizes
- Use code splitting
- Implement proper lazy loading


- Don't use barel files