Commit Graph

16 Commits

Author SHA1 Message Date
Mondo Diaz
bd2b6eb110 Pin additional packages for JFrog compatibility
- react-router-dom: 6.28.0 (was resolving to 6.30.3 not in catalog)
- rollup: 4.52.4 (4.55.1 is 2 days old)
- caniuse-lite: 1.0.30001692 (latest was 9 days old)
- baseline-browser-mapping: 2.9.5 (2.9.12 is 0 days old)
2026-01-07 15:10:11 -06:00
Mondo Diaz
0df11bdca7 Pin ws and ufo to older versions for JFrog compatibility
JFrog blocks packages < 14 days old. Override transitive deps:
- ws: 8.18.0 (from jsdom)
- ufo: 1.5.4 (from vitest -> mlly)
2026-01-07 15:01:51 -06:00
Mondo Diaz
72e988dda1 Sanitize artifact ID input to hex-only characters
- Convert input to lowercase
- Strip non-hex characters (a-f, 0-9 only)
- Limit to 64 characters (SHA256 length)
- Show character count in validation hint
2026-01-07 14:37:44 -06:00
Mondo Diaz
0302e5b21a Add offline detection, chunked uploads, and security tests (#9, #10, #12, #15)
- Add offline detection with navigator.onLine and auto-pause/resume
- Implement chunked upload for files >100MB with localStorage persistence
- Add download by artifact ID input field in PackagePage
- Add 10 security tests for path traversal and malformed requests
- Fix test setup globalThis reference
2026-01-07 14:24:44 -06:00
Mondo Diaz
b9b4334393 Add frontend testing infrastructure with Vitest (#14) 2026-01-07 14:01:37 -06:00
Mondo Diaz
961f6ff6b4 Add drag-and-drop upload component with progress tracking (#8) 2026-01-07 13:49:45 -06:00
Mondo Diaz
7e68baed08 Add ref_count management for deletions with atomic operations and error handling 2026-01-06 13:44:23 -06:00
Mondo Diaz
2097865874 Remove redundant search bar from Home, rename page filters
- Remove SearchInput from Home page (use GlobalSearch in header instead)
- Rename "Search packages..." to "Filter packages..." on ProjectPage
- Rename "Search tags..." to "Filter tags..." on PackagePage
- Update FilterChip labels from "Search" to "Filter"

This differentiates the global search (header) from page-level filtering.
2025-12-12 12:55:31 -06:00
Mondo Diaz
096887d4da Add global search and filtering enhancements 2025-12-12 12:12:46 -06:00
Mondo Diaz
e89947f3d3 Develop Frontend Components for Project, Package, and Instance Views 2025-12-12 10:23:44 -06:00
Mondo Diaz
dea03c4a12 Implement Backend API to List Packages within a Project 2025-12-11 18:47:46 -06:00
Mondo Diaz
c119ab4a04 Implement backend upload/download API enhancements 2025-12-11 18:05:08 -06:00
Mondo Diaz
71bb7d96b3 Modern dark mode UI overhaul 2025-12-11 14:58:13 -06:00
Mondo Diaz
2e2f17ae37 Fix remaining old terminology references
- backend/app/main.py: grove/ -> project/ in SPA route check
- frontend/vite.config.ts: /grove -> /project proxy
- helm/orchard/templates/NOTES.txt: Updated API examples
- migrations/001_initial.sql: Updated table/column names
2025-12-08 10:41:26 -06:00
Mondo Diaz
ff7df9eb3f Rename terminology to industry standard terms
- Grove → Project
- Tree → Package
- Fruit → Artifact
- Graft → Tag
- Cultivate → Upload
- Harvest → Download

Updated across:
- Backend models, schemas, and routes
- Frontend types, API client, and components
- README documentation
- API endpoints now use /project/:project/packages pattern
2025-12-08 10:38:44 -06:00
Mondo Diaz
2261bfc830 Rewrite from Go + vanilla JS to Python (FastAPI) + React (TypeScript)
- Backend: Python 3.12 with FastAPI, SQLAlchemy, boto3
- Frontend: React 18 with TypeScript, Vite build tooling
- Updated Dockerfile for multi-stage Node + Python build
- Updated CI pipeline for Python backend
- Removed old Go code (cmd/, internal/, go.mod, go.sum)
- Updated README with new tech stack documentation
2025-12-05 17:16:43 -06:00