# Development Guide Welcome to the Plexus development team! Please follow these guidelines to ensure a consistent and high-quality codebase. ## 🛠 Setup 1. **Docker**: The easiest way to develop is using the dockerized shell. ```bash make shell ``` 2. **Local**: If you prefer local development: ```bash make install ``` ## 📝 Coding Standards - **Linting**: Always run `make lint` before pushing. - **Testing**: Add unit or integration tests for new features. Use `make test` to run them. - **Documentation**: Update the `docs/` directory if you change architecture or add major features. ## 🌿 Git Workflow - **Commits**: Use descriptive commit messages. - **Task IDs**: Always include the task ID in your commit message if applicable. - Example: `feat: add emoji picker (Task #123)` - **Regular Commits**: Commit early and often. Small, atomic commits are preferred. ## 📋 Task Management We use an internal task tracker powered by DuckDB. - List tasks: `make task-list` - Add task: `make task-add title="My new task"` - Complete task: `make task-done id=1` See [Task Tracker Documentation](file:///home/sinan/Documents/repositories/local/plexus/docs/tasks.md) for more details.