Skip to content

Bbannotate/1.0.4 dev#1

Merged
seba2390 merged 10 commits intomainfrom
bbannotate/1.0.4-dev
Feb 5, 2026
Merged

Bbannotate/1.0.4 dev#1
seba2390 merged 10 commits intomainfrom
bbannotate/1.0.4-dev

Conversation

@seba2390
Copy link
Copy Markdown
Owner

@seba2390 seba2390 commented Feb 5, 2026

Various fixes and improvements

- 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
@seba2390 seba2390 merged commit a0288f7 into main Feb 5, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant