Merged
Conversation
- Add /api/health endpoint to routes for API availability check - Add loading spinner in CLI while waiting for server to start - Update tests for health endpoints (remove duplicate class)
- Add 'done' field to ImageMetadata model for tracking completion status
- Add done_image_count to ProjectInfo for progress tracking
- Create API endpoints for marking images done and querying status
- PATCH /images/{filename}/done
- GET /images/{filename}/done
- GET /images/done-status
- Add Done button to toolbar with toggle functionality
- Show confirmation dialog when marking empty image as done
- Auto-advance to next image after marking done
- Display green checkmark badge on completed image thumbnails
- Add centered logo in header bar
- Update progress indicator to track done count vs annotated count
- Remove logo image from center of header bar - Add 'Bbannotate' text with gradient color effect - Use primary-purple-pink gradient for aesthetic appearance - Apply extra-bold font with tight tracking
- Add path containment validation to prevent path traversal attacks - Fix PIL Image leak by using context manager - Replace window.confirm() with accessible ConfirmDialog component - Add toast notifications for error feedback - Extract shared utilities (find_frontend_dist, LABEL_COLORS) - Make load_metadata public for export_service access - Add tests for new utility functions
Security: - Add path validation in delete_project() to prevent path traversal - Add path validation in get_annotation_service() for project ID header - Add export split sum validation (train + val + test <= 1.0) Code quality: - Replace browser confirm() with ConfirmDialog in ProjectManager - Surface error states from hooks via Toast notifications - Add try/catch in export_service to skip corrupt annotation files - Fix duplicate Image.open() by reading size before verify() - Add missing slowapi dependency to requirements.txt - Move useToast hook to dedicated file (fixes ESLint react-refresh warning)
- Fix broken image display: Added project_id query parameter to image URLs since browser <img> tags cannot send custom X-Project-Id headers - Restructure toolbar: Export button on right, navigation buttons centered - Move Done button to upper right corner of image view - Integrate label dropdown into canvas toolbar with zoom controls - Move labels configurer to right panel - Remove default labels, prompt user to create first label when drawing - Move Clear button to annotations section in right panel - Various linting fixes (line length, unused imports)
- lint: runs ruff check + frontend-lint + pyright type-check - lint-fix: runs ruff check --fix + frontend-lint-fix - format: runs ruff format + frontend-format (already existed) - Updated to include tests/ directory in linting/formatting - Bump version to 1.0.4 with changelog
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Various fixes and improvements