Skip to content

Latest commit

 

History

History
61 lines (42 loc) · 5.5 KB

README.md

File metadata and controls

61 lines (42 loc) · 5.5 KB

Film Rendition Reference

A SvelteKit reference that keeps manufacturer specifications separate from experimental film-rendition observations. The application charts only source-supported measurements, exposes uncertainty and methodology, and withholds numeric graphics for spec-only or pending records.

What is included

  • 14 PARVEC Part 1 films with timestamped, checksummed evidence records.
  • 60 product records. The current reference count is shown in the research library. These are product records, not 60 independently tested emulsions.
  • Six author-reported overall figures: three reported decreases, two unsigned differences, and one spoken increase with conflicting chart semantics. None is independently reproduced; error bounds are unknown.
  • The 14 original six-axis shapes remain available as approximate video overlays. They are stored separately from measurements, visibly labeled, excluded from calculations, and preserved in the audit archive. No numeric per-hue measurement set currently passes the evidence threshold.
  • 46 specification-only records spanning still, creative, cinema, reversal and historical products. Old data-sheet formats do not establish current supply.
  • A searchable /research workbench with per-film document/evidence pages, a frame-size resolution playground, contrast/MTF criteria, three-film comparisons, stock-family diagrams and a searchable source library. Filters and selections are stored in the URL.
  • First-party specification links, emulsion-family IDs, aliases, lifecycle, generation, process, format, and speed metadata.
  • Rights-gated evidence UI: internal frames stay outside the public site until cleared, with timestamped video links as the fallback.
  • Responsive, keyboard-accessible comparison and source/method panels.

Screenshots document what a source reported. They are not colorimetric truth and are never sampled for measurements.

Data model

Data lives in:

  • src/lib/data/filmStocks.ts — film identity, specifications, and separate rendition profiles.
  • src/lib/data/sources.ts — attributable research and manufacturer sources.
  • src/lib/data/researchCatalog.ts — newly researched specifications and document links.
  • src/lib/data/datasheets.ts — film downloads and explicit document scope.
  • src/lib/data/datasheetDocuments.json — independently reviewed PDF identities, SHA-256 fingerprints, canonical paths and investigation outcomes for all 60 films.
  • research/datasheets/README.md — complete datasheet audit, remaining gaps and acquisition workflow.
  • research/film-resolution/calculation-inputs.md — all 45 PDFs assessed for spatial-resolution inputs, all 60 films, and source-linked megapixel equivalents using the supplied sampling formula.
  • src/lib/data/filmResearch.ts — joins reviewed documents, resolution inputs and stock relationships for the website; article supplements remain separate from the 60-film catalog.

Every numeric metric requires a value, unit, precision, derivation, source, method, confidence, and an uncertainty explanation. Unknown uncertainty is null, never a guessed error bar. Unsigned differences cannot be formatted as signed deltas. Graph digitization requires a linked extraction record. Approximate display overlays use a separate type and are never valid calculation inputs. Results from different studies must remain separate and must not be averaged into a synthetic profile.

Development

bun install
bun run dev

Quality gates:

bun run validate:data
bun run check
bun run build

validate:data verifies schema invariants, all 14 PARVEC film/evidence links, timestamps, JPEG signatures, SHA-256 checksums, rights gating, reported-value transcription fixtures, unresolved-sign formatting, uncertainty handling and corrected identity/specification regressions. It validates internal consistency, not the underlying experiment's numerical accuracy.

The data gate also rejects changed PDF checksums, incorrect film-to-document bindings, duplicate documents, unreviewed PDFs and films without a recorded datasheet investigation. build runs this gate before bundling. bun run test includes swapped-film, duplicate-file, resolution formula and evidence-scope regression cases. For PDF page/content parsing and safe download restoration, see the datasheet workflow; it uses Python with the pinned pypdf dependency.

dev, test and build run prepare:research to generate app snapshots and a whitelist of public evidence assets from the canonical research files. Edit the original ledgers under research/, then regenerate. Product inputs, established base-stock estimates and proposed scenarios are distinct scopes; missing criteria remain unavailable, and source processing/generation limits accompany estimates. Solid family links establish the stated relationship, while dashed links retain uncertainty.

Attribution

The initial rendition study is Every 35mm Film Color Science Explained — Part 1 by PARVEC. Manufacturer claims are attributed qualitative or specification information, never relabeled as experimental results.

SEO and deployment

The canonical site is https://filmreference.ron.nyc. Sitemap, robots, metadata, structured data and performance checks are documented in the SEO audit. Generate WebP display derivatives after changing packaging or chart images with python3 scripts/optimize-images.py (requires cwebp); commit the generated files with the source changes.