The visual and verbal design of LTL is load-bearing: this is an app used at night, in hospital waiting rooms, and in quiet moments, and the design has to earn trust during vulnerable times.

Theme

Warm dark is the default. Bright white UI is wrong for this context. Light mode exists for accessibility but is secondary. The palette is built around deep warm charcoals, a sparing warm-gold primary accent tied to the candle motif, and soft amber, sage, and terracotta for secondary states. Errors use a muted terracotta rather than aggressive red; success uses a soft sage rather than neon green.

Typography

  • UI: a high-legibility sans for small sizes.
  • Reading: a warm serif for entry body text and memorial content, giving the content gravity.
  • Display: an optional serif italic for quotes and anchor-date callouts, used sparingly.

Motion

  • Transitions are longer than standard (roughly 300 to 400ms) so the app feels unhurried.
  • No bounce and no snappy spring animations; eased curves throughout.
  • The one exception is the candle flicker on memorial screens: subtle, persistent, and hand-tuned to feel organic.

Iconography

  • A custom, line-based icon set with a warm stroke weight.
  • The candle is the app’s signature mark.
  • No emoji-like icons and no overly literal imagery.

Voice and Copy

The verbal design is as governed as the visual.

  • Second person, present tense.
  • Prefer the specific over the abstract: name the person rather than saying “loss.”
  • Use “passed away” rather than bare “died” in user-facing copy that addresses a person’s death; it reads as humane without becoming vague. Still avoid the genuinely evasive euphemisms (“lost,” “in a better place,” “passing,” “no longer with us”) that obscure what happened.
  • Never “celebrate” in the context of memorial content. A death anniversary is marked, remembered, honored, or sat with, never celebrated.
  • Error messages are humane and reassuring (“We couldn’t save that right now. It’s still on your device, and we’ll try again.”).
  • The app never apologizes for its existence; it is allowed to be direct about what it is and is not.

Empty States

Empty states are an opportunity, not a gap. An empty Personal timeline invites a first entry, an empty Pairing shows both names and the first prompt, and an empty memorial shows the candle.