Skip to content
Docs
Open Promoeyes
Monoliths

Monoliths

The picture is the shadow: five concrete masses around one phone under a single hard raking sun that swings between beats, giving every feature a different shadow composition on the same architecture.

Five bare concrete masses (a tower, wall, fin, block and pillar) stand around a low plinth under a dark sky, lit by a single hard raking sun that swings between beats so the same architecture throws new shadows, with a thin glowing slit between tower and wall. Five 6 s beats at 120 bpm over 30 s: a snap of sunlight and glide in, a high plan view and dive, a backlit close-up, a sundial crane, then a low slow push to land.

Length
30 s
Scenes
5
Device
iphone
Style
abstract
Camera
push in, top down, crane, ultra closeup, low angle

The AI keeps this film's shots, timing and camera, and puts your app in it.

//
    GEN-MONOLITHS — 30 s, 16:9, 30 fps. GENERIC APP-PROMO TEMPLATE · MONOLITHS.
    Sample app (sample data only): Ridge, a project-management app. Treatment: treatment.md.

    THE IDEA. The picture is the shadow. Five raw concrete masses stand around a plinth that holds
    one phone, under ONE hard raking sun (a directional light with an authored shadow camera).
    The sun swings between beats, so every feature gets a completely different shadow composition
    on the same architecture, and the camera finds a new architectural angle each time. The copy is
    inlaid in the pavement; the name is cast into the face of a mass.

    THE WORLD. Pale board-marked concrete (bump only), a near-black sky, five masses
    (m1 tower 0.8 x 4.2 m back-left · m2 wall 2.4 x 2.6 m back-right, the end-card face ·
    m3 fin 0.18 x 3 m front-right · m4 block front-left · m5 pillar far back), a 560 x 960 plinth at
    the origin (top y 960; the phone stands on it, never translated), and one ACCENT back panel
    glowing in the gap between m1 and m2 with an ACCENT area light bouncing off it onto the plinth.

    PALETTE. concrete #9A958C / #A29D93 / #8A857C · plinth #C2BCB2 · ink #18191C · cream #EFE9DE ·
             sun #FFF3E4 · sky #0E0F12→#060607 · ACCENT #3B6BFF (the only colour in the world)

    BEATS (music 120 BPM: beat 0.5 s, bar 2 s — every cut on a bar line)
      s1-hook  0–6    darkness, the accent slit only; the sun snaps on at 0.35 grazing low from front-
                      left and wheels up and round to back-left (0.35–4.6), the long shadows raking
                      across the floor to the plinth; the camera glides in from 6.4 m; the home screen
                      ASSEMBLES (ui-assemble: lyr-bg/content/nav/cta launch 1.9–2.8 from 9–10 m out
                      frame, hover as a +0/22/44/66 mm staircase while the phone stands turned −15°,
                      pack home magnetic 4.9–5.9 as it turns to +8°)
      s2-f1    6–12   sun high front-right · high three-quarter plan view, caption 1 inlaid in the
                      floor; dive to the phone: the task TYPES into slot-input (typewriter), Send dips,
                      the new row lands
      s3-f2    12–18  sun behind (backlight) — shadows run at the lens · high front-right, caption 2 in
                      the shade; ULTRA CLOSE-UP along slot-hero (side=front, yaw −50…−53°, fill 160–166,
                      dof 50/12); pull back as the phase bars grow from their left edges
      s4-f3    18–24  near top-down plan; the sun sweeps from back-left to front-left and its shadow
                      edge uncovers caption 3; crane down to the phone: the hero bar fills, slot-cta
                      dips, a confirmation toast lands
      s5-end   24–30  sun front-left high, the m2 face clean; LOW hero angle at plinth height: phone on
                      the plinth left, the name rises on the face of m2, the tagline under it

    TEMPLATE SLOTS — what to change to re-skin this for ANY app (keep everything else constant):
      BRAND    text3d#e-name text= (app name) and text3d#e-tag text= (tagline), scene s5-end.
               Long names: keep size ≤ 300 and the anchor at x 700 so it stays on m2's face.
      ACCENT   ONE colour, three places: material m-accent (emissive panel), material m-name
               (the name), light#accent-back (in every scene's lights). Change the hex in all three.
      SCREENS  gen-monoliths.screens.html → scr-home (4 layers lyr-bg / lyr-content / lyr-nav /
               lyr-cta), scr-f1, scr-f2, scr-f3. Keep the slot ids: slot-input (typewriter target in
               scr-f1, with f1-ph / f1-type over a childless shell), slot-hero (ultra close-up target
               in scr-f2: keep the number + its label inside the card), slot-cta (press dip in f1 and
               f3), f1-new (the row that lands), bar-1..4 (grow in f2), f3-bar / f3-toast (f3). Re-run
               `npx tsx scripts/html-screens.mts gen-monoliths.s