§ masterplan.md
Virtual Desktop Pet
A playful browser pet that reacts to clicks, gets hungry, sleeps and leaves tiny notes while you work.
01
App overview and objectives
A tiny browser companion that lives in the corner of your workspace: it reacts to clicks, gets hungry, sleeps when you do, and leaves small notes. It is a delight object with a light productivity edge.
02
The problem worth solving
Focus tools nag. A creature that visibly thrives when you take breaks and drinks water turns self-care into caretaking, which people find far easier to sustain.
03
Target audience
- Primary — Desk workers and students who want a gentle, non-nagging companion.
- Secondary — Anyone who grew up with keychain virtual pets and wants that feeling back.
04
Roles and permissions
- Visitor — read-only public pages, can sign up.
- Member — owns their own records, cannot see other users' data.
05
Core features
- Pet with hunger, energy and mood driven by real elapsed time
- Idle animations and reactions to clicks, drags and keyboard activity
- Feeding, playing and sleeping interactions with cooldowns
- Sticky notes the pet leaves and the user can write back on
- Break reminders framed as the pet needing a walk
- Persistence across sessions with an offline decay model
Deliberately later
- Multiple pet species and evolution
- Cosmetic shop
- Cross-device sync
06
Technical stack
React with sprite animation, local storage as the source of truth, optional accounts for sync.
Why: The pet must load instantly and work offline; a server round-trip for hunger state would ruin the feel.
Alternatives: A browser extension (always visible, store review overhead) or a desktop app (best presence, narrow reach).
07
Conceptual data model
Pet — species, name, birth date, stats, cosmetics
StatSnapshot — timestamp, hunger, energy, mood
Interaction — type, timestamp, effect
Note — text, author (pet or user), created_at
08
Integrations
- Optional cloud sync
- Browser notifications
- Sound assets
09
UI design principles
- Rounded shapes, bright accent colours, springy micro-animations on every tap.
- Reward progress visually — confetti, badges, character reactions.
- Copy is short, warm and second-person; never corporate.
10
Security considerations
- Local-first: no account required and no data leaves the device by default.
- Notifications strictly opt-in.
- If sync is added, encrypt the payload and keep it tied to one account.
11
Development phases
Phase 1 — Prove the core
- — Pet with hunger, energy and mood driven by real elapsed time
- — Idle animations and reactions to clicks, drags and keyboard activity
- — Feeding, playing and sleeping interactions with cooldowns
- — Static content and design system in place
- — Basic analytics
Phase 2 — Make it real
- — Sticky notes the pet leaves and the user can write back on
- — Break reminders framed as the pet needing a walk
- — Persistence across sessions with an offline decay model
- — Accounts, sign-in and password reset
- — Empty, loading and error states everywhere
Phase 3 — Polish and launch
- — Performance, accessibility and SEO pass
- — Legal pages, contact route and 404 handling
- — Wire up: Optional cloud sync
- — Wire up: Browser notifications
Phase 4 — Grow
- — Multiple pet species and evolution
- — Cosmetic shop
- — Cross-device sync
12
Challenges and solutions
Risk — Guilt mechanics feel cruel
Solution — The pet never dies; it naps and recovers, and long absences are forgiven.
Risk — Animation drains battery
Solution — Pause rendering when the tab is hidden and drop to low frame rate when idle.
Risk — Novelty wears off in a week
Solution — Slow unlocks, seasonal events and pet-written notes that reference real usage patterns.
13
Future expansion
- Team pets for shared workspaces
- Focus-session integration
- Physical merchandise
14
Page list (13 pages)
- 01 PUBLIC Pet — The main stage where the creature lives.
- 02 PUBLIC Feed — Food inventory and feeding interaction.
- 03 PUBLIC Play — Mini-interactions that raise mood.
- 04 PUBLIC Sleep — Rest schedule and quiet hours.
- 05 PUBLIC Notes — The shared notebook between pet and user.
- 06 AUTH Sign up — Create an account with email or a social provider.
- 07 AUTH Log in — Return to the account, with error and lockout states.
- 08 AUTH Reset password — Request a reset link and set a new password.
- 09 APP (signed in) Account settings — Profile, email, password, language and delete account.
- 10 PUBLIC Contact — Contact form plus real address, phone and email.
- 11 LEGAL & SYSTEM Privacy policy — What data is collected, why, and how to remove it.
- 12 LEGAL & SYSTEM Terms of service — Rules of use, liability and account termination.
- 13 LEGAL & SYSTEM 404 not found — Friendly dead end with search and links back.
15
Page map
PUBLIC AUTH APP (signed in) LEGAL & SYSTEM ────────── ───────────────── ─────────────────── ─────────────────── ├─ Pet ├─ Sign up └─ Account settings ├─ Privacy policy ├─ Feed ├─ Log in ├─ Terms of service ├─ Play └─ Reset password └─ 404 not found ├─ Sleep ├─ Notes └─ Contact key flows: Pet ──▶ Feed Pet ──▶ Play Pet ──▶ Sleep Pet ──▶ Notes
