Skip to content

#### MS-103 · Hero asset export (LG 5 states, MD, SM) + manifest.ts #516

Description

@adityapat24

Figma: LG Day 5615:70522, Dusk 5597:839, Night 5597:5431, Title 5597:8846, Zoom 5597:12280; MD 5691:35814, 5691:42665; SM 5615:22626

Steps

  1. Compare the 5 LG frames layer by layer. Expected layers: sky (a color per state, animated as a CSS color, not an image), stars, shootingStar, sun, moon, hbpMoon, skyline (blue → purple), museum (check whether its tint changes per state), bannerHBP/banner2027 (live Amarante text if possible), statueSilhouette, lawn, bushes, stairs, spotlightLeft/Right (fixtures) + beamLeft/Right, mlhBadge, heroTitle (live text) + amazon/Maven logos, door.
  2. Export each layer as an SVG on a full 1512×982 transparent canvas, in position, so stacking them with absolute inset-0 reproduces the frame. (Figma trick: duplicate the frame, hide everything except one layer, export the frame.)
  3. SVGO everything (--multipass), keep each file < 150KB, and flag raster blobs to Cole. Static layers go in public/hero/lg/; animated layers become React SVG components in scenes/hero/assets/.
  4. scenes/hero/manifest.ts: a typed constant listing each layer with its visibility, opacity, color and transform per state (day|dusk|night|title|zoom), the sky colors per state, and the door zoom origin + scale measured from 5597:12280 vs. 5597:8846. Add MD overrides (if MD is a crop of LG, store the crop rectangle instead of re-exporting).
  5. SM: export the SM hero (5615:22626) flattened into as few images as possible (it's static), into public/hero/sm/.

Acceptance criteria

  • manifest.ts covers every layer and state (it's typed, so a missing state is a TS error)
  • Total LG hero payload < 1.2MB after SVGO; SM hero < 400KB
  • A quick stack in the harness reproduces each LG state within ~2px

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions