{ "name": "instatic", "private": true, "version": "0.0.4", "engines": { "bun": ">=1.3.0 <1.4.0" }, "description": "Self-hosted CMS with an integrated visual editor.", "author": "David Babinec", "license": "MIT", "homepage": "https://instatic.com", "repository": { "type": "git", "url": "https://github.com/corebunch/instatic.git" }, "bugs": { "url": "https://github.com/corebunch/instatic/issues" }, "type": "module", "scripts": { "dev": "bun run scripts/dev.ts", "dev:agent": "bun run dev:server", "dev:server": "bun --watch server/index.ts", "dev:vite": "vite", "e2e:dev": "bun run scripts/e2e-dev.ts", "db:drop": "bun run scripts/db-drop.ts", "start": "bun run scripts/start.ts", "docker:up": "docker compose -f compose.prod.yml -f compose.build.yml up --build", "release:bundle": "bun run scripts/build-release-bundle.ts", "build": "tsc -b && vite build", "lint": "eslint . --cache --cache-location .tmp-lint/eslint-cache", "preview": "vite preview", "test": "bun test", "test:e2e": "playwright test", "test:e2e:install": "playwright install chromium", "test:e2e:ui": "playwright test --ui", "test:watch": "bun test --watch", "test:bundle": "bun run build && bun test src/__tests__/architecture/bundle-size-budgets.test.ts", "test:coverage": "bun test --coverage --coverage-reporter=lcov --coverage-dir=.coverage && bun run scripts/lcov-to-istanbul.ts", "fallow:health": "bun run test:coverage && npx fallow health --coverage .coverage/coverage-final.json", "icons:sync": "bun run scripts/sync-icons.ts", "icons:check": "bun run scripts/sync-icons.ts --check", "bootstrap:sync": "bun run scripts/sync-plugin-bootstrap.ts", "bootstrap:check": "bun run scripts/sync-plugin-bootstrap.ts --check", "instatic-plugin": "bun run src/core/plugin-sdk/cli/index.ts", "bench": "bun run scripts/bench/index.ts", "bench:bundle": "bun run scripts/bench/index.ts --only=bundle", "bench:publisher": "bun run scripts/bench/index.ts --only=publisher", "bench:publish": "bun run scripts/bench/index.ts --only=publish", "bench:editor-store": "bun run scripts/bench/index.ts --only=editor-store", "bench:http": "bun run scripts/bench/index.ts --only=http", "bench:db": "bun run scripts/bench/index.ts --only=db", "bench:plugin": "bun run scripts/bench/index.ts --only=plugin", "bench:footprint": "bun run scripts/bench/index.ts --only=footprint", "bench:health": "bun run scripts/bench/index.ts --only=health", "bench:browser": "bun run scripts/bench/index.ts --only=browser", "bench:browser:install": "bunx playwright install chromium", "doctor": "react-doctor" }, "dependencies": { "@codemirror/lang-css": "^6.3.1", "@codemirror/lang-html": "^6.4.11", "@codemirror/lang-javascript": "^6.2.5", "@codemirror/lang-json": "^6.0.2", "@codemirror/lang-markdown": "^6.5.0", "@codemirror/language": "^6.12.3", "@codemirror/state": "^6.6.0", "@dnd-kit/core": "^6.3.1", "@fontsource-variable/inter": "^5.2.8", "@lezer/highlight": "^1.2.3", "@sinclair/typebox": "^0.34.49", "@tiptap/core": "^3", "@tiptap/extension-table": "^3", "@tiptap/extension-table-cell": "^3", "@tiptap/extension-table-header": "^3", "@tiptap/extension-table-row": "^3", "@tiptap/extension-text-align": "^3", "@tiptap/extensions": "^3", "@tiptap/pm": "^3", "@tiptap/react": "^3", "@tiptap/starter-kit": "^3", "@tiptap/suggestion": "^3", "@use-gesture/react": "^10.3.1", "blurhash": "^2.0.5", "codemirror": "^6.0.2", "dompurify": "^3.4.2", "esbuild": "^0.28.0", "fflate": "^0.8.2", "happy-dom": "^20.9.0", "html-to-image": "^1.11.13", "lru-cache": "^11.3.5", "marked": "^18.0.3", "mutative": "^1.3.0", "nanoid": "^5.1.11", "pixel-art-icons": "file:./vendor/pixel-art-icons", "quickjs-emscripten": "^0.32.0", "react": "^19.2.5", "react-dom": "^19.2.5", "semver": "^7.7.4", "sharp": "^0.34.5", "uqr": "^0.1.3", "zustand": "^5.0.12", "zustand-mutative": "^1.3.1" }, "devDependencies": { "@codemirror/view": "^6.41.1", "@eslint/js": "^10.0.1", "@floating-ui/dom": "^1.7.6", "@playwright/test": "^1.60.0", "@rolldown/plugin-babel": "^0.2.3", "@secretlint/secretlint-rule-preset-recommend": "^12.3.1", "@testing-library/dom": "^10.4.1", "@testing-library/react": "^16.3.2", "@testing-library/user-event": "^14.6.1", "@types/bun": "^1.3.13", "@types/node": "^24.12.2", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", "@types/semver": "^7.7.1", "@vitejs/plugin-react": "^6.0.1", "dependency-cruiser": "^17.4.0", "eslint": "^10.3.0", "eslint-plugin-react-compiler": "^19.1.0-rc.2", "eslint-plugin-react-hooks": "^7.1.1", "eslint-plugin-react-refresh": "^0.5.2", "globals": "^17.6.0", "jscpd": "^4.0.9", "knip": "^6.11.0", "madge": "^8.0.0", "playwright-core": "^1.60.0", "react-doctor": "^0.2.14", "secretlint": "^12.3.1", "typescript": "~6.0.3", "typescript-eslint": "^8.59.1", "vite": "^8.0.10" } }