diff --git a/README.md b/README.md
index 5ebf872..c0bccca 100644
--- a/README.md
+++ b/README.md
@@ -85,10 +85,11 @@ pnpm run dev
Tracking progress on key features and tasks for the project.
-- [ ] 🛢️ Set up the database and define data models
-- [ ] 🔗 Sync folder open state with the URL
+- [x] 🛢️ Set up the database and define data models
+- [x] 🔗 Sync folder open state with the URL
- [ ] 🔐 Implement user authentication
- [ ] 📁 Enable file upload functionality
+- [ ] 📊 Add analytics tracking
### 📝 Note from 5-28-2025
@@ -96,5 +97,12 @@ Just finished up the database connection, next steps:
- [x] Update schema to show files and folders
- [x] Manually insert examples
-- [ ] Render them in the UI
-- [ ] Push and make sure it all works
+- [x] Render them in the UI
+
+### 📝 Note from 6-4-2025
+
+The database and UI are now connected, some improvements to make:
+
+- [ ] Change folders to link components, remove all client state
+- [ ] Clean up the database and data fetching patterns
+- [ ] Real homepage
diff --git a/src/app/drive-contents.tsx b/src/app/drive-contents.tsx
new file mode 100644
index 0000000..c7e3d71
--- /dev/null
+++ b/src/app/drive-contents.tsx
@@ -0,0 +1,98 @@
+"use client";
+
+import { ChevronRight, Upload } from "lucide-react";
+import { useMemo, useState } from "react";
+
+import { Button } from "~/components/ui/button";
+import type { files, folders } from "~/server/db/schema";
+import { FileRow, FolderRow } from "./file-row";
+
+export default function DriveContents(props: {
+ files: (typeof files.$inferSelect)[];
+ folders: (typeof folders.$inferSelect)[];
+}) {
+ const [currentFolder, setCurrentFolder] = useState(1);
+
+ const handleFolderClick = (folderId: number) => {
+ setCurrentFolder(folderId);
+ };
+
+ const breadcrumbs = useMemo(() => {
+ const breadcrumbs = [];
+ let currentId = currentFolder;
+
+ while (currentId !== 1) {
+ const folder = props.folders.find((file) => file.id === currentId);
+ if (folder) {
+ breadcrumbs.unshift(folder);
+ currentId = folder.parent ?? 1;
+ } else {
+ break;
+ }
+ }
+
+ return breadcrumbs;
+ }, [currentFolder, props.folders]);
+
+ const handleUpload = () => {
+ alert("Upload functionality would be implemented here");
+ };
+
+ return (
+