Files
Nebula-OS/shells/desktop/ui/src/App.jsx
T
andrew dd9b43bd27 Bootstrap NebulaOS repo and desktop shell UI
Initialize the NebulaOS monorepo layout with top-level documentation, ignore rules, placeholder service/package directories, compositor docs plus a baseline Sway config, and session startup/desktop entry files. Add the first desktop shell prototype under `shells/desktop/ui` using React + Vite, including themed surface components (desktop, top bar, launcher, preview), mock Nebula APIs and shell bridge state wiring, reusable UI controls/icons, and supporting styles/config needed for local development.
2026-08-26 15:31:54 +12:00

19 lines
644 B
React

import { getSurfaceName, SURFACES } from './lib/surface.js';
import { DesktopSurface } from './surfaces/DesktopSurface.jsx';
import { LauncherSurface } from './surfaces/LauncherSurface.jsx';
import { PreviewSurface } from './surfaces/PreviewSurface.jsx';
import { TopBarSurface } from './surfaces/TopBarSurface.jsx';
const SURFACE_VIEWS = {
[SURFACES.DESKTOP]: DesktopSurface,
[SURFACES.TOPBAR]: TopBarSurface,
[SURFACES.LAUNCHER]: LauncherSurface,
[SURFACES.PREVIEW]: PreviewSurface,
};
export default function App() {
const surface = getSurfaceName();
const View = SURFACE_VIEWS[surface] ?? PreviewSurface;
return <View />;
}