---
alwaysApply: true
---

# Style rules

## Naming

- Use descriptive names for variables and functions
- Use concise names for variables and functions
- Use meaningful names for variables and functions
- Use constants for magic numbers and strings

## Imports

- Use absolute imports
- Remove unused imports
- All imports must be placed at the top of the file

## Documentation

- Always write documentation for all public APIs
- Add at least one example for each public API

## Typing

- Add type hints for all public APIs
- Use type annotations for tests as well

## Keep in mind when designing you code

- Use best practices of Python
- Code must be maintainable and readable
- Code must be SOTA
- It is forbidden to use getattr/setattr/hasattr except for declaring them on decorators

## Linters checks

- All checks must be successful
- You are disallowed to ignore any checks
- You are disallowed to suppress any checks
- Use Ruff and MyPy to lint the code

## Python version

- Use Python 3.14 latest features
