Releases: michu5696/overleaf-review
Release list
v0.3.0 — replace Overleaf's git bridge (fetch, upload, push --direct)
overleaf-review can now fully replace Overleaf's Git/GitHub sync — which is what you want, because that sync is what destroys your review layer.
Why
Overleaf's Git integration writes documents by wholesale content replacement. Comments and tracked changes are anchored by character offsets, so a bulk overwrite orphans or displaces them. overleaf-review writes through the real-time OT API instead — incremental ops that Overleaf transforms the review ranges against, so the review layer survives.
Added
fetch [--file <f>] [--dry-run]— write Overleaf's current text down into your local files. Read-only on Overleaf: it cannot disturb a comment or tracked change.upload <path…> [--folder <name>]— upload figures, PDFs, or new files into Overleaf (re-uploading the same name replaces it).push --direct— send plain edits instead of tracked suggestions. Still range-safe (OT transforms existing ranges), and it's what actually replaces the bridge's job.
Recommended setup
Unlink Overleaf's Git/GitHub sync and let overleaf-review be the only bridge: fetch text down, push / push --direct text up, upload figures up. Your Git repo becomes a normal repo with nothing bidirectional that can clobber the review record.
npm install -g overleaf-reviewv0.2.1 — per-message delete
Added
delete-message --message-id <id> [--thread <id>]— delete a single message within a
comment thread (previously only whole-thread deletion viadelete-commentwas possible). If the
thread id is omitted it's found automatically.pullnow lists message ids inreviews.md.
npm install -g overleaf-reviewv0.2.0 — complete review cockpit
A complete review cockpit — overleaf-review now covers everything in Overleaf's review layer, both directions.
Added
reply --thread <id> --message <text>— reply to an existing comment thread.delete-comment --thread <id>— delete a comment thread.accept --change <id> …— accept collaborators' tracked change(s) (doc-scopedchanges/accept).reject --change <id> …— reject collaborators' tracked change(s) via an inverse OT op (reverts the text and drops the change).pullnow lists the thread and change ids in.overleaf/reviews.md, with a one-line cheat-sheet of the commands that act on them.
Full command set
login · link · pull · push · comment · reply · resolve · delete-comment · accept · reject
npm install -g overleaf-reviewv0.1.2 — non-ASCII (UTF-8) fix
Fixed
-
Non-ASCII characters no longer corrupt the socket read or shift OT positions. Overleaf's
socket.io 0.9 transport UTF-8-encodes outgoing payloads at the application layer, so a
character like an em-dash (—) arrived as 3 mojibake chars (â\x80\x94). That inflated its
length and drifted every OT position after it, causingpushto land edits on the wrong
character and Overleaf to reject the batch. The read now reverses that framing (utf8Decode).Verified: an em-dash round-trips as a single character, and a
pushthat inserts one — over a
document already containing other non-ASCII text — reportsverified match: yes.
npm install -g overleaf-reviewv0.1.1 — readable word-level tracked changes
Fixed
pushnow produces readable, word-level tracked changes. Previously it diffed character
by character, so replacing one word became dozens of interleaved single-letter strikethroughs
and insertions — an unreadable "confetti" in Overleaf's review panel. It now diffs at the word
level (diffWordsWithSpace), so edits land as clean whole-word delete/insert pairs while
keeping the OT positions exact.
npm install -g overleaf-reviewv0.1.0 — first release
First public release. 🎉
overleaf-review bridges Overleaf's collaborative review layer — comments and tracked changes — with your local Git workflow, in both directions. It talks to the same real-time and thread endpoints the Overleaf editor uses, since Overleaf's Git bridge drops this data entirely.
Commands
login— validated auth (SSO-friendly--browser), stored outside the repolink— map a repo to an Overleaf projectpull— comments + tracked changes → a Git-friendly sidecarpush— local edits → tracked-change suggestions (multi-file,--dry-run)comment/resolve— create and resolve threads
Install
npm install -g overleaf-reviewUnofficial — not affiliated with or endorsed by Overleaf. Use on your own account and projects.