Digital Sanctuary Product Requirements
Product Summary
Digital Sanctuary is a personal 8-bit vision wall where a user can curate, manifest, store, and revisit digital creations, references, memories, music, project material, and symbolic objects. The wall should feel like a digital room surface with physicality: framed images, notes, folders, shelves, plants, lamps, and music objects can be placed on a grid and opened for detail.
The current MVP is static and local-first. It persists wall state in localStorage, supports JSON import/export, and centers the wall as the primary experience rather than a marketing page or generic dashboard.
Core User Value
- Users get a personal digital wall that can hold visual references, written reminders, project folders, music, and meaningful objects.
- Users can shape the atmosphere of the wall through material, location, window placement, lighting, and object style choices.
- Users can switch between editing the wall and visiting it as a calmer presentation or reflection space.
- Users can organize deeper project or work-in-progress material inside folders without making the wall feel cluttered.
Current MVP Capabilities
- Wall setup for material, location, window position, and lighting.
- Snap-grid object placement by dragging wall items.
- Object creation for artwork, quotes, notes, shelves, lamps, plants, folders, and a playlist player.
- 8-bit object styling for frames, quotes, notes, folders, plants, lamps, shelves, and stereo objects.
- Style selection and color swatches for supported wall objects.
- Image URL or uploaded image support for framed artwork.
- Item inspector for editing title, text, meaning, image, style, and color.
- Folder objects with multiple project pages, each with title, vision, reminders, visual reference URL, links, and mood.
- Manual playlist editing with YouTube embed playback in visit mode.
- Visit mode with clickable object detail dialogs.
- Local persistence through
localStorage. - JSON export and import for moving or backing up wall state.
- Catalog view showing the available object language.
User Stories
Wall Ownership and Visibility
- As a user, I want to make my board or wall public or private, so I can decide whether it is personal-only or shareable.
- Acceptance notes:
- A wall has a visibility state:
privateorpublic. - Private walls are only accessible to the owner.
- Public walls can be viewed by anyone with the link.
- The current visibility state is obvious before sharing.
- Status: Next.
- As a user, I want to share my wall with people, so friends, collaborators, or guests can view it.
- Acceptance notes:
- The app exposes a share action for the current wall.
- Shared links open the wall in visit mode by default.
- Sharing respects public/private visibility.
- The user can copy the wall link from the app.
- Status: Next.
- As a user, I want to easily link my wall to an NFC sticker in real life, so I can scan or tap my phone and open my wall.
- Acceptance notes:
- The wall has a stable URL suitable for writing to an NFC sticker.
- The app provides a clear "copy NFC link" or equivalent action.
- The NFC link opens the wall directly in visit mode.
- The app explains whether the wall must be public for the NFC link to work for others.
- Status: Next.
Wall Interaction
- As a user, I want to click to focus in on an object, so I can inspect its meaning or content without distraction.
- Acceptance notes:
- Clicking an object in visit mode opens a focused detail view.
- Folder objects open the folder experience.
- Music objects open the playlist/player experience.
- Focused object views preserve object title, text, meaning, and media.
- Status: Implemented in visit mode, with room to improve focus styling and transitions.
- As a user, I want to move objects around the grid of my wall, so I can compose the wall visually.
- Acceptance notes:
- Objects can be dragged in edit mode.
- Dragging snaps objects to a consistent grid.
- Objects stay inside the wall bounds.
- Placement persists after refresh.
- Status: Implemented.
- As a user, I want to select from a catalog of objects, so I can add wall items without starting from a blank canvas.
- Acceptance notes:
- The catalog lists supported object types and style variants.
- Selecting an object adds it to the wall in edit mode.
- The object uses a sensible default size, position, color, and label.
- Status: Implemented.
Wall Atmosphere
- As a user, I want to select the time of day, so the wall can match the mood I want.
- Acceptance notes:
- The user can choose from time-of-day or lighting presets.
- The selected mood visibly changes the wall lighting.
- The selection persists after refresh.
- Status: Partially implemented as lighting presets: morning, golden hour, night, and gallery spotlight.
- As a user, I want to select or prompt what shows up outside my window, so the sanctuary can reflect a place, mood, or imagined scene.
- Acceptance notes:
- The wall has a window area when enabled.
- The user can choose from preset outside views or provide a text prompt.
- The outside view persists as part of the wall state.
- Prompted views should have a graceful fallback if image generation is unavailable.
- Status: Next.
Media and Objects
- As a user, I want to upload images into frames, so my own visuals can become part of the wall.
- Acceptance notes:
- Framed artwork accepts local image uploads.
- Uploaded images render inside the frame with sane cropping.
- Images persist after refresh or are exported with the wall state.
- Status: Implemented for framed artwork through data URLs and image links.
- As a user, I want to view my wall and music, so the wall has an atmosphere I can listen to or revisit.
- Acceptance notes:
- The wall can include a music or playlist object.
- The user can add and select tracks.
- Visit mode can play or open the active track.
- YouTube links embed when possible.
- Status: Implemented for manual playlists and YouTube embeds.
Organization
- As a user, I want to have a folder to organize my work-in-progress things, so active ideas, drafts, links, images, notes, and next steps can live together.
- Acceptance notes:
- A folder object can represent a work in progress.
- The folder can contain multiple pages or entries.
- Each page can store title, vision/notes, reminders, links, a visual reference, and mood.
- Work-in-progress folders can be opened from the wall in edit or visit mode.
- Status: Implemented generically as wall folders with project pages; WIP-specific templates are next.
- As a user, I want a digital wall where I can curate, manifest, or store my digital creations, so I have a personal place for ideas and artifacts that matter to me.
- Acceptance notes:
- The wall supports visual, text, folder, decor, and music objects.
- Objects have editable labels and meaning fields.
- The experience supports both creation/editing and reflective visiting.
- The wall can be saved, restored, exported, and imported.
- Status: Implemented as the MVP foundation.
Proposed Priority Lanes
Near-Term Product Priorities
1. Public/private wall visibility. 2. Share links that open visit mode. 3. Stable NFC-ready wall links. 4. Window outside-view presets and prompt field. 5. Work-in-progress folder template built on top of the current folder system. 6. Improved focused object view with richer media presentation.
Later Product Questions
- Should public walls be fully anonymous links, invite-only links, or account-backed sharing?
- Should private walls require authentication, a local passcode, or only local-device storage for MVP?
- Should NFC links point to the whole wall, a specific object, or either?
- Should prompted outside-window views be generated images, curated presets, or both?
- Should folders eventually support typed templates such as work in progress, project, playlist, moodboard, and manifestation plan?
- Should image uploads remain embedded as data URLs or move to hosted storage once sharing is introduced?
Non-Goals For The Current MVP
- Full multi-user collaboration.
- Payment or subscription flows.
- Social feeds or public discovery.
- Complex file management outside wall folders.
- Native mobile apps.
- Real-time sync across devices.
Success Signals
- A user can build a wall that feels personal in under ten minutes.
- A user can return later and immediately recognize the wall's purpose and mood.
- A user can place, open, and edit objects without reading instructions.
- A user can organize deeper material in folders without losing the wall-first experience.
- A user can share or open the wall from the physical world once public/private and NFC links exist.