Skip to content

AskHamiz: mascot state system and fullscreen chat UI #83

Description

@shreekardittakavi

Spec: Doc — "The following faces are cycled through at every prompt sent to the chatbot. States: Happy, Sad, Unimpressed, Geeked, LockedIn, ImposterAmongus, TopHat, Dictator, Duck, Persona 5." Also: "Full screen. Gif for the pictures."

Scope

  • A mascot component with the ten named states, advancing on each prompt sent.
  • Assets: the doc calls for GIFs. Budget for it — a set of animated GIFs is a meaningful payload. Prefer optimized formats, lazy-load off the initial paint, and preload only the next state rather than all ten.
  • Fullscreen chat mode alongside the existing panel/inline presentation.
  • Respect prefers-reduced-motion: fall back to a static frame per state when the user has asked for reduced motion. Animation is decoration here; it must never be mandatory.
  • Give each state a meaningful alt so the mascot is not noise for screen reader users, and keep it decorative (aria-hidden) if it carries no information.
  • Works in light and dark mode (AGENTS.md §7).

Acceptance criteria

  • Ten states cycle deterministically as prompts are sent
  • Fullscreen mode toggles cleanly within the locked shell (AGENTS.md §2)
  • Reduced-motion users get static frames
  • Asset loading does not delay first paint of the chat

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions