feat: the Bosco desktop — interactive Portal shell #82
No reviewers
Labels
No labels
area: arcade
area: art-studio
area: calendar
area: chapel
area: content
area: design
area: field-guide
area: infra
area: library
area: os
area: portal
area: sync
area: typing
blocked
breaking
bug
content: approved
content: changes-requested
content: drafting
content: needs-doctrinal-review
content: needs-review
dependencies
documentation
duplicate
enhancement
epic
github_actions
good first issue
help wanted
invalid
javascript
needs-triage
priority: high
priority: low
priority: medium
question
type: enhancement
type: feature
type: fix
type: perf
type: security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Bosco/bosco!82
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/portal-desktop"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The v0.2.0 interface, built to the locked spec (
docs/design/interface-direction.md): an interactive retro desktop, ported from the reference prototype into SvelteKit + Svelte 5 and wired to the v0.1.0 Core primitives.The shell (
src/lib/portal/)Esc-to-close, focus return, and a bottom taskbar of open windows.Wired to Core
liturgy.ts) resolves today from$lib/calendar→ the wallpaper follows the day's liturgical colour (data-lit) and drives the Day-of-the-Day + season clock. The mockup's stand-in Easter calculator is gone — the vendoredcalendar.jsonis the source.$lib/stateprefs;data-tierdrives the reading type scale. Church-colour preview in Settings.$lib/state—Profilegains an optional, backward-compatibleavatar;createProfile(name, avatar)+setProfileAvatar. (#70)sounds.ts), gated by the Sounds preference — no audio files, stays offline.Verification (all green locally)
pnpm check(0/0) ·pnpm lint·pnpm guard:colour(every component colour is a token) ·pnpm build·guard:external·guard:content·guard:offline·pnpm test:unit— 44 passed (+ new liturgy / avatar / profile-avatar suites).In-browser: hydration is clean (no console errors), liturgy resolves to green / Time after Pentecost today, and reading-level, colour-preview, profile-create, and the window/taskbar flows all work.
Advances #74 (Portal shell), #75 (reading level), #76 (liturgical theming), #77 (Saint-of-the-Day), #70 (avatar generator). a11y floor + styled 404 (#79/#80) follow in the next PR.