{"_id":"@0xherve/deck","_rev":"6-01147cf0e24a4ebb6172b5ba95a32f85","name":"@0xherve/deck","dist-tags":{"latest":"0.0.8"},"versions":{"0.0.1":{"name":"@0xherve/deck","version":"0.0.1","_id":"@0xherve/deck@0.0.1","maintainers":[{"name":"0xherve","email":"imenarwigema@gmail.com"}],"bin":{"deck":"dist/cli.js"},"dist":{"shasum":"a0b5775aed95e24aa89defc40af76ac37bab73c6","tarball":"https://registry.npmjs.org/@0xherve/deck/-/deck-0.0.1.tgz","fileCount":331,"integrity":"sha512-YMKLdNnLgEiRY7tzQHNFjF15a9MzvEVTevyF0LTcbpkyy2oxd8TfV4qG03jPOQazxZUAR1tDTC+S9okASes8ww==","signatures":[{"sig":"MEYCIQClLkaco7LIQFDeJV3zR6zi39LW2tJWdEnALs0f3zG4ggIhAJrThvo66cIn9U+OGj9oVmOplvUgNhcFVaY9hh93nL1f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11442410},"type":"module","engines":{"node":">=20"},"gitHead":"2e3003077d47959b3c3a67d6e2f31ed4a136f363","scripts":{"dev":"tsx cli.ts","lint":"eslint .","build":"tsc -b && vite build && bun build cli.ts --outdir dist --target node --format esm --packages external","format":"prettier --write \"**/*.{ts,tsx}\"","dev:web":"vite","preview":"vite preview","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xherve","email":"imenarwigema@gmail.com"},"_npmVersion":"11.13.0","description":"A local-first code editor and file browser that runs in your browser","directories":{},"_nodeVersion":"24.16.0","dependencies":{"clsx":"^2.1.1","hono":"^4.12.26","open":"^11.0.0","react":"^19.2.6","shadcn":"^4.11.0","commander":"^15.0.0","react-dom":"^19.2.6","@tiptap/pm":"^3.27.0","tailwindcss":"^4","@tiptap/core":"^3.27.0","lucide-react":"^1.23.0","@pierre/diffs":"^1.2.11","@tiptap/react":"^3.27.0","@base-ui/react":"^1.6.0","tailwind-merge":"^3.6.0","tw-animate-css":"^1.4.0","@tiptap/markdown":"^3.27.0","@hono/node-server":"^2.0.5","@tailwindcss/vite":"^4","@tabler/icons-react":"^3.44.0","@tiptap/starter-kit":"^3.27.0","@tanstack/react-router":"^1.170.16","@tailwindcss/typography":"^0.5.20","@tanstack/react-virtual":"^3.14.3","class-variance-authority":"^0.7.1","@fontsource-variable/geist":"^5.2.9","@fontsource-variable/dm-sans":"^5.2.8","@fontsource-variable/geist-mono":"^5.2.8"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vite":"^8","eslint":"^10","globals":"^17","prettier":"^3.8.3","@eslint/js":"^10","@types/node":"^25.9.3","@types/react":"^19","@types/react-dom":"^19","typescript-eslint":"^8","@vitejs/plugin-react":"^6","eslint-plugin-react-hooks":"^7.1.1","@typescript/native-preview":"^7.0.0-dev.20260707.2","eslint-plugin-react-refresh":"^0.5.2","prettier-plugin-tailwindcss":"^0.8.0"},"_npmOperationalInternal":{"tmp":"tmp/deck_0.0.1_1783752832463_0.7945874322803574","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@0xherve/deck","version":"0.0.2","license":"MIT","_id":"@0xherve/deck@0.0.2","maintainers":[{"name":"0xherve","email":"imenarwigema@gmail.com"}],"homepage":"https://github.com/0xherve/deck#readme","bugs":{"url":"https://github.com/0xherve/deck/issues"},"bin":{"deck":"dist/cli.js"},"dist":{"shasum":"775bb3518ae652565511c4b5a9cd2b08d9d5c2a6","tarball":"https://registry.npmjs.org/@0xherve/deck/-/deck-0.0.2.tgz","fileCount":332,"integrity":"sha512-dzz9zyHL8liJRJPsa7r1jMSkJXuYVKLZ/SvPNPZ7x7ppHG02ehbq9KODE1aRmkCOsGw9Wor040MOqSHWsJwtZg==","signatures":[{"sig":"MEUCIQCT+pOMVCu7jMpNaW3a36DTylTfKDs+NbwjsCyPlD2XDAIgAJVvBrZnN0COtLqT4o0bOblnwtQY/Av4brmGad5+VhI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11443744},"type":"module","engines":{"node":">=20"},"gitHead":"17fafb0a82b29af6e21cc1820af8a08214629388","scripts":{"dev":"tsx cli.ts","lint":"eslint .","build":"tsc -b && vite build && bun build cli.ts --outdir dist --target node --format esm --packages external","format":"prettier --write \"**/*.{ts,tsx}\"","dev:web":"vite","preview":"vite preview","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xherve","email":"imenarwigema@gmail.com"},"repository":{"url":"git+https://github.com/0xherve/deck.git","type":"git"},"_npmVersion":"11.13.0","description":"A local-first code editor and file browser that runs in your browser","directories":{},"_nodeVersion":"24.16.0","dependencies":{"clsx":"^2.1.1","hono":"^4.12.26","open":"^11.0.0","react":"^19.2.6","shadcn":"^4.11.0","commander":"^15.0.0","react-dom":"^19.2.6","@tiptap/pm":"^3.27.0","tailwindcss":"^4","@tiptap/core":"^3.27.0","lucide-react":"^1.23.0","@pierre/diffs":"^1.2.11","@tiptap/react":"^3.27.0","@base-ui/react":"^1.6.0","tailwind-merge":"^3.6.0","tw-animate-css":"^1.4.0","@tiptap/markdown":"^3.27.0","@hono/node-server":"^2.0.5","@tailwindcss/vite":"^4","@tabler/icons-react":"^3.44.0","@tiptap/starter-kit":"^3.27.0","@tanstack/react-router":"^1.170.16","@tailwindcss/typography":"^0.5.20","@tanstack/react-virtual":"^3.14.3","class-variance-authority":"^0.7.1","@fontsource-variable/geist":"^5.2.9","@fontsource-variable/dm-sans":"^5.2.8","@fontsource-variable/geist-mono":"^5.2.8"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vite":"^8","eslint":"^10","globals":"^17","prettier":"^3.8.3","@eslint/js":"^10","@types/node":"^25.9.3","@types/react":"^19","@types/react-dom":"^19","typescript-eslint":"^8","@vitejs/plugin-react":"^6","eslint-plugin-react-hooks":"^7.1.1","@typescript/native-preview":"^7.0.0-dev.20260707.2","eslint-plugin-react-refresh":"^0.5.2","prettier-plugin-tailwindcss":"^0.8.0"},"_npmOperationalInternal":{"tmp":"tmp/deck_0.0.2_1783753199566_0.12411504861545897","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@0xherve/deck","version":"0.0.3","license":"MIT","_id":"@0xherve/deck@0.0.3","maintainers":[{"name":"0xherve","email":"imenarwigema@gmail.com"}],"homepage":"https://github.com/0xherve/deck#readme","bugs":{"url":"https://github.com/0xherve/deck/issues"},"bin":{"deck":"dist/cli.js"},"dist":{"shasum":"6a0efdc4e434700828442235fd4a1bcc524ebda3","tarball":"https://registry.npmjs.org/@0xherve/deck/-/deck-0.0.3.tgz","fileCount":332,"integrity":"sha512-Trjp4YSI+APjnbYPPFBB73BbFSvF81NrUPiLFfaQLmIEa9fJ/g6Uaip1xEe0vgWfPIOLzi7PQ9A2KWyx62Gk+A==","signatures":[{"sig":"MEUCIQC83VDvKE6F/+Df/c2E3h/6iQY2YxxoJN9HtaSPCAnJBwIgeChsp1S4ARj0cV8/Tpt2X2bDWuRfsPaHKAogCnC1kPA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11443753},"type":"module","engines":{"node":">=20"},"gitHead":"d67416a084d7f340f9c662b5778427859c836d2b","scripts":{"dev":"tsx cli.ts","lint":"eslint .","build":"tsc -b && vite build && bun build cli.ts --outdir dist --target node --format esm --packages external","format":"prettier --write \"**/*.{ts,tsx}\"","dev:web":"vite","preview":"vite preview","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xherve","email":"imenarwigema@gmail.com"},"repository":{"url":"git+https://github.com/0xherve/deck.git","type":"git"},"_npmVersion":"11.13.0","description":"A local-first code editor and file browser that runs in your browser","directories":{},"_nodeVersion":"24.16.0","dependencies":{"clsx":"^2.1.1","hono":"^4.12.26","open":"^11.0.0","react":"^19.2.6","shadcn":"^4.11.0","commander":"^15.0.0","react-dom":"^19.2.6","@tiptap/pm":"^3.27.0","tailwindcss":"^4","@tiptap/core":"^3.27.0","lucide-react":"^1.23.0","@pierre/diffs":"^1.2.11","@tiptap/react":"^3.27.0","@base-ui/react":"^1.6.0","tailwind-merge":"^3.6.0","tw-animate-css":"^1.4.0","@tiptap/markdown":"^3.27.0","@hono/node-server":"^2.0.5","@tailwindcss/vite":"^4","@tabler/icons-react":"^3.44.0","@tiptap/starter-kit":"^3.27.0","@tanstack/react-router":"^1.170.16","@tailwindcss/typography":"^0.5.20","@tanstack/react-virtual":"^3.14.3","class-variance-authority":"^0.7.1","@fontsource-variable/geist":"^5.2.9","@fontsource-variable/dm-sans":"^5.2.8","@fontsource-variable/geist-mono":"^5.2.8"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vite":"^8","eslint":"^10","globals":"^17","prettier":"^3.8.3","@eslint/js":"^10","@types/node":"^25.9.3","@types/react":"^19","@types/react-dom":"^19","typescript-eslint":"^8","@vitejs/plugin-react":"^6","eslint-plugin-react-hooks":"^7.1.1","@typescript/native-preview":"^7.0.0-dev.20260707.2","eslint-plugin-react-refresh":"^0.5.2","prettier-plugin-tailwindcss":"^0.8.0"},"_npmOperationalInternal":{"tmp":"tmp/deck_0.0.3_1783753405355_0.5259195821710421","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@0xherve/deck","version":"0.0.6","license":"MIT","_id":"@0xherve/deck@0.0.6","maintainers":[{"name":"0xherve","email":"imenarwigema@gmail.com"}],"homepage":"https://github.com/0xherve/deck#readme","bugs":{"url":"https://github.com/0xherve/deck/issues"},"bin":{"deck":"dist/cli.js"},"dist":{"shasum":"e387ab3adce7cca5ebf0a05799e1eac9e8b6c913","tarball":"https://registry.npmjs.org/@0xherve/deck/-/deck-0.0.6.tgz","fileCount":442,"integrity":"sha512-iHmDv0GqSaSeyWM+gRzjrxZO5JmdhI49aTHAecffLpj8Bs4fQit3oVzPgKep2Tbx2+Q61N8zMCpetjW0+W01Pw==","signatures":[{"sig":"MEQCICscyAyXbJAIX/NYeZ4Y90kTGF7PDIZXTDY1JD2DdVGOAiBdhtNWQkEfl0sbYSRZFN/TUdk9PI+Qa209yFApMUlK2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@0xherve%2fdeck@0.0.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15345690},"type":"module","engines":{"node":">=20"},"gitHead":"eb099cfd6dc3bdb89e61a1bbd4c8e8f9e8746c00","scripts":{"dev":"tsx cli.ts","lint":"eslint .","build":"tsc -b && vite build && bun build cli.ts --outdir dist --target node --format esm --packages external","format":"prettier --write \"**/*.{ts,tsx}\"","dev:web":"vite","preview":"vite preview","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:02220da8-3eee-468a-8acb-dcd1abc67b08"}},"repository":{"url":"git+https://github.com/0xherve/deck.git","type":"git"},"_npmVersion":"11.16.0","description":"A local-first code editor and file browser that runs in your browser","directories":{},"_nodeVersion":"24.18.0","dependencies":{"clsx":"^2.1.1","hono":"^4.12.26","open":"^11.0.0","react":"^19.2.6","shiki":"^4.3.1","shadcn":"^4.11.0","mermaid":"^11.16.0","commander":"^15.0.0","react-dom":"^19.2.6","remark-gfm":"^4.0.1","rehype-slug":"^6.0.0","tailwindcss":"^4","lucide-react":"^1.23.0","@pierre/diffs":"^1.2.11","@pierre/trees":"1.0.0-beta.6","@base-ui/react":"^1.6.0","react-markdown":"^10.1.0","tailwind-merge":"^3.6.0","tw-animate-css":"^1.4.0","@codemirror/view":"^6.43.6","@codemirror/state":"^6.7.1","@hono/node-server":"^2.0.5","@tailwindcss/vite":"^4","@codemirror/search":"^6.7.1","@tabler/icons-react":"^3.44.0","@codemirror/commands":"^6.10.4","@codemirror/lang-css":"^6.3.1","@codemirror/lang-sql":"^6.10.0","@codemirror/language":"^6.12.4","@codemirror/lang-html":"^6.4.11","@codemirror/lang-json":"^6.0.2","@codemirror/lang-yaml":"^6.1.3","@tanstack/react-router":"^1.170.16","@codemirror/lang-python":"^6.2.1","@tailwindcss/typography":"^0.5.20","class-variance-authority":"^0.7.1","@codemirror/lang-markdown":"^6.5.1","@fontsource-variable/geist":"^5.2.9","@codemirror/lang-javascript":"^6.2.5","@fontsource-variable/dm-sans":"^5.2.8","@fontsource-variable/geist-mono":"^5.2.8"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vite":"^8","eslint":"^10","globals":"^17","prettier":"^3.8.3","@eslint/js":"^10","@types/node":"^25.9.3","@types/react":"^19","@types/react-dom":"^19","typescript-eslint":"^8","@vitejs/plugin-react":"^6","eslint-plugin-react-hooks":"^7.1.1","@typescript/native-preview":"^7.0.0-dev.20260707.2","eslint-plugin-react-refresh":"^0.5.2","prettier-plugin-tailwindcss":"^0.8.0"},"_npmOperationalInternal":{"tmp":"tmp/deck_0.0.6_1785467106868_0.11130688479305983","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@0xherve/deck","version":"0.0.7","license":"MIT","_id":"@0xherve/deck@0.0.7","maintainers":[{"name":"0xherve","email":"imenarwigema@gmail.com"}],"homepage":"https://github.com/0xherve/deck#readme","bugs":{"url":"https://github.com/0xherve/deck/issues"},"bin":{"deck":"dist/cli.js"},"dist":{"shasum":"a0e76fdf204c8d5371fb5ca84b893da1a5fe2c21","tarball":"https://registry.npmjs.org/@0xherve/deck/-/deck-0.0.7.tgz","fileCount":442,"integrity":"sha512-lLQpRmBZqOwrZa56Pg99R98FZL4JAN9YPYqWORHt5QpJrzTmq2qKbKO5LcE0R3E6wdkiexUBeQ+pO2qmZM8Jzw==","signatures":[{"sig":"MEYCIQDnL9HQDTXJMiOLFxT8H8ZG8SiDLOSSLWtt3mXhSQ2vYwIhAIGaWLL4cQdLmrB3oGwlzk/YmmSLAuaOH6hNL/NYUkaY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@0xherve%2fdeck@0.0.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15345701},"type":"module","engines":{"node":">=20"},"gitHead":"8119846a6fc83fd052ab364635388651d4f153d9","scripts":{"dev":"tsx cli.ts","lint":"eslint .","build":"tsc -b && vite build && bun build cli.ts --outdir dist --target node --format esm --packages external","format":"prettier --write \"**/*.{ts,tsx}\"","dev:web":"vite","preview":"vite preview","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:02220da8-3eee-468a-8acb-dcd1abc67b08"}},"repository":{"url":"git+https://github.com/0xherve/deck.git","type":"git"},"_npmVersion":"11.16.0","description":"A local-first code editor and file browser that runs in your browser","directories":{},"_nodeVersion":"24.18.0","dependencies":{"clsx":"^2.1.1","hono":"^4.12.26","open":"^11.0.0","react":"^19.2.6","shiki":"^4.3.1","shadcn":"^4.11.0","mermaid":"^11.16.0","commander":"^15.0.0","react-dom":"^19.2.6","remark-gfm":"^4.0.1","rehype-slug":"^6.0.0","tailwindcss":"^4","lucide-react":"^1.23.0","@pierre/diffs":"^1.2.11","@pierre/trees":"1.0.0-beta.6","@base-ui/react":"^1.6.0","react-markdown":"^10.1.0","tailwind-merge":"^3.6.0","tw-animate-css":"^1.4.0","@codemirror/view":"^6.43.6","@codemirror/state":"^6.7.1","@hono/node-server":"^2.0.5","@tailwindcss/vite":"^4","@codemirror/search":"^6.7.1","@tabler/icons-react":"^3.44.0","@codemirror/commands":"^6.10.4","@codemirror/lang-css":"^6.3.1","@codemirror/lang-sql":"^6.10.0","@codemirror/language":"^6.12.4","@codemirror/lang-html":"^6.4.11","@codemirror/lang-json":"^6.0.2","@codemirror/lang-yaml":"^6.1.3","@tanstack/react-router":"^1.170.16","@codemirror/lang-python":"^6.2.1","@tailwindcss/typography":"^0.5.20","class-variance-authority":"^0.7.1","@codemirror/lang-markdown":"^6.5.1","@fontsource-variable/geist":"^5.2.9","@codemirror/lang-javascript":"^6.2.5","@fontsource-variable/dm-sans":"^5.2.8","@fontsource-variable/geist-mono":"^5.2.8"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vite":"^8","eslint":"^10","globals":"^17","prettier":"^3.8.3","@eslint/js":"^10","@types/node":"^25.9.3","@types/react":"^19","@types/react-dom":"^19","typescript-eslint":"^8","@vitejs/plugin-react":"^6","eslint-plugin-react-hooks":"^7.1.1","@typescript/native-preview":"^7.0.0-dev.20260707.2","eslint-plugin-react-refresh":"^0.5.2","prettier-plugin-tailwindcss":"^0.8.0"},"_npmOperationalInternal":{"tmp":"tmp/deck_0.0.7_1785903842477_0.5710570773404848","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@0xherve/deck","version":"0.0.8","description":"A local-first code editor and file browser that runs in your browser","license":"MIT","homepage":"https://github.com/0xherve/deck#readme","repository":{"type":"git","url":"git+https://github.com/0xherve/deck.git"},"bugs":{"url":"https://github.com/0xherve/deck/issues"},"preferGlobal":true,"type":"module","bin":{"deck":"dist/cli.js"},"engines":{"node":">=20"},"scripts":{"dev":"tsx cli.ts","dev:web":"vite","build":"tsc -b && vite build && bun build cli.ts --outdir dist --target node --format esm --packages external","prepublishOnly":"bun run build","lint":"eslint .","format":"prettier --write \"**/*.{ts,tsx}\"","typecheck":"tsc --noEmit","preview":"vite preview"},"dependencies":{"@hono/node-server":"^2.0.5","commander":"^15.0.0","hono":"^4.12.26","open":"^11.0.0"},"devDependencies":{"@base-ui/react":"^1.6.0","@codemirror/commands":"^6.10.4","@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.1","@codemirror/lang-python":"^6.2.1","@codemirror/lang-sql":"^6.10.0","@codemirror/lang-yaml":"^6.1.3","@codemirror/language":"^6.12.4","@codemirror/search":"^6.7.1","@codemirror/state":"^6.7.1","@codemirror/view":"^6.43.6","@eslint/js":"^10","@fontsource-variable/dm-sans":"^5.2.8","@fontsource-variable/geist":"^5.2.9","@fontsource-variable/geist-mono":"^5.2.8","@pierre/diffs":"^1.2.11","@pierre/trees":"1.0.0-beta.6","@tabler/icons-react":"^3.44.0","@tailwindcss/typography":"^0.5.20","@tailwindcss/vite":"^4","@tanstack/react-router":"^1.170.16","@types/node":"^25.9.3","@types/react":"^19","@types/react-dom":"^19","@typescript/native-preview":"^7.0.0-dev.20260707.2","@vitejs/plugin-react":"^6","class-variance-authority":"^0.7.1","clsx":"^2.1.1","eslint":"^10","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-refresh":"^0.5.2","globals":"^17","lucide-react":"^1.23.0","mermaid":"^11.16.0","prettier":"^3.8.3","prettier-plugin-tailwindcss":"^0.8.0","react":"^19.2.6","react-dom":"^19.2.6","react-markdown":"^10.1.0","rehype-slug":"^6.0.0","remark-gfm":"^4.0.1","shadcn":"^4.11.0","shiki":"^4.3.1","tailwind-merge":"^3.6.0","tailwindcss":"^4","tsx":"^4.22.4","tw-animate-css":"^1.4.0","typescript-eslint":"^8","vite":"^8"},"gitHead":"75b714b329edd83ebcf4e322251cc33b16850635","_id":"@0xherve/deck@0.0.8","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-E0KrdmsPALBWHyObxkxEfPwxUwDUHdfFWM06JTgogt6W0I+IPGigwabHn3aeWvVaUF6NmJzLXjHgqnHGJapOyQ==","shasum":"8dcd4a72e980ca6f52cd847deeea4dcd2d6528cf","tarball":"https://registry.npmjs.org/@0xherve/deck/-/deck-0.0.8.tgz","fileCount":442,"unpackedSize":15345515,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@0xherve%2fdeck@0.0.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCFO0hl6iAvxbrJwihu6+7QLIeLcaNviPdZutM6bqIXRwIgUdG8lb0iP4nBc4VYiduR/T2zpIcLCNVMslcEpcWPuFU="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:02220da8-3eee-468a-8acb-dcd1abc67b08"}},"directories":{},"maintainers":[{"name":"0xherve","email":"imenarwigema@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/deck_0.0.8_1785904922628_0.9276119091791366"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-11T06:53:52.266Z","modified":"2026-08-05T04:42:03.294Z","0.0.1":"2026-07-11T06:53:52.672Z","0.0.2":"2026-07-11T06:59:59.748Z","0.0.3":"2026-07-11T07:03:25.568Z","0.0.6":"2026-07-31T03:05:07.145Z","0.0.7":"2026-08-05T04:24:02.771Z","0.0.8":"2026-08-05T04:42:02.878Z"},"bugs":{"url":"https://github.com/0xherve/deck/issues"},"license":"MIT","homepage":"https://github.com/0xherve/deck#readme","repository":{"type":"git","url":"git+https://github.com/0xherve/deck.git"},"description":"A local-first code editor and file browser that runs in your browser","maintainers":[{"name":"0xherve","email":"imenarwigema@gmail.com"}],"readme":"# Deck\n\nA local-first code editor and file browser that runs in your browser. Point it at any directory and get a full editing environment with git integration, markdown editing, diffs, and source control.\n\n## Install\n\n```bash\nnpm install -g @0xherve/deck\n```\n\nThen use `deck` from anywhere:\n\n```bash\ndeck              # open current directory\ndeck ~/my-project # open a specific directory\n```\n\nThe first instance uses port 5200; each additional project gets the next free port.\n\n`npx deck`, `pnpm dlx deck`, and `bunx deck` also work, but global install is the intended workflow.\n\n### Commands\n\n```bash\ndeck [directory]       # Start Deck for a directory (reopens if already running)\ndeck list              # Show all running Deck instances\ndeck stop <port>       # Stop a specific instance\ndeck stop all          # Stop all running instances\n```\n\n### Options\n\n- `-p, --port <number>` — Override the port (default: next free port from 5200)\n\n## Features\n\n- **File browser** — Tree navigation and tabbed editing\n- **Code editing** — Edit any text or code file and save to disk\n- **Markdown editor** — Rendered preview and source editing, with autosave and live task-list checkboxes\n- **Git diffs** — Stacked (unified) per-file diffs from the source control panel\n- **Source control** — Stage, unstage, commit, push, pull, stash, and branch operations\n- **Branch management** — List, create, and check out git branches from the UI\n- **Multi-project** — Run multiple projects simultaneously, each on its own port\n- **Shortcuts** — Cmd/Ctrl+S save, Cmd/Ctrl+P quick open, Cmd/Ctrl+Shift+P command palette, Alt/Option+W close tab\n- **Themes** — Light and dark mode\n\n## Development\n\n```bash\n# Install dependencies\nbun install\n\n# Start the backend (serves files + API)\nbun dev\n\n# Start the frontend dev server (with HMR)\nbun dev:web\n\n# Build for distribution\nbun run build\n```\n\n## Releasing\n\nCI runs on every push/PR (see `[.github/workflows/ci.yml](.github/workflows/ci.yml)`).\n\nTo publish a release, finish the TODOs in `[.github/workflows/release.yml](.github/workflows/release.yml)`, then:\n\n```bash\n# 1. Bump version in package.json\n# 2. Commit and tag (tag must match version, with a v prefix)\ngit tag v0.1.0\ngit push origin main --tags\n```\n\nGitHub Actions will build and publish when the tag is pushed.\n\n## Stack\n\n- **Frontend:** React, TanStack Router, Tailwind CSS v4, TipTap, Vite\n- **Backend:** Hono (Node.js), serves files and git data from the target directory\n- **CLI:** Commander, tracks instances under `/tmp/deck/instances/`\n\n## Future\n\nThese features are on the wishlist but deferred from v0.1:\n\n- Inline gutter diffs inside the code editor\n- Git blame and per-file commit history\n- Merge UI and automatic stash-then-checkout\n- Cross-file content search (grep)\n- LSP, and better code editing functionalities \n","readmeFilename":"README.md"}