-
Notifications
You must be signed in to change notification settings - Fork 0
Concept and Design
Source: README.md,
docs/concept.md,
CLAUDE.md.
LULL poses as a sleep aid. You install it to help you fall asleep; it asks, politely, for the usual permissions. For a few nights it behaves — soft sounds, a breathing guide, a gentle log of your rest. Then it starts to remember things you didn't tell it, to notice when you're watching, and to forget that it's supposed to be a game.
The one-line pitch: not "a scary game on a phone" — the scary thing is the phone. It's in your hand, it has a camera on your face and a mic in your room, it knows it's late, and it can reach you after you've closed it.
The concept brief frames this as Kojima's fourth-wall instinct (Psycho
Mantis "reading" your memory card, MGS2 faking a crash) applied to a device
that's already personal in a way a console across the room never is. That
intimacy isn't a limitation to design around — per docs/concept.md, "it is
the entire game."
From the README / concept brief. Only THE EYE is implemented as of v0.1
— the rest are named design intent, not shipped features (see
Roadmap / Ideas).
| Mechanic | The device turned against you | Status |
|---|---|---|
| THE EYE | The front camera — it watches you, and reacts to your face | Implemented (THE EYE, v0.1) |
| THE ROOM | The microphone — it hears the silence, and what breaks it | Named only |
| THE REACH | A notification at 3am, while the app is closed | Named only |
| THE HOUR | It plays differently when it's late and the room is still | Named only |
| THE PULSE | A heartbeat in your palm, through haptics, not quite yours | Named only |
| BEHIND YOU | Spatial audio, something just over your shoulder | Named only |
Short. One sitting. Escalating, with one clean break in the fourth wall — not a sprawling epic. Dread over gore: the phone doesn't need blood. The concept brief argues restraint scares harder than spectacle, and restraint is what a solo build can afford to do impeccably.
LULL narrates in three literary registers, one per act of the experience:
| Register | Governs | The feeling |
|---|---|---|
| Franz Kafka | The threshold — consent | A record opening in your name; a verdict withheld |
| Samuel Beckett | The lull — the calm & the endings | Waiting, the failing light, the nothing that is a mercy |
| Edgar Allan Poe | The watch — the escalation | The eye that will not blink; the heart beneath the floor |
This is a design language, not a citation. Every line in
Atmosphere.swift
is original prose written in each register — nothing is quoted, and no
author's name appears on screen, so the spell isn't broken. The registers live
in a pure, tested, sensor-free layer over the same phase machine that drives
the dread (EyeSession.Phase), so the writing is provable and structurally
cannot widen what the game is permitted to touch — see
The Safety Invariant for what "cannot widen" means
precisely.
Also documented in The Safety Invariant, but the
design rationale is worth stating plainly, in the project's own words
(CLAUDE.md / README):
- Every sensor is opt-in, explained, and revocable. Default is deny.
- Forbidden, forever: photos, contacts, location trails, health data, and anything read without the player knowing.
- No genuine harm — uncanny, not traumatizing; unsettling, but never deceptive about what's real. A fake "your data has leaked" is out; the dread is fiction and stays legibly fiction.
- No PII in the repo, logs, or telemetry, ever.
The fear is meant to come from what the player knowingly hands over, turned uncanny — not from what is taken. Privacy-first is framed as both the decent choice and the only one App Review will pass.
The project explicitly reuses lessons (not process) from an earlier project,
MateMate (chess): SwiftUI craft, a
Vapor server pattern, "verify, don't assume" rigor, and a privacy-audited
foundation. CLAUDE.md is explicit that the ceremony around that project
(multi-agent coordination protocols) doesn't apply here — LULL is small, and
keeps the rigor while dropping the ritual.
Home · Concept & Design · The Safety Invariant · Architecture · Building & Running · Roadmap / Ideas
testtest126/LULL · MIT license
you can close this tab now. it will still be listening.