@peaske7/readit 0.2.1 → 0.3.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.vite/manifest.json +1111 -0
- package/dist/assets/_basePickBy-BMMA4Tou.js +1 -0
- package/dist/assets/_baseUniq-D40qku1I.js +1 -0
- package/dist/assets/arc-Ckg65iy8.js +1 -0
- package/dist/assets/architecture-YZFGNWBL-Dv3EY0zV.js +1 -0
- package/dist/assets/architectureDiagram-Q4EWVU46-ClRss4cm.js +36 -0
- package/dist/assets/array-Bjz-wYpJ.js +1 -0
- package/dist/assets/blockDiagram-DXYQGD6D-CBcFvoK1.js +132 -0
- package/dist/assets/c4Diagram-AHTNJAMY-D4d3ZLam.js +10 -0
- package/dist/assets/channel-D9EJxDy_.js +1 -0
- package/dist/assets/chunk-2KRD3SAO-DaFfaCGO.js +1 -0
- package/dist/assets/chunk-336JU56O-yLEQoF0v.js +2 -0
- package/dist/assets/chunk-426QAEUC-Uyzd4wAA.js +1 -0
- package/dist/assets/chunk-4BX2VUAB-DRuTD7x5.js +1 -0
- package/dist/assets/chunk-4TB4RGXK-3xbpIi_o.js +206 -0
- package/dist/assets/chunk-55IACEB6-BExiaAoD.js +1 -0
- package/dist/assets/chunk-5FUZZQ4R-DatVvHnF.js +62 -0
- package/dist/assets/chunk-5PVQY5BW-BKgvrGh8.js +2 -0
- package/dist/assets/chunk-67CJDMHE-DMt8LNEX.js +1 -0
- package/dist/assets/chunk-7N4EOEYR-CzLGefVf.js +1 -0
- package/dist/assets/chunk-AA7GKIK3-B6GFAk4U.js +1 -0
- package/dist/assets/chunk-BSJP7CBP-BK29yehL.js +1 -0
- package/dist/assets/chunk-CIAEETIT-D7hBXImP.js +1 -0
- package/dist/assets/chunk-Dlc7tRH4.js +1 -0
- package/dist/assets/chunk-EDXVE4YY-PYJdlmyH.js +1 -0
- package/dist/assets/chunk-ENJZ2VHE-DUHKBv6x.js +10 -0
- package/dist/assets/chunk-FMBD7UC4-2FWyCCAV.js +15 -0
- package/dist/assets/chunk-FOC6F5B3-DKFHrt4K.js +1 -0
- package/dist/assets/chunk-ICPOFSXX-Bh__D0ec.js +122 -0
- package/dist/assets/chunk-K5T4RW27-D51O7IkG.js +94 -0
- package/dist/assets/chunk-KGLVRYIC-DMHSCH4T.js +1 -0
- package/dist/assets/chunk-LIHQZDEY-C2aANxt9.js +1 -0
- package/dist/assets/chunk-ORNJ4GCN-Db_37NRX.js +1 -0
- package/dist/assets/chunk-OYMX7WX6-BltXOJLJ.js +231 -0
- package/dist/assets/chunk-QZHKN3VN-8Lcg9gti.js +1 -0
- package/dist/assets/chunk-U2HBQHQK-ByS6tilY.js +70 -0
- package/dist/assets/chunk-X2U36JSP-Bm-4Gqg_.js +1 -0
- package/dist/assets/chunk-XPW4576I-Bqbompq4.js +32 -0
- package/dist/assets/chunk-YZCP3GAM-CsC0imPb.js +1 -0
- package/dist/assets/chunk-ZZ45TVLE-CG-CqfPC.js +1 -0
- package/dist/assets/classDiagram-6PBFFD2Q-Jy1uFUk4.js +1 -0
- package/dist/assets/classDiagram-v2-HSJHXN6E-ChiLl3rR.js +1 -0
- package/dist/assets/clone-BBjvuERA.js +1 -0
- package/dist/assets/cose-bilkent-S5V4N54A-q90QeGKv.js +1 -0
- package/dist/assets/cytoscape.esm-BfXff3fb.js +321 -0
- package/dist/assets/dagre-KV5264BT-BQWiLFJB.js +4 -0
- package/dist/assets/dagre-nn_aIZ2E.js +1 -0
- package/dist/assets/defaultLocale-BwmRmqJp.js +1 -0
- package/dist/assets/diagram-5BDNPKRD-CJa7Y97H.js +10 -0
- package/dist/assets/diagram-G4DWMVQ6-tVQGBWfY.js +24 -0
- package/dist/assets/diagram-MMDJMWI5-CpimFldm.js +43 -0
- package/dist/assets/diagram-TYMM5635-D11WQVgy.js +24 -0
- package/dist/assets/dist-BNz65Ibc.js +1 -0
- package/dist/assets/erDiagram-SMLLAGMA-C2bLd0jS.js +85 -0
- package/dist/assets/flowDiagram-DWJPFMVM-Kw3fOOLT.js +162 -0
- package/dist/assets/ganttDiagram-T4ZO3ILL-fyMhyE2X.js +292 -0
- package/dist/assets/gitGraph-7Q5UKJZL-BGFRt2qs.js +1 -0
- package/dist/assets/gitGraphDiagram-UUTBAWPF-D4JoiOvg.js +106 -0
- package/dist/assets/graphlib-DGcD9J2L.js +1 -0
- package/dist/assets/index-Cow3qpoq.css +2 -0
- package/dist/assets/index-DUf7okYi.js +14 -0
- package/dist/assets/info-OMHHGYJF-DI6-Z9vh.js +1 -0
- package/dist/assets/infoDiagram-42DDH7IO-D1ZkeMBy.js +2 -0
- package/dist/assets/init-TPm5RB77.js +1 -0
- package/dist/assets/isArrayLikeObject-69BLnVNM.js +1 -0
- package/dist/assets/isEmpty-DUS28g5f.js +1 -0
- package/dist/assets/ishikawaDiagram-UXIWVN3A-Dv8hzjZB.js +70 -0
- package/dist/assets/journeyDiagram-VCZTEJTY-COeB7F5r.js +139 -0
- package/dist/assets/kanban-definition-6JOO6SKY-BbYmxCYU.js +89 -0
- package/dist/assets/katex-5SGEXwpi.js +261 -0
- package/dist/assets/line-_v2NGEdn.js +1 -0
- package/dist/assets/linear-CXMqTN8N.js +1 -0
- package/dist/assets/mermaid-config-C8a4L22x.js +1 -0
- package/dist/assets/mermaid-parser.core-CFmphzPP.js +4 -0
- package/dist/assets/mermaid.core-DnHAupTp.js +11 -0
- package/dist/assets/mindmap-definition-QFDTVHPH-D7_lIep7.js +96 -0
- package/dist/assets/ordinal-D7l-8DAO.js +1 -0
- package/dist/assets/packet-4T2RLAQJ-DidW3JFc.js +1 -0
- package/dist/assets/path-BVpCanzE.js +1 -0
- package/dist/assets/pie-ZZUOXDRM-Bff2e5hg.js +1 -0
- package/dist/assets/pieDiagram-DEJITSTG-DDvYHCT_.js +30 -0
- package/dist/assets/quadrantDiagram-34T5L4WZ-DcLcIrdi.js +7 -0
- package/dist/assets/radar-PYXPWWZC-CsdZBH3M.js +1 -0
- package/dist/assets/requirementDiagram-MS252O5E-DLX6ld7D.js +84 -0
- package/dist/assets/rough.esm-BoTisKeL.js +1 -0
- package/dist/assets/sankeyDiagram-XADWPNL6-D-1GtsHM.js +10 -0
- package/dist/assets/sequenceDiagram-FGHM5R23-Bwxs0YQg.js +157 -0
- package/dist/assets/src-CrmkjRpa.js +1 -0
- package/dist/assets/stateDiagram-FHFEXIEX-DW7rOcnQ.js +1 -0
- package/dist/assets/stateDiagram-v2-QKLJ7IA2-Jm-24vQ2.js +1 -0
- package/dist/assets/timeline-definition-GMOUNBTQ-DVdHyzxS.js +120 -0
- package/dist/assets/treeView-SZITEDCU-DPKseaET.js +1 -0
- package/dist/assets/treemap-W4RFUUIX-DH-7GZe_.js +1 -0
- package/dist/assets/vennDiagram-DHZGUBPP-DJaC6xmI.js +34 -0
- package/dist/assets/wardley-RL74JXVD-AgyXyBN5.js +1 -0
- package/dist/assets/wardleyDiagram-NUSXRM2D-CTKERPKv.js +20 -0
- package/dist/assets/xychartDiagram-5P7HB3ND-BuExiLXc.js +7 -0
- package/{index.html → dist/index.html} +2 -1
- package/dist/index.js +2539 -0
- package/package.json +11 -1
- package/.agents/skills/remotion-best-practices/SKILL.md +0 -61
- package/.agents/skills/remotion-best-practices/rules/3d.md +0 -86
- package/.agents/skills/remotion-best-practices/rules/animations.md +0 -27
- package/.agents/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +0 -178
- package/.agents/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +0 -100
- package/.agents/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +0 -108
- package/.agents/skills/remotion-best-practices/rules/assets.md +0 -78
- package/.agents/skills/remotion-best-practices/rules/audio-visualization.md +0 -198
- package/.agents/skills/remotion-best-practices/rules/audio.md +0 -169
- package/.agents/skills/remotion-best-practices/rules/calculate-metadata.md +0 -134
- package/.agents/skills/remotion-best-practices/rules/can-decode.md +0 -75
- package/.agents/skills/remotion-best-practices/rules/charts.md +0 -120
- package/.agents/skills/remotion-best-practices/rules/compositions.md +0 -154
- package/.agents/skills/remotion-best-practices/rules/display-captions.md +0 -184
- package/.agents/skills/remotion-best-practices/rules/extract-frames.md +0 -229
- package/.agents/skills/remotion-best-practices/rules/ffmpeg.md +0 -38
- package/.agents/skills/remotion-best-practices/rules/fonts.md +0 -152
- package/.agents/skills/remotion-best-practices/rules/get-audio-duration.md +0 -58
- package/.agents/skills/remotion-best-practices/rules/get-video-dimensions.md +0 -68
- package/.agents/skills/remotion-best-practices/rules/get-video-duration.md +0 -60
- package/.agents/skills/remotion-best-practices/rules/gifs.md +0 -141
- package/.agents/skills/remotion-best-practices/rules/images.md +0 -134
- package/.agents/skills/remotion-best-practices/rules/import-srt-captions.md +0 -69
- package/.agents/skills/remotion-best-practices/rules/light-leaks.md +0 -73
- package/.agents/skills/remotion-best-practices/rules/lottie.md +0 -70
- package/.agents/skills/remotion-best-practices/rules/maps.md +0 -412
- package/.agents/skills/remotion-best-practices/rules/measuring-dom-nodes.md +0 -34
- package/.agents/skills/remotion-best-practices/rules/measuring-text.md +0 -140
- package/.agents/skills/remotion-best-practices/rules/parameters.md +0 -109
- package/.agents/skills/remotion-best-practices/rules/sequencing.md +0 -118
- package/.agents/skills/remotion-best-practices/rules/sfx.md +0 -26
- package/.agents/skills/remotion-best-practices/rules/subtitles.md +0 -36
- package/.agents/skills/remotion-best-practices/rules/tailwind.md +0 -11
- package/.agents/skills/remotion-best-practices/rules/text-animations.md +0 -20
- package/.agents/skills/remotion-best-practices/rules/timing.md +0 -179
- package/.agents/skills/remotion-best-practices/rules/transcribe-captions.md +0 -70
- package/.agents/skills/remotion-best-practices/rules/transitions.md +0 -197
- package/.agents/skills/remotion-best-practices/rules/transparent-videos.md +0 -106
- package/.agents/skills/remotion-best-practices/rules/trimming.md +0 -51
- package/.agents/skills/remotion-best-practices/rules/videos.md +0 -171
- package/.agents/skills/remotion-best-practices/rules/voiceover.md +0 -99
- package/.agents/skills/simple/SKILL.md +0 -52
- package/.agents/skills/vercel-react-best-practices/AGENTS.md +0 -3254
- package/.agents/skills/vercel-react-best-practices/README.md +0 -123
- package/.agents/skills/vercel-react-best-practices/SKILL.md +0 -141
- package/.agents/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -55
- package/.agents/skills/vercel-react-best-practices/rules/advanced-init-once.md +0 -42
- package/.agents/skills/vercel-react-best-practices/rules/advanced-use-latest.md +0 -39
- package/.agents/skills/vercel-react-best-practices/rules/async-api-routes.md +0 -38
- package/.agents/skills/vercel-react-best-practices/rules/async-defer-await.md +0 -80
- package/.agents/skills/vercel-react-best-practices/rules/async-dependencies.md +0 -51
- package/.agents/skills/vercel-react-best-practices/rules/async-parallel.md +0 -28
- package/.agents/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -99
- package/.agents/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -59
- package/.agents/skills/vercel-react-best-practices/rules/bundle-conditional.md +0 -31
- package/.agents/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -49
- package/.agents/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -35
- package/.agents/skills/vercel-react-best-practices/rules/bundle-preload.md +0 -50
- package/.agents/skills/vercel-react-best-practices/rules/client-event-listeners.md +0 -74
- package/.agents/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -71
- package/.agents/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -48
- package/.agents/skills/vercel-react-best-practices/rules/client-swr-dedup.md +0 -56
- package/.agents/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -107
- package/.agents/skills/vercel-react-best-practices/rules/js-cache-function-results.md +0 -80
- package/.agents/skills/vercel-react-best-practices/rules/js-cache-property-access.md +0 -28
- package/.agents/skills/vercel-react-best-practices/rules/js-cache-storage.md +0 -70
- package/.agents/skills/vercel-react-best-practices/rules/js-combine-iterations.md +0 -32
- package/.agents/skills/vercel-react-best-practices/rules/js-early-exit.md +0 -50
- package/.agents/skills/vercel-react-best-practices/rules/js-flatmap-filter.md +0 -60
- package/.agents/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -45
- package/.agents/skills/vercel-react-best-practices/rules/js-index-maps.md +0 -37
- package/.agents/skills/vercel-react-best-practices/rules/js-length-check-first.md +0 -49
- package/.agents/skills/vercel-react-best-practices/rules/js-min-max-loop.md +0 -82
- package/.agents/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -24
- package/.agents/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -57
- package/.agents/skills/vercel-react-best-practices/rules/rendering-activity.md +0 -26
- package/.agents/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -47
- package/.agents/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -40
- package/.agents/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -38
- package/.agents/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -46
- package/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -82
- package/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +0 -30
- package/.agents/skills/vercel-react-best-practices/rules/rendering-resource-hints.md +0 -85
- package/.agents/skills/vercel-react-best-practices/rules/rendering-script-defer-async.md +0 -68
- package/.agents/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -28
- package/.agents/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +0 -75
- package/.agents/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -39
- package/.agents/skills/vercel-react-best-practices/rules/rerender-dependencies.md +0 -45
- package/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +0 -40
- package/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state.md +0 -29
- package/.agents/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -74
- package/.agents/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -58
- package/.agents/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +0 -38
- package/.agents/skills/vercel-react-best-practices/rules/rerender-memo.md +0 -44
- package/.agents/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +0 -45
- package/.agents/skills/vercel-react-best-practices/rules/rerender-no-inline-components.md +0 -82
- package/.agents/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +0 -35
- package/.agents/skills/vercel-react-best-practices/rules/rerender-transitions.md +0 -40
- package/.agents/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +0 -73
- package/.agents/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -73
- package/.agents/skills/vercel-react-best-practices/rules/server-auth-actions.md +0 -96
- package/.agents/skills/vercel-react-best-practices/rules/server-cache-lru.md +0 -41
- package/.agents/skills/vercel-react-best-practices/rules/server-cache-react.md +0 -76
- package/.agents/skills/vercel-react-best-practices/rules/server-dedup-props.md +0 -65
- package/.agents/skills/vercel-react-best-practices/rules/server-hoist-static-io.md +0 -142
- package/.agents/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -83
- package/.agents/skills/vercel-react-best-practices/rules/server-serialization.md +0 -38
- package/.claude/CLAUDE.md +0 -184
- package/.claude/commands/review.md +0 -120
- package/.claude/commands/sync-docs.md +0 -71
- package/.claude/roadmap.md +0 -121
- package/.claude/rules/style-guide.md +0 -830
- package/.claude/settings.json +0 -18
- package/.claude/user-stories.md +0 -333
- package/AGENTS.md +0 -68
- package/Makefile +0 -32
- package/biome.json +0 -79
- package/bun.lock +0 -854
- package/bunfig.toml +0 -2
- package/docs/design.md +0 -563
- package/docs/perf-baseline.md +0 -130
- package/docs/plans/2026-03-13-client-mode-design.md +0 -86
- package/docs/plans/2026-03-13-client-mode-plan.md +0 -605
- package/docs/plans/2026-03-13-keyboard-shortcuts-design.md +0 -129
- package/docs/plans/2026-03-13-keyboard-shortcuts-plan.md +0 -1471
- package/docs/plans/2026-03-13-multi-document-design.md +0 -183
- package/docs/plans/2026-03-13-performance-benchmarks-design.md +0 -121
- package/docs/superpowers/plans/2026-03-26-surgical-pruning.md +0 -1176
- package/docs/superpowers/specs/2026-03-27-go-server-rewrite-design.md +0 -284
- package/e2e/comments.spec.ts +0 -81
- package/e2e/document-load.spec.ts +0 -32
- package/e2e/export.spec.ts +0 -58
- package/e2e/fixtures/sample.md +0 -7
- package/e2e/perf/add-comment.spec.ts +0 -116
- package/e2e/perf/fixtures/generate.ts +0 -327
- package/e2e/perf/initial-load.spec.ts +0 -49
- package/e2e/perf/perf.setup.ts +0 -23
- package/e2e/perf/perf.teardown.ts +0 -9
- package/e2e/perf/screenshot-final.png +0 -0
- package/e2e/perf/scroll.spec.ts +0 -39
- package/e2e/perf/tab-switch.spec.ts +0 -69
- package/e2e/perf/text-selection.spec.ts +0 -119
- package/e2e/perf/utils/metrics.ts +0 -350
- package/e2e/perf/utils/perf-cli.ts +0 -86
- package/e2e/persistence-file.spec.ts +0 -357
- package/e2e/utils/cli.ts +0 -84
- package/e2e/utils/selection.ts +0 -79
- package/go/cmd/readit/main.go +0 -416
- package/go/go.mod +0 -20
- package/go/go.sum +0 -41
- package/go/internal/server/anchor.go +0 -302
- package/go/internal/server/anchor_test.go +0 -111
- package/go/internal/server/comments.go +0 -390
- package/go/internal/server/documents.go +0 -113
- package/go/internal/server/embed.go +0 -17
- package/go/internal/server/headings.go +0 -33
- package/go/internal/server/headings_test.go +0 -75
- package/go/internal/server/htmltext.go +0 -123
- package/go/internal/server/markdown.go +0 -157
- package/go/internal/server/markdown_bench_test.go +0 -42
- package/go/internal/server/markdown_test.go +0 -79
- package/go/internal/server/server.go +0 -453
- package/go/internal/server/server_bench_test.go +0 -122
- package/go/internal/server/settings.go +0 -110
- package/go/internal/server/sse.go +0 -140
- package/go/internal/server/storage.go +0 -275
- package/go/internal/server/storage_test.go +0 -118
- package/go/internal/server/template.go +0 -66
- package/go/internal/server/types.go +0 -101
- package/go/internal/server/watcher.go +0 -74
- package/lefthook.yml +0 -8
- package/nvim-readit/lua/readit/health.lua +0 -64
- package/nvim-readit/lua/readit/init.lua +0 -463
- package/nvim-readit/plugin/readit.lua +0 -19
- package/playwright.config.ts +0 -34
- package/skills-lock.json +0 -20
- package/src/App.svelte +0 -881
- package/src/cli.ts +0 -881
- package/src/components/ActionsMenu.svelte +0 -95
- package/src/components/CommentBadge.svelte +0 -67
- package/src/components/CommentErrorBanner.svelte +0 -33
- package/src/components/CommentInput.svelte +0 -75
- package/src/components/CommentListItem.svelte +0 -95
- package/src/components/CommentManager.svelte +0 -129
- package/src/components/CommentNav.svelte +0 -109
- package/src/components/DocumentViewer.svelte +0 -218
- package/src/components/FloatingComment.svelte +0 -107
- package/src/components/Header.svelte +0 -76
- package/src/components/InlineEditor.svelte +0 -72
- package/src/components/MarginNote.svelte +0 -167
- package/src/components/MarginNotesContainer.svelte +0 -33
- package/src/components/RawModal.svelte +0 -126
- package/src/components/ReanchorConfirm.svelte +0 -30
- package/src/components/SettingsModal.svelte +0 -220
- package/src/components/ShortcutCapture.svelte +0 -82
- package/src/components/ShortcutList.svelte +0 -145
- package/src/components/TabBar.svelte +0 -52
- package/src/components/TableOfContents.svelte +0 -125
- package/src/components/ui/ActionLink.svelte +0 -40
- package/src/components/ui/Button.svelte +0 -53
- package/src/components/ui/Dialog.svelte +0 -97
- package/src/components/ui/DropdownMenu.svelte +0 -85
- package/src/components/ui/DropdownMenuItem.svelte +0 -38
- package/src/components/ui/DropdownMenuSeparator.svelte +0 -11
- package/src/components/ui/Text.svelte +0 -42
- package/src/env.d.ts +0 -6
- package/src/index.css +0 -754
- package/src/lib/__fixtures__/bench-data.ts +0 -114
- package/src/lib/anchor.bench.ts +0 -91
- package/src/lib/anchor.test.ts +0 -527
- package/src/lib/anchor.ts +0 -381
- package/src/lib/comment-storage.bench.ts +0 -49
- package/src/lib/comment-storage.test.ts +0 -632
- package/src/lib/comment-storage.ts +0 -222
- package/src/lib/export.bench.ts +0 -21
- package/src/lib/export.ts +0 -36
- package/src/lib/headings.test.ts +0 -103
- package/src/lib/headings.ts +0 -44
- package/src/lib/highlight/core.test.ts +0 -93
- package/src/lib/highlight/dom.ts +0 -187
- package/src/lib/highlight/highlight-registry.ts +0 -221
- package/src/lib/highlight/highlight.bench.ts +0 -92
- package/src/lib/highlight/highlighter.ts +0 -247
- package/src/lib/highlight/resolver.ts +0 -38
- package/src/lib/highlight/types.ts +0 -17
- package/src/lib/html-text.test.ts +0 -162
- package/src/lib/html-text.ts +0 -161
- package/src/lib/i18n/en.ts +0 -116
- package/src/lib/i18n/index.ts +0 -3
- package/src/lib/i18n/ja.ts +0 -118
- package/src/lib/i18n/translations.ts +0 -27
- package/src/lib/i18n/types.ts +0 -122
- package/src/lib/margin-layout.bench.ts +0 -61
- package/src/lib/margin-layout.ts +0 -71
- package/src/lib/markdown-renderer.test.ts +0 -154
- package/src/lib/markdown-renderer.ts +0 -177
- package/src/lib/mermaid-config.ts +0 -38
- package/src/lib/mermaid-renderer.ts +0 -162
- package/src/lib/mermaid-worker.ts +0 -60
- package/src/lib/positions.ts +0 -157
- package/src/lib/shortcut-registry.ts +0 -244
- package/src/lib/utils.ts +0 -15
- package/src/main.ts +0 -16
- package/src/schema.ts +0 -92
- package/src/server.ts +0 -1220
- package/src/stores/app.svelte.ts +0 -231
- package/src/stores/locale.svelte.ts +0 -46
- package/src/stores/settings.svelte.ts +0 -90
- package/src/stores/shortcuts.svelte.ts +0 -104
- package/src/stores/ui.svelte.ts +0 -12
- package/src/template.ts +0 -104
- package/src/test-setup.ts +0 -48
- package/svelte.config.js +0 -5
- package/test.md +0 -74
- package/tsconfig.cli.json +0 -12
- package/tsconfig.json +0 -20
- package/vite.config.ts +0 -47
- package/vitest.config.ts +0 -15
- package/vscode-readit/.mcp.json +0 -7
- package/vscode-readit/.vscodeignore +0 -7
- package/vscode-readit/bun.lock +0 -78
- package/vscode-readit/icon.svg +0 -10
- package/vscode-readit/package.json +0 -110
- package/vscode-readit/src/extension.ts +0 -117
- package/vscode-readit/src/server-manager.ts +0 -272
- package/vscode-readit/src/webview-provider.ts +0 -204
- package/vscode-readit/tsconfig.json +0 -20
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
# Code Review: 本質的な課題発見と解決
|
|
2
|
-
|
|
3
|
-
Review code in $ARGUMENTS for **fundamental design issues**, not surface-level cleanup. Use extended thinking (ultrathink).
|
|
4
|
-
|
|
5
|
-
**Philosophy**: Find root causes, but respect the codebase's simplicity-first approach. From `style-guide.md`:
|
|
6
|
-
|
|
7
|
-
- "Obvious over clever" - Can you understand it in 5 seconds?
|
|
8
|
-
- "Duplication over wrong abstraction" - Write it twice, abstract on the third
|
|
9
|
-
- "Simple over complex" - Prefer imperative solutions over abstractions
|
|
10
|
-
- "Do not model state machines or data with classes" - Use discriminated unions sparingly
|
|
11
|
-
|
|
12
|
-
**CRITICAL**: Do NOT suggest new abstractions (state machines, wrapper classes, generic utilities) unless the same pattern appears 3+ times. Prefer inline, obvious code.
|
|
13
|
-
|
|
14
|
-
## What to Look For
|
|
15
|
-
|
|
16
|
-
Reference `.claude/rules/style-guide.md` for detailed examples.
|
|
17
|
-
|
|
18
|
-
### 1. Abstractions & Decomposition
|
|
19
|
-
|
|
20
|
-
- §9.2 Refactoring & Anti-Patterns - Premature abstraction, wrong boundaries
|
|
21
|
-
- §3.2 Balanced Function Decomposition - When to extract vs inline
|
|
22
|
-
|
|
23
|
-
### 2. Type Design
|
|
24
|
-
|
|
25
|
-
- §2.1 Parse, Don't Validate - Transform at boundaries, don't re-validate
|
|
26
|
-
- §2.2 Discriminated Unions Over Classes - Exhaustive checking, no inheritance
|
|
27
|
-
- §6.3 No Enums - Use const object pattern
|
|
28
|
-
|
|
29
|
-
### 3. Control Flow
|
|
30
|
-
|
|
31
|
-
- §3.3 Early Returns and Guard Clauses - Happy path at root indentation
|
|
32
|
-
- §3.3.1 Prefer Early Returns Over `let` Accumulation
|
|
33
|
-
- §7.2 Sequential vs Parallel Processing - Right async pattern for the job
|
|
34
|
-
- §4.1 Single Try-Catch for Related Operations
|
|
35
|
-
|
|
36
|
-
### 4. Function Design
|
|
37
|
-
|
|
38
|
-
- §3.5 Object Destructuring for Opaque Parameters
|
|
39
|
-
- §3.1 Simple Over Complex - Prefer imperative over functional abstractions
|
|
40
|
-
|
|
41
|
-
### 5. Code Hygiene (Always Check)
|
|
42
|
-
|
|
43
|
-
- §3.4 Naming Conventions - No generic names, Hungarian notation, abbreviations
|
|
44
|
-
- §3.2 Superfluous abstractions - Inline trivial one-liners
|
|
45
|
-
- Comments - Delete restating JSDoc, commented-out code, TODOs without tickets
|
|
46
|
-
- Dead code - Remove unused imports, uncalled methods, unread variables
|
|
47
|
-
|
|
48
|
-
## Review Process
|
|
49
|
-
|
|
50
|
-
1. **Understand the use case** - What is this code trying to accomplish?
|
|
51
|
-
2. **Trace the data flow** - Follow the data from input to output
|
|
52
|
-
3. **Question abstractions** - Does this class/function earn its existence? Could it be simpler?
|
|
53
|
-
4. **Resist adding complexity** - The fix should simplify, not add layers
|
|
54
|
-
|
|
55
|
-
## Output Format
|
|
56
|
-
|
|
57
|
-
```markdown
|
|
58
|
-
## 本質的な課題 (Fundamental Issues)
|
|
59
|
-
|
|
60
|
-
### [Critical/High/Medium] Issue Title
|
|
61
|
-
**Root Cause**: Why this problem exists at the design level
|
|
62
|
-
**Symptom**: What you observe in the code
|
|
63
|
-
**Location**: `path/to/file.ts:123`
|
|
64
|
-
**Proposed Fix**: How to simplify (prefer removal/inlining over adding new abstractions)
|
|
65
|
-
|
|
66
|
-
## Surface Issues (Lower Priority)
|
|
67
|
-
- Brief list of naming, formatting, comment issues (fix these only after fundamental issues)
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## Fix Approach
|
|
71
|
-
|
|
72
|
-
**For fundamental issues:**
|
|
73
|
-
|
|
74
|
-
1. Propose the simplest fix first (often: inline, remove, or merge)
|
|
75
|
-
2. Ask for confirmation if the change affects multiple files or public interfaces
|
|
76
|
-
3. Implement the fix
|
|
77
|
-
|
|
78
|
-
**For surface issues:**
|
|
79
|
-
|
|
80
|
-
1. Fix silently after addressing fundamental issues
|
|
81
|
-
2. Run `bun run check:fix` to format
|
|
82
|
-
|
|
83
|
-
## Anti-patterns to Flag
|
|
84
|
-
|
|
85
|
-
- **Adding abstraction to fix a bug** - Symptom-fixing vs root cause
|
|
86
|
-
- **Creating a "utils" function** - Find the right home or inline it
|
|
87
|
-
- **Wrapper functions that just pass through** - No value added, remove them
|
|
88
|
-
- **Extracting trivial operations** - `name.replace(/_id_seq$/, "")` should stay inline
|
|
89
|
-
- **Boolean parameters** - Should often be two separate functions
|
|
90
|
-
|
|
91
|
-
## When Abstractions ARE Appropriate
|
|
92
|
-
|
|
93
|
-
**State machines** - Use when:
|
|
94
|
-
|
|
95
|
-
- There are distinct, named states (e.g., VOID → EVENT_CREATED → BOT_SCHEDULED)
|
|
96
|
-
- Transitions between states have specific actions
|
|
97
|
-
- The switch statement covers all state combinations exhaustively
|
|
98
|
-
|
|
99
|
-
**Don't use** state machines for:
|
|
100
|
-
|
|
101
|
-
- Simple if/else that can be early returns
|
|
102
|
-
- Boolean flags that don't represent true states
|
|
103
|
-
- "Just in case" future flexibility
|
|
104
|
-
|
|
105
|
-
**New types/classes** - Use when:
|
|
106
|
-
|
|
107
|
-
- Pattern repeats 3+ times
|
|
108
|
-
- Encapsulates meaningful domain complexity
|
|
109
|
-
- Makes invalid states unrepresentable
|
|
110
|
-
|
|
111
|
-
## Anti-patterns to AVOID Suggesting
|
|
112
|
-
|
|
113
|
-
- Generic utility wrappers
|
|
114
|
-
- New abstraction layers for 1-2 use cases
|
|
115
|
-
- "Future-proofing" changes
|
|
116
|
-
- State machines for simple conditional logic
|
|
117
|
-
|
|
118
|
-
---
|
|
119
|
-
|
|
120
|
-
Now analyze: $ARGUMENTS
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Sync documentation with current codebase implementation
|
|
3
|
-
allowed-tools: Read, Grep, Glob, Edit
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Sync Documentation
|
|
7
|
-
|
|
8
|
-
Compare documentation files against the actual codebase and fix discrepancies.
|
|
9
|
-
|
|
10
|
-
## Files to Sync
|
|
11
|
-
|
|
12
|
-
| File | What to verify |
|
|
13
|
-
|------|----------------|
|
|
14
|
-
| `CLAUDE.md` | Architecture diagram, component list, tech stack, CLI options |
|
|
15
|
-
| `README.md` | Node.js version, usage examples, requirements, feature descriptions |
|
|
16
|
-
| `.claude/user-stories.md` | Implementation status, acceptance criteria accuracy |
|
|
17
|
-
| `.claude/roadmap.md` | Completed vs planned features, removed tech references |
|
|
18
|
-
|
|
19
|
-
## Process
|
|
20
|
-
|
|
21
|
-
### Step 1: Read Source of Truth
|
|
22
|
-
|
|
23
|
-
Read these files to understand actual implementation:
|
|
24
|
-
|
|
25
|
-
```
|
|
26
|
-
package.json → version, dependencies, Node.js requirement
|
|
27
|
-
src/cli/index.ts → CLI flags, supported file types
|
|
28
|
-
src/server/index.ts → API routes
|
|
29
|
-
src/components/*.tsx → component names
|
|
30
|
-
src/lib/*.ts → utilities
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
### Step 2: Compare and Report
|
|
34
|
-
|
|
35
|
-
For each doc file, check for:
|
|
36
|
-
|
|
37
|
-
- **Version mismatches** (Node.js, React, package version)
|
|
38
|
-
- **Removed dependencies** still mentioned (e.g., Pandoc)
|
|
39
|
-
- **Renamed/deleted components** in architecture diagrams
|
|
40
|
-
- **Implemented features** still marked "Not implemented"
|
|
41
|
-
- **New CLI flags** not documented
|
|
42
|
-
- **UI terminology** changes (e.g., "sidebar" → "margin notes")
|
|
43
|
-
|
|
44
|
-
### Step 3: Output Format
|
|
45
|
-
|
|
46
|
-
```markdown
|
|
47
|
-
## Documentation Sync Report
|
|
48
|
-
|
|
49
|
-
### Discrepancies Found
|
|
50
|
-
|
|
51
|
-
#### CLAUDE.md
|
|
52
|
-
1. **Architecture diagram**: Lists `CommentSidebar.tsx` but file doesn't exist
|
|
53
|
-
- **Fix**: Update to `MarginNote.tsx`, `MarginNotesContainer.tsx`
|
|
54
|
-
|
|
55
|
-
#### README.md
|
|
56
|
-
1. **Node.js version**: Says "≥18" but package.json requires "≥22"
|
|
57
|
-
- **Fix**: Update to ≥22.0.0
|
|
58
|
-
|
|
59
|
-
### ✓ Already Accurate
|
|
60
|
-
- .claude/roadmap.md
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
### Step 4: Fix
|
|
64
|
-
|
|
65
|
-
After listing all discrepancies, ask for confirmation, then apply fixes using Edit tool.
|
|
66
|
-
|
|
67
|
-
## When to Run
|
|
68
|
-
|
|
69
|
-
- Before releases
|
|
70
|
-
- After adding/removing features
|
|
71
|
-
- After refactoring components
|
package/.claude/roadmap.md
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
# Development Roadmap
|
|
2
|
-
|
|
3
|
-
## v0.1.0 - MVP ✅
|
|
4
|
-
|
|
5
|
-
- [x] CLI with Commander.js
|
|
6
|
-
- [x] markdown-it for Markdown rendering (server-side with shiki syntax highlighting)
|
|
7
|
-
- [x] HTML file support
|
|
8
|
-
- [x] Bun.serve() server serving API + static files
|
|
9
|
-
- [x] Svelte 5 frontend with Tailwind CSS v4
|
|
10
|
-
- [x] Text selection → comment input
|
|
11
|
-
- [x] Margin notes UI (Google Docs style)
|
|
12
|
-
- [x] Highlight commented text with yellow background
|
|
13
|
-
- [x] Copy All / Export JSON
|
|
14
|
-
- [x] File-based comment persistence (`.comments.md` files)
|
|
15
|
-
- [x] Copy for LLM feature (⌘⇧C) - copy selection/comment with surrounding context
|
|
16
|
-
- [x] CLI subcommands: `list`, `show`, `open`
|
|
17
|
-
|
|
18
|
-
## v0.2.0 - File-Based Comment Storage ✅
|
|
19
|
-
|
|
20
|
-
Plain markdown storage enables git versioning, LLM accessibility, and cross-tool extensibility.
|
|
21
|
-
|
|
22
|
-
- [x] Store comments in `~/.readit/comments/{path}/{filename}.comments.md`
|
|
23
|
-
- [x] Human-readable markdown format with selected text + comment
|
|
24
|
-
- [x] Auto-save on comment add/edit/delete
|
|
25
|
-
- [x] Load comments from file on startup
|
|
26
|
-
- [x] Anchor-based text matching (survives minor document edits)
|
|
27
|
-
|
|
28
|
-
## v0.2.1 - Storage Robustness ✅
|
|
29
|
-
|
|
30
|
-
- [x] Version compatibility check in parser (error on future versions)
|
|
31
|
-
- [x] Anchor confidence propagation to UI (exact/fuzzy/unresolved indicators)
|
|
32
|
-
- [x] Selection truncation for very long texts (>1000 chars)
|
|
33
|
-
- [x] Document single-tab-per-file limitation
|
|
34
|
-
- [x] Document cross-machine path limitation
|
|
35
|
-
- [ ] Integration tests for storage edge cases:
|
|
36
|
-
- [ ] Large documents (10K+ lines)
|
|
37
|
-
- [ ] Many comments (100+)
|
|
38
|
-
- [ ] Unicode/emoji in selections
|
|
39
|
-
- [ ] Concurrent tab simulation
|
|
40
|
-
- [ ] Document changes between sessions
|
|
41
|
-
- [ ] Corrupt/malformed comment files
|
|
42
|
-
|
|
43
|
-
## v0.3.0 - Comment Resolution Workflow
|
|
44
|
-
|
|
45
|
-
Review documents, add comments, then resolve one-by-one with LLM assistance.
|
|
46
|
-
|
|
47
|
-
- [ ] Comment status (`unresolved` / `resolved`)
|
|
48
|
-
- [ ] Add `status` field to Comment type
|
|
49
|
-
- [ ] Store status in `.comments.md` metadata: `<!-- c:{id}|{lineHint}|{timestamp}|{status} -->`
|
|
50
|
-
- [ ] Default new comments to `unresolved`
|
|
51
|
-
- [ ] Navigate unresolved comments
|
|
52
|
-
- [ ] "Next unresolved" / "Previous unresolved" keyboard shortcuts
|
|
53
|
-
- [ ] Unresolved count in header
|
|
54
|
-
- [ ] Visual status indicators
|
|
55
|
-
- [ ] Minimap: yellow = unresolved, green = resolved
|
|
56
|
-
- [ ] Margin notes: status badge + toggle button
|
|
57
|
-
- [ ] Highlight colors: yellow = unresolved, muted = resolved
|
|
58
|
-
- [ ] Per-comment LLM copy
|
|
59
|
-
- [ ] Copy single comment + context (⌘⇧C on margin note)
|
|
60
|
-
- [ ] Include file path, line numbers, heading context
|
|
61
|
-
- [ ] Mark resolved action
|
|
62
|
-
- [ ] Click to toggle status
|
|
63
|
-
- [ ] Auto-navigate to next unresolved (optional)
|
|
64
|
-
|
|
65
|
-
## v0.4.0 - Visual Enhancements ✅
|
|
66
|
-
|
|
67
|
-
- [x] Highlight commented text in document (moved to v0.1.0)
|
|
68
|
-
- [x] Syntax highlighting for code blocks (shiki, server-side)
|
|
69
|
-
- [x] Click highlight → scroll to margin note
|
|
70
|
-
- [x] Click margin note → scroll to highlighted text
|
|
71
|
-
- [x] Mermaid diagram rendering
|
|
72
|
-
- [x] Layout mode toggle (centered / fullscreen)
|
|
73
|
-
- [x] Floating TOC in fullscreen mode
|
|
74
|
-
- [x] Settings modal with font preference (serif / sans-serif)
|
|
75
|
-
- [x] Per-document settings storage (`~/.readit/settings/`)
|
|
76
|
-
- [ ] Better mobile support
|
|
77
|
-
|
|
78
|
-
## v0.5.0 - Comment Categories
|
|
79
|
-
|
|
80
|
-
- [ ] Category selection (TODO, Question, Suggestion, Fix)
|
|
81
|
-
- [ ] Color-coded categories
|
|
82
|
-
- [ ] Filter by category
|
|
83
|
-
- [ ] Category in export format
|
|
84
|
-
|
|
85
|
-
## v0.6.0 - Multi-file Support (Partial ✅)
|
|
86
|
-
|
|
87
|
-
- [ ] Glob pattern support (`readit docs/*.md`)
|
|
88
|
-
- [x] Multiple file arguments (`readit file1.md file2.md`)
|
|
89
|
-
- [x] Directory scanning (`readit <dir>`)
|
|
90
|
-
- [x] `readit open <files...>` to add files to running server
|
|
91
|
-
- [x] File tab navigation (TabBar.svelte)
|
|
92
|
-
- [x] Per-file comment storage
|
|
93
|
-
- [ ] Bulk export across files
|
|
94
|
-
|
|
95
|
-
## v0.7.0 - Shell Integration & Editor Plugins ✅
|
|
96
|
-
|
|
97
|
-
- [x] Zsh integration with `@` file autocomplete (fzf-powered, Forge Code-style)
|
|
98
|
-
- [x] `@<TAB>` launches fzf picker for markdown files
|
|
99
|
-
- [x] `@partial<TAB>` pre-filters fzf query
|
|
100
|
-
- [x] Syntax highlighting for `@*.md` patterns in command line
|
|
101
|
-
- [x] Standard compdef completion for subcommands and options
|
|
102
|
-
- [x] Bash and Fish completion scripts via `readit completion`
|
|
103
|
-
- [x] Neovim plugin (`nvim-readit/`)
|
|
104
|
-
- [x] Server lifecycle management (start/stop/discover)
|
|
105
|
-
- [x] `:ReaditOpen`, `:ReaditStop`, `:ReaditStatus`, `:ReaditReload`, `:ReaditList` commands
|
|
106
|
-
- [x] Configurable keymaps (`<leader>r` prefix by default)
|
|
107
|
-
- [x] `:checkhealth readit` support
|
|
108
|
-
- [x] Auto-cleanup on VimLeavePre
|
|
109
|
-
- [x] Enhanced live reload on file changes
|
|
110
|
-
- [x] Handle `rename` events (Vim/Neovim write-to-temp-then-rename saves)
|
|
111
|
-
- [x] Auto re-establish watcher after rename with retry logic
|
|
112
|
-
- [x] SSE auto-reconnect with exponential backoff
|
|
113
|
-
- [x] Parallel document + comments fetch on reload
|
|
114
|
-
|
|
115
|
-
## Future Considerations
|
|
116
|
-
|
|
117
|
-
- Sticky notes (ペタペタ) - add notes not tied to text selection
|
|
118
|
-
- Collaborative mode (WebSocket sync)
|
|
119
|
-
- GitHub integration (create issues from comments)
|
|
120
|
-
- VS Code extension
|
|
121
|
-
- PDF export with highlights and comments - export the current document view as a PDF with all highlights and margin notes visible, preserving the visual review state for sharing or archiving
|