Operand

consumer? no; user.

gram: essay

> ./package.json

Lenses
(coming soon!)


{
  "name": "tiny-essay-editor",
  "private": true,
  "version": "0.0.1",
  "type": "module",
  "module": "index.js",
  "scripts": {
    "dev": "vite --force --port 5173 --host 0.0.0.0",
    "build": "vite build",
    "export": "yarn run export:tsc && yarn run export:tailwind && yarn run export:static && yarn run export:packagejson && trailhead push --dir ./tsc",
    "export:tsc": "tsc -p ./tsconfig.trailrunner.json && tsc-alias -p ./tsconfig.trailrunner.json",
    "export:tailwind": "tailwindcss -i ./src/index.css -o ./tsc/index.css",
    "export:static": "node -e \"require('fs').cpSync('public', 'tsc', { recursive: true });\"",
    "export:packagejson": "node -e \"require('fs').cpSync('package.json', 'tsc/package.json');\"",
    "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
    "preview": "vite preview",
    "test": "vitest"
  },
  "dependencies": {
    "@automerge/automerge": "^2.1.9",
    "@automerge/automerge-codemirror": "^0.0.11",
    "@automerge/automerge-repo": "^1.1.12",
    "@automerge/automerge-repo-network-messagechannel": "^1.1.12",
    "@automerge/automerge-repo-network-broadcastchannel": "^1.1.12",
    "@automerge/automerge-repo-network-websocket": "^1.1.12",
    "@automerge/automerge-repo-react-hooks": "^1.1.12",
    "@automerge/automerge-repo-storage-indexeddb": "^1.1.12",
    "@automerge/automerge-wasm": "^1.0.0-preview.0",
    "@codemirror/autocomplete": "^6.19.0",
    "@codemirror/commands": "^6.9.0",
    "@codemirror/lang-javascript": "^6.2.1",
    "@codemirror/lang-markdown": "^6.2.1",
    "@codemirror/language": "^6.9.1",
    "@codemirror/language-data": "^6.3.1",
    "@codemirror/lint": "^6.9.0",
    "@codemirror/search": "^6.5.11",
    "@codemirror/state": "^6.5.2",
    "@codemirror/view": "^6.21.3",
    "@lezer/common": "^1.2.3",
    "@lezer/highlight": "^1.1.6",
    "@radix-ui/react-avatar": "^1.0.4",
    "@radix-ui/react-context-menu": "^2.1.5",
    "@radix-ui/react-dialog": "^1.0.5",
    "@radix-ui/react-dropdown-menu": "^2.0.6",
    "@radix-ui/react-label": "^2.0.2",
    "@radix-ui/react-popover": "^1.0.7",
    "@radix-ui/react-progress": "^1.0.3",
    "@radix-ui/react-slot": "^1.0.2",
    "@radix-ui/react-tabs": "^1.0.4",
    "@radix-ui/react-tooltip": "^1.0.7",
    "@tailwindcss/container-queries": "^0.1.1",
    "@tldraw/tldraw": "2.0.0-alpha.17",
    "@xstate/react": "^4.1.1",
    "automerge-tldraw": "0.1.5",
    "class-variance-authority": "^0.7.0",
    "clsx": "^2.0.0",
    "cmdk": "^0.2.0",
    "codemirror": "^6.0.1",
    "eventemitter3": "^5.0.1",
    "lodash": "^4.17.21",
    "lorem-ipsum": "^2.0.8",
    "lucide-react": "^0.284.0",
    "openai": "^4.11.0",
    "query-string": "^8.1.0",
    "react": "^18.2.0",
    "react-arborist": "^3.3.1",
    "react-dom": "^18.2.0",
    "react-usestateref": "^1.0.8",
    "tailwind-merge": "^1.14.0",
    "tailwindcss-animate": "^1.0.7",
    "use-resize-observer": "^9.1.0",
    "uuid": "^9.0.1",
    "vite-plugin-top-level-await": "^1.3.1",
    "vite-plugin-wasm": "^3.2.2",
    "xstate": "^5.9.1"
  },
  "devDependencies": {
    "@testing-library/react": "^15.0.2",
    "@types/lodash": "^4.14.199",
    "@types/node": "^20.8.2",
    "@types/react": "^18.2.15",
    "@types/react-dom": "^18.2.7",
    "@typescript-eslint/eslint-plugin": "^6.0.0",
    "@typescript-eslint/parser": "^6.0.0",
    "@vitejs/plugin-react": "^4.0.3",
    "autoprefixer": "^10.4.16",
    "eslint": "^8.45.0",
    "eslint-plugin-react-hooks": "^4.6.0",
    "eslint-plugin-react-refresh": "^0.4.3",
    "jsdom": "^22.1.0",
    "pnpm": "^8.14.1",
    "postcss": "^8.4.31",
    "tailwindcss": "^3.3.3",
    "tsc-alias": "^1.8.8",
    "typescript": "^5.0.2",
    "vite": "^4.4.5",
    "vitest": "^0.34.6"
  },
  "resolutions": {
    "@automerge/automerge-wasm": "file:./src/vendor/automerge-wasm"
  }
}