Click on the Tauri, Vite, and Solid logos to learn more.
+ {/* tabindex="-1" so the skip link actually moves focus here, not just scroll */}
+
+
History
+
Open a repository to see its history.
+
-
-
{greetMsg()}
-
+
+
);
}
-
-export default App;
diff --git a/src/app.css b/src/app.css
new file mode 100644
index 0000000..be2aa91
--- /dev/null
+++ b/src/app.css
@@ -0,0 +1,29 @@
+@import "tailwindcss";
+
+/* Generates the full Material Design 3 colour system from one seed colour.
+ See https://github.com/SantaClaas/material-tailwind — not Material UI. */
+@plugin "@claas.dev/material-tailwind" {
+ source-color: #f05033;
+}
+
+/* The plugin emits every colour as `light-dark(, )`, so the whole
+ theme follows the system preference without a single `dark:` variant — but
+ only if `color-scheme` is declared. */
+@layer base {
+ :root {
+ color-scheme: light dark;
+ }
+
+ /* The app fills the window and never scrolls as a whole; individual panes
+ scroll themselves. Every element in the chain needs the height or the
+ percentage has nothing to resolve against. */
+ html,
+ body,
+ #root {
+ height: 100%;
+ }
+
+ body {
+ overflow: hidden;
+ }
+}
diff --git a/src/assets/logo.svg b/src/assets/logo.svg
deleted file mode 100644
index 025aa30..0000000
--- a/src/assets/logo.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/components/RepositoryNav.tsx b/src/components/RepositoryNav.tsx
new file mode 100644
index 0000000..2989269
--- /dev/null
+++ b/src/components/RepositoryNav.tsx
@@ -0,0 +1,23 @@
+const SECTIONS = ["Branches", "Remotes", "Tags", "Stashes"] as const;
+
+/**
+ * Sidebar listing the repository's refs. The sections are empty until a
+ * repository is open; each one becomes a list of refs in a later change.
+ */
+export default function RepositoryNav() {
+ return (
+
+ );
+}
diff --git a/src/components/StatusBar.tsx b/src/components/StatusBar.tsx
new file mode 100644
index 0000000..ec86281
--- /dev/null
+++ b/src/components/StatusBar.tsx
@@ -0,0 +1,12 @@
+/**
+ * Status bar along the bottom of the window. The message lives in an
+ * `