diff --git a/apps/web/src/lib/canvas/canvas-store.svelte.ts b/apps/web/src/lib/canvas/canvas-store.svelte.ts index 659db36..ccd2c41 100644 --- a/apps/web/src/lib/canvas/canvas-store.svelte.ts +++ b/apps/web/src/lib/canvas/canvas-store.svelte.ts @@ -568,13 +568,18 @@ export function createCanvasController(bindings: CanvasControllerBindings) { persistenceStatusStore = persistenceManager.status; const boards = await repo.listBoards(); + let boardId: string; + if (boards.length > 0) { - const boardId = boards[0].id; - const doc = await repo.loadDoc(boardId); - setActiveBoardId(boardId); - applyLoadedDoc(doc); + boardId = boards[0].id; + } else { + boardId = await repo.createBoard("Untitled Board"); } + const doc = await repo.loadDoc(boardId); + setActiveBoardId(boardId); + applyLoadedDoc(doc); + removeBeforeUnload = () => { window.removeEventListener("beforeunload", handleBeforeUnload); };