- Implement JobsMixin for job-related operations including job overview, execution, and control.
- Implement MediaMixin for media management, including creation, updating, and file uploads.
- Implement ProductGroupsMixin for handling product groups, including bulk operations and hierarchy retrieval.
- Implement ProductsMixin for product management, including bulk creation and updates.
- Implement ProtocolsMixin for protocol-related operations, including retrieval by job ID and category.
- Implement TextMixin for managing text entries, including bulk operations.
- Implement TreeGroupsMixin for tree group management, including bulk operations and hierarchy retrieval.
- Organized model imports in __init__.py for better structure and readability.
- Grouped related models into separate files for attributes, attribute groups, products, protocols, and tree groups.
- Removed duplicate imports and ensured all necessary models are included.
- Enhanced code maintainability by separating concerns and improving the overall organization of the models package.
- Added `rest_api` module with client and authentication classes.
- Implemented `LobsterRestApiClient` for interacting with the REST API.
- Created models for job and protocol responses using Pydantic.
- Developed examples demonstrating basic usage, API token authentication, job execution, and error handling.
- Added unit tests for authentication and client methods, including error handling scenarios.
- Added retry logic for webhook event delivery in `retry.py` with exponential backoff.
- Created example webhook server implementations in `server.py` for Flask and FastAPI.
- Developed comprehensive examples for using the Elytra webhooks subpackage in `webhook_examples.py`.
- Introduced unit tests for webhook functionality, including event handling, authentication, and retry logic in `test_webhooks.py`.
- Introduced .copilot-instructions.md for GitHub Copilot usage guidelines.
- Created DEVELOPMENT.md detailing environment setup, workflow, and common tasks.
- Established STYLE_GUIDE.md as a quick reference for code style, formatting, and conventions.
- Created pyproject.toml for project metadata and dependencies.
- Added requirements.txt for development and production dependencies.
- Implemented basic test structure in the tests module.
- Developed unit tests for ElytraClient, including Pydantic validation and error handling.