Commit Graph

11 Commits

Author SHA1 Message Date
andrew c868a3c2d5 Add game detail view UI and data
Introduce a full-screen game detail view and supporting data/model changes. Adds extensive CSS for .game-detail-view and related elements (header image, overlay, content layout, screenshots, achievements, features, actions, and scrollbars). Update renderDetailsPanel to output enriched detail markup (screenshots carousel, achievements UI, features badges, play/install button and contextual actions). Change library action handling to call openDetails for card activation. Extend normalizeLibraryItem with convertArray, screenshots and longDescription support, and populate mock items with screenshots and longDescription to enable the new detail view.
2026-05-16 20:52:41 +12:00
andrew a04ae7803b Add library UI, spatial nav & game launcher
Introduce a full library feature: add new frontend modules (libraryBridge, libraryComponents, libraryController, libraryFilters, libraryModel) and refactor library view JS to use them; implement rich library CSS and UI templates in index.html (new hints, sidebar entries). Rework spatial navigation (src/core/nav.js) with a geometry-based picker, anchor behavior, sidebar/content regions and integration hook for external nebula navigation; add navigation refresh handling in main.js. Update controller/state glyphs to include a 'clear' button. On the Tauri backend, add a launch_library_game command and its result type, wire it into lib.rs commands, and adjust DB upsert to handle app_kind correctly and export list_games usage. Misc: various wiring to load/scan/launch library items and improved focus/keyboard behaviors.
2026-05-16 20:45:54 +12:00
andrew 9de7a338a4 Added game scanning and Steam Metadata grabbing 2026-05-16 20:20:56 +12:00
andrew 38be2f43f1 Persistent sidebar, nav & flat theme overhaul
Introduce a persistent left sidebar, update navigation to support regions, and convert the UI to a flat/no-blur visual style.

Key changes:
- index.html: add a persistent sidebar markup with nav items, user area and main app layout.
- src/core/nav.js: improve candidate scoring to use element bounding centers and overlap penalty; include extra focus roots; add region metadata handling, helpers for resolving default content/sidebar indices, and special-case movements between sidebar and content; respect contract.useNebulaNavigation flag.
- src/main.js: manage sidebar visibility for full-screen flows (lock/onboarding), update sidebar active state on view changes, include sidebar as an extraFocusRoot when appropriate, and handle sidebar item activation on accept to navigate views.
- src/styles/*: major visual/theme updates to remove blur/glow effects (Zero-Blur policy), add flat sidebar styles, update components to solid borders and simpler focus styling, adjust theme variables (palette, spacing, durations), and redesign the home view layout and controls.

Rationale: provide a persistent, keyboard/controller-friendly sidebar for quick navigation while simplifying visuals to a flat, performance-friendly theme and refining focus/navigation behavior across sidebar and content regions.
2026-05-15 23:13:31 +12:00
andrew 5261a82115 Add Linux prerequisites and tighten Windows cfg
Update README: rename "Run (Windows dev)" to "Run (dev)", add a Linux (Ubuntu/Debian) prerequisites section with required apt packages and instructions to install Node/Rust and run dev, and clarify the Linux VM build step. Tweak src-tauri/src/main.rs to scope the windows_subsystem attribute to only non-debug Windows builds (add target_os = "windows" to the cfg_attr) to avoid extra console windows in release builds on Windows.
2026-04-14 21:04:21 +12:00
andrew f41768c6a9 Add user onboarding, keyboard overlay, and DB support
Introduce first-time user onboarding and a navigable on-screen keyboard, plus persistent user storage via a bundled rusqlite database and Tauri API. Backend: add rusqlite dependency, DB initialization in tauri setup, schema migration/backfill for users, and two Tauri commands (get_first_user, create_user) with input sanitization and structured UserRecord. Frontend: add core/users.js (invoke + localStorage fallback), integrate user state initialization, add user setup view/styles and keyboard overlay (JS/CSS), wire views and navigation to show onboarding when needed, and update lock view behavior to coordinate onboarding and passkey flow. Also add @tauri-apps/api dependency and update package/Cargo lock files accordingly.
2026-04-08 21:39:18 +12:00
andrew c890636f03 Fix passkey length and add reset action
Introduce a single PASSKEY_LENGTH constant (6) and enforce it across passkey config/load/save/update, removing the previous user-adjustable length/clamping. Add resetSequence() to clear stored hash/salt, reset length/attempts/lockout and persist the cleared state. Update settings UI: relabel "Change Passkey" to "Reset Passkey", show "6 digits" and "Fixed for testing", remove length adjustment controls/handlers, and call state.passkey.resetSequence() when resetting so setup will run on next lock.
2026-02-16 11:50:07 +13:00
andrew 3a2c3f9ff1 Update README.md 2026-02-15 22:53:15 +13:00
andrew 89eedf5522 Add Nebula Shell v0 prototype and redesign
Introduce a working v0 Nebula Shell prototype (Tauri frontend) and redesign docs. Adds a complete frontend under src/ (views: home, lock, library, settings, overlays), core adapters (input, nav, passkey, router, state), global styles and shell guidelines, and view-specific HTML/CSS/JS. Update README with prototype notes, install/run/build instructions and controller testing tips. Update package.json to add dev/build scripts and add @nebulaproject/core as a dependency. Also include a detailed REDESIGN_DOCUMENTATION.md describing the Xbox-inspired horizontal dashboard, component patterns, and developer notes.
2026-02-15 22:52:35 +13:00
andrew 0102d06bba Add Tauri app skeleton and project files
Initialize the Nebula OS Tauri project: add frontend (src/) with HTML, JS, CSS and SVG assets, plus a sample greet UI. Add src-tauri Rust backend (Cargo.toml, build.rs, main/lib) with a greeting command, tauri.conf.json, capability schema and platform icons. Add package.json (dev dependency on @tauri-apps/cli), .gitignore files and VSCode recommended extensions. Expand README with project vision, architecture and phase roadmap to document the Windows-first development plan.
2026-02-15 19:12:56 +13:00
andrew b7f31c801a Initial commit 2026-02-15 18:58:07 +13:00