| -rw-r--r-- | .dockerignore | 11L |
| -rw-r--r-- | .env.example | 23L |
| -rw-r--r-- | .gitignore | 44L |
| -rw-r--r-- | Dockerfile | 17L |
| -rw-r--r-- | README.md | 127L |
| -rw-r--r-- | backend/Dockerfile | 11L |
| -rw-r--r-- | backend/package-lock.json | 846L |
| -rw-r--r-- | backend/package.json | 18L |
| -rw-r--r-- | backend/src/app.js | 78L |
| -rw-r--r-- | backend/src/db.js | 79L |
| -rw-r--r-- | backend/src/messages.js | 24L |
| -rw-r--r-- | backend/src/originGuard.js | 63L |
| -rw-r--r-- | backend/src/routes/documents.js | 404L |
| -rw-r--r-- | backend/src/server.js | 16L |
| -rw-r--r-- | backend/src/utils.js | 55L |
| -rw-r--r-- | backend/src/versionUtils.js | 26L |
| -rw-r--r-- | backend/test/api.test.js | 229L |
| -rw-r--r-- | docker-compose.yml | 32L |
| -rw-r--r-- | index.html | 24L |
| -rw-r--r-- | nginx.conf | 33L |
| -rw-r--r-- | package-lock.json | 3246L |
| -rw-r--r-- | package.json | 34L |
| -rw-r--r-- | public/favicon.png | 5261B |
| -rw-r--r-- | public/favicon.svg | 42L |
| -rw-r--r-- | public/robots.txt | 2L |
| -rw-r--r-- | scripts/backup-db.ps1 | 22L |
| -rw-r--r-- | scripts/backup-db.sh | 24L |
| -rw-r--r-- | scripts/restore-db.ps1 | 32L |
| -rw-r--r-- | scripts/restore-db.sh | 36L |
| -rw-r--r-- | src/App.jsx | 30L |
| -rw-r--r-- | src/components/EditorLayout.jsx | 185L |
| -rw-r--r-- | src/components/IconButton.jsx | 24L |
| -rw-r--r-- | src/components/OrgEditor.jsx | 112L |
| -rw-r--r-- | src/components/OrgOutline.jsx | 39L |
| -rw-r--r-- | src/components/ReadOnlyBanner.jsx | 16L |
| -rw-r--r-- | src/components/SaveStatus.jsx | 19L |
| -rw-r--r-- | src/components/ShareModal.jsx | 148L |
| -rw-r--r-- | src/components/StatusBadge.jsx | 3L |
| -rw-r--r-- | src/components/VersionHistory.jsx | 126L |
| -rw-r--r-- | src/components/icons/ClearIcon.jsx | 10L |
| -rw-r--r-- | src/components/icons/DownloadIcon.jsx | 12L |
| -rw-r--r-- | src/components/icons/ShareIcon.jsx | 13L |
| -rw-r--r-- | src/components/icons/UploadIcon.jsx | 12L |
| -rw-r--r-- | src/components/icons/iconProps.js | 10L |
| -rw-r--r-- | src/components/icons/index.js | 4L |
| -rw-r--r-- | src/hooks/useEditLock.js | 141L |
| -rw-r--r-- | src/hooks/useServerAutosave.js | 68L |
| -rw-r--r-- | src/lib/api.js | 144L |
| -rw-r--r-- | src/lib/clientId.js | 18L |
| -rw-r--r-- | src/lib/download.js | 14L |
| -rw-r--r-- | src/lib/editorConstants.js | 135L |
| -rw-r--r-- | src/lib/org/checklistPlugin.js | 42L |
| -rw-r--r-- | src/lib/org/constants.js | 4L |
| -rw-r--r-- | src/lib/org/editorUtils.js | 47L |
| -rw-r--r-- | src/lib/org/editorUtils.test.js | 20L |
| -rw-r--r-- | src/lib/org/enhanceHtml.js | 19L |
| -rw-r--r-- | src/lib/org/fixtures/checklist.org | 3L |
| -rw-r--r-- | src/lib/org/fixtures/export-html.org | 4L |
| -rw-r--r-- | src/lib/org/fixtures/headings-todo.org | 4L |
| -rw-r--r-- | src/lib/org/fixtures/nested-lists.org | 6L |
| -rw-r--r-- | src/lib/org/fixtures/table.org | 4L |
| -rw-r--r-- | src/lib/org/keymap.js | 81L |
| -rw-r--r-- | src/lib/org/normalize.js | 4L |
| -rw-r--r-- | src/lib/org/orgTheme.js | 36L |
| -rw-r--r-- | src/lib/org/parseDocument.js | 91L |
| -rw-r--r-- | src/lib/org/parseDocument.test.js | 21L |
| -rw-r--r-- | src/lib/org/pipeline.js | 34L |
| -rw-r--r-- | src/lib/org/pipeline.test.js | 65L |
| -rw-r--r-- | src/lib/org/sanitize.js | 10L |
| -rw-r--r-- | src/lib/previewHtml.js | 53L |
| -rw-r--r-- | src/lib/strings.js | 117L |
| -rw-r--r-- | src/main.jsx | 10L |
| -rw-r--r-- | src/pages/LinkErrorPage.jsx | 19L |
| -rw-r--r-- | src/pages/LocalEditorPage.jsx | 237L |
| -rw-r--r-- | src/pages/SharedEditPage.jsx | 244L |
| -rw-r--r-- | src/pages/SharedViewPage.jsx | 104L |
| -rw-r--r-- | src/styles.css | 949L |
| -rw-r--r-- | vite.config.js | 65L |
| -rw-r--r-- | vite.preview.config.js | 15L |
| -rw-r--r-- | vite.shared.js | 63L |