Files
Marcos Paulo 5d4a2c8fe1
ci / ci (macos-latest) (push) Has been cancelled
ci / ci (ubuntu-latest) (push) Has been cancelled
ci / ci (windows-latest) (push) Has been cancelled
feat: all files in the Explorer, publish and share links, image annotation core, last-edit line
- Explorer: every non-hidden file is listed with its own icon and tab kind (image, video, audio, pdf, code, text, other); settings show_all_types, hidden_extensions and show_annotation_files; kinds without a viewer open a placeholder card, never the text editor
- crates/annotate: non-destructive image annotations (strokes, lines, rectangles, ellipses, text) with strict sidecar JSON validation, hit testing, zoom/pan transforms and undo
- engine: file.info, file.hash, file.neighbours, image.annotations.load and save (a corrupt sidecar is kept as .bad, the image is never modified), header-only image sizing for PNG, JPEG, GIF, WebP, BMP and SVG
- sync server: publish notes or folders as static HTML (raw HTML escaped, strict CSP, publish: false honoured, no attachments) and expiring revocable share links, with per-route rate limits and audit rows
- ui-egui: "Last edit - name, time ago" in the status bar from server.file_meta
- specs and designs: file viewers spec, 20 PaperCraft exports rated 8.2 of 10 (design/files/RATING.md), annotate and viewer briefs

Verified with cargo xtask ci (fmt, clippy -D warnings, workspace tests, layers, tree, i18n).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 14:38:47 -03:00

3.0 KiB

Rating of the file-viewer designs (2026-10-20)

Made by Codex (gpt-6.1-sol) in the PaperCraft project NotesCraft, page "File viewers", from scripts/mm/design-file-viewers.md. Reviewed by the orchestrator from the exported PNGs (all 10 dark screens and one light screen viewed) and a lint run of my own (0 errors, 0 warnings on all 10).

# Screen Score /10 What works What to fix
01 Explorer, all files 8 Distinct icon and extension chip per type, folder tree, "Show all file types" toggle with a "9 files, sidecars hidden" count, reads like the real app The note's shot.png embed shows a text chip, not the inline image the spec promises; the video icon looks like a generic file glyph
02 Image lightbox 8 Clear toolbar (zoom, %, fit, 100%, rotate, Draw, Copy, Reveal), neighbour arrows, "3 of 12", info line A stray checkerboard square in the image corner looks like a glitch (show the checkerboard only where there is transparency); a folder icon sits before the file name instead of an image icon
03 Image annotate 7.5 Full tool row, 8 colours, widths, undo/redo/Clear/Done, "Saved to ...annotations.json" status Pen and highlighter icons are nearly identical and nothing is labelled; the three width dots are tiny; the sample annotations point at nothing (arrow and label are not related)
04 Mobile lightbox 8.5 44 pt tool bar, zoom chip, neighbour dots, clean top bar with "3 of 12" None serious; page dots could show the count
05 Mobile annotate 8.5 Strong bottom sheet, tools in two rows, colours, undo/redo, "Saved - original image unchanged" reassurance Same sample-annotation issue as 03
06 Video viewer 7 Poster with play overlay, time and seek bar with a buffered part, speed, fullscreen, ffmpeg-missing state The fallback strip leaks design-note text ("ffmpeg not found - alternate state") into the copy; folder icon in the header
07 Code viewer 8 Line numbers, syntax colours from the syn-* variables, language chip, wrap toggle, Copy, read-only banner, status footer Drawn in the proportional font: the app must use a monospace font (PaperCraft only has Inter, a tool limit, not a design choice)
08 PDF viewer 8.5 Thumbnail rail with the current page marked, page counter, zoom and "Fit width", clean white page Thumbnails are identical copies (fine for a mock)
09 Other file card 9 Centred card, type, size, modified, "Compute hash", primary "Open with system" and "Reveal" Header uses a folder icon (same as the others)
10 Settings, Files and links 9 Matches the existing settings look; the three new rows with clear help text; a reassurance card about annotations None

Overall: 8.2 / 10. Lint clean, complete (10 screens, dark and light), consistent with the NotesCraft look. Fixes to carry into the build (not worth another design round): file-kind icon in every viewer header, inline image preview for embeds, checkerboard only under transparency, labelled tools with tooltips, monospace for code, no meta text in copy.