diff --git a/packages/app/src/components/browse/FilePreview.vue b/packages/app/src/components/browse/FilePreview.vue
new file mode 100644
index 00000000..b3413fed
--- /dev/null
+++ b/packages/app/src/components/browse/FilePreview.vue
@@ -0,0 +1,58 @@
+
+
+
+
+
+
{{ file.name }}
+
{{ file.path }}
+
+
+
{{ formatSize(file.size) }}
+
+
+
+
+
+
+
+
+
+ | {{ i + 1 }} |
+ {{ line }} |
+
+
+
+
+
+
+
+
diff --git a/packages/app/src/components/browse/FileTree.vue b/packages/app/src/components/browse/FileTree.vue
new file mode 100644
index 00000000..f7547634
--- /dev/null
+++ b/packages/app/src/components/browse/FileTree.vue
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/app/src/main.ts b/packages/app/src/main.ts
index bbb1ca4d..3e8bd2f9 100644
--- a/packages/app/src/main.ts
+++ b/packages/app/src/main.ts
@@ -23,6 +23,11 @@ const router = createRouter({
name: 'widget-demo',
component: () => import('./pages/WidgetDemoPage.vue'),
},
+ {
+ path: '/browse',
+ name: 'file-browser',
+ component: () => import('./pages/BrowsePage.vue'),
+ },
{
path: '/view/:nostrAddr',
name: 'conversation-viewer',
diff --git a/packages/app/src/pages/BrowsePage.vue b/packages/app/src/pages/BrowsePage.vue
new file mode 100644
index 00000000..14c632d1
--- /dev/null
+++ b/packages/app/src/pages/BrowsePage.vue
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Loading...
+
+
+ {{ error }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+