Releases: Compromisee/Mangasurf
Releases · Compromisee/Mangasurf
Release list
v1.8.0
[1.8.0] — Mangasurf - Arctica v1.8.0
OPDS for OPDS reader apps, as a one-tap link
- The OPDS catalog URL is now both copy-able and clickable. A new
"Open in Reader App" link embeds the access token as basic-auth credentials
(http://reader:<token>@<host>:8578/opds), so Thorium, Readest, Panels,
Aldiko and KyBook open the catalog on the first tap with no prompt. - Tailscale gets its own one-tap link too, for readers on your tailnet.
Read-state chapter list on the manga page
- Fully-read chapters are highlighted amber-yellow.
- Chapters that are fully-read and downloaded are highlighted blue.
- Partially-read chapters render as an in-row horizontal progress bar filled
to the read fraction. - Read state is supplied per chapter by
get_manga(chapter_state), keyed by
chapter URL / name / 1-based index, combining tracking (read/unread) and the
reader's saved position fraction.
Read button + reader
- The prominent Read button now defaults to the first chapter when
reading online, instead of the last. - The reader's Chapters tab now lists every online chapter of the series
(with read-state) alongside local sibling folders/archives, and lets you jump
between chapters without leaving the reader. - Finished online chapters are auto-marked read (past ~98% or when the reader
reports the end), so the highlights stay accurate.
Branding & website
- Release branded "Mangasurf - Arctica", version bumped to 1.8.0.
- Website rebuilt in a retro-cool, rustic, beautiful theme.
- Roadmap updated with the v1.8.0 (Arctica) milestones.
[1.8.0] — Chapter-list polish, fresh-open fix & reader crash safety
Chapter-list polish
- Every chapter row is now its own progress bar: a solid translucent fill
(no gradient) up to the read fraction, painted underneath the row's
text and buttons so everything stays readable. Unread = 0%, partial = read
fraction (dashed border), fully-read = 100% amber wash, read+downloaded =
100% blue wash. - Chapter rows are centered with more padding, and a new chapter-row size
slider in Settings (--ch-row) drives row height and the Read Online
button, so the list scales as one.
Fresh chapter opens on page 1 (was the last page)
- Picking a chapter from the chapter list no longer inherits the previous
chapter's scroll offset and lands on the last page.manga-view.open()
now resets scroll to 0 (suppressing the scroll events that used to derive the
page from leftover scrollTop), andopenPath(..., { resume: false })skips
position restore for chapter-list navigation. - Reopening the same book/chapter from the library or Continue-Reading still
resumes where you left off.
"Read" only when fully read
- The Read pill (manga page and in-reader chapter list) now appears only
for chapters that are genuinely finished — in the tracker's read set
(mark_readfires at the end) or whose position has reached the finish line.
A chapter merely partway through its progress shows the progress fill, never
a false Read tag.
Crash handlers & safety guards
- Global
errorandunhandledrejectionhandlers now surface and de-duplicate
any uncaught fault (toast +window.__readerCrashrecord) instead of leaving
a frozen, silent UI. openPathis wrapped so a throw in the open pipeline is reported and
contained; malformed or empty chapter payloads no-op safely.
Tests
- Playwright reader-shell tests added: fresh-open-on-page-1, resume-on-reopen,
partial chapter gets no Read pill (manga page + reader list), fully-read gets
the pill, rejected promise caught & reported, backend failure degrades to a
toast, post-call throw caught and reported, and a malformed chapter is
survived.
v1.7.3
[1.7.3] — Mangasurf v1.7.3: Per-Chapter Downloaded Counts, Four New Verified Sources, Docs Hub & UI Polish
Search results now show the real downloaded chapter count
- Fixed the "1 chapter downloaded" badge. Search result cards used to count
files, so a single bundled CBZ (which holds many chapters) showed "1
Downloaded" even though the manga detail view correctly showed the full
count. The card badge is now corrected against the same authoritative
downloaded_statusthe detail view uses (read from each series'
manga.json), andgetDownloadedMetaprefers the larger of file count /
chapter count. The card and detail view always agree now.
New sources (38 total)
- Added
manhwa68(Madara engine) — verified search / browse / genres /
chapters / CDN pages. - Added
manhwabuddy— verified search / series / chapters / page CDN. - Added
hentai18— verified NSFW search / series / chapters / page CDN. - Added
comicland— verified REST-API source (search / browse / detail /
pages_by_index), Referer-protected. - Added
yurivan— best-effort; Yurivan gates every page behind a
client-side age gate, so this source degrades gracefully and is marked
unverified. Prefer the other adult sources. - Removed the fake
kingsandkamiyasources (already removed in 1.7.2).
curl_cffi HTTP layer (carried forward and hardened)
- 100% curl_cffi;
requestsfully removed.mangasurf/http.pyis the single
network layer with browser TLS/JA3+JA4 impersonation and a fast async
batch engine (fetch_many/download_many) used by the downloader.
Documentation Hub & website
- Added a Documentation hub to the landing page linking to self-contained
doc pages: getting-started, sources, http-engine, downloading, roadmap,
troubleshooting. - Regenerated the README source table and landing-page source directory from
the live registry (rows can no longer drift). - Updated CHANGELOG, ROADMAP, TODO and FEATURES.
UI & fixes
- Targeted padding/responsiveness polish in the reader shell and source grid.
- Custom horizontal + vertical scrollbars site-wide — a thin accent-gradient
thumb on a dark track (Chromium/Safari::-webkit-scrollbar+ Firefox
scrollbar-width), so wide code blocks, cards and tables scroll cleanly. - Expandable docs sidebar tree — every documentation page now carries a
sticky, collapsible tree sidebar (like most docs sites) listing all six doc
pages and their on-page sections. The current page's branch is expanded and
highlighted; the others deep-link into their anchors. On narrow screens the
tree collapses behind a "Documentation contents" drawer toggle. - Version bumped to 1.7.3;
requires-python >=3.11.
Scraper fixes (this batch)
- Fixed
mangadotnet— the/api/searchand/api/mangaendpoints return
amanga_listarray (notdata/results), which the old parser ignored, so
search/browse always returned 0 results. Now readsmanga_list. - Fixed
witchscans(witchtoons) result titles — the search page is a
Next.js SPA returning HTML (never JSON), and the fallback parser read the
whole card's text, so every result was titled the type badge ("MANHWA") or a
chapter label. Titles now come from the coverimg[alt](with anchor/@title
fallback), chapter links are skipped, and Next.js/_next/imageproxy cover
URLs are decoded to the real CDN URL. - Fixed
hentai18result titles — the series cards carry absolute URLs
(https://hentai18.net/read-hentai/<slug>) that a relative-path-only regex
rejected, so only the sidebar "Oneshot"/"Chapter N" rows survived. The path
regex now accepts both, and titles come from the coverimg[alt]. - Fixed missing covers on
manhwa68,hentai18,yurivan— their cover
CDNs 403 a cross-origin browser request (a wrong Referer), so the thumbnails
never rendered. All three hosts are now routed through theproxy_cover
path, which fetches with the source's own Referer. - Fixed one-page "No More Results" bugs — several sources ignored the
pageargument and always returned the first page:comicland— API pages on a row index, not?page=; paginates by
offsetnow, and the static/comics/popularlist falls back to the
paginated/comicsfeed.mangatitan— pages ≥2 use a blog-archive layout (.entry-archive)
instead of the.series-cardgrid; both are parsed now, and per-chapter
posts are deduped to unique series.yurivan— browse/search sliced[:limit]so every page repeated page 1;
now slices by page (and search pages by offset).mangak— search already paginated; trending browse is a static top-50
list by design (no server paging).
- Cloudflare-only sites (
kagane,comix) remain behind a real browser
JS challenge that TLS impersonation alone cannot pass — they require the
FlareSolverr fallback.mangadotnetandnatomanganow work regardless;
hentaiakane.comwas taken over by an unrelated blog, so thehentaiakane
source has been replaced bymewhen18(https://mewhen18.com), the same
catalogue re-hosted — same theme, sameimg.hentai1.ioimage CDN.
Mangasurf V1.7.0
Mangasurf V1.7.0 — Desktop Manga Reader & Downloader
High-performance Python manga ecosystem, omnibar discovery engine, and multi-threaded downloader supporting 32 registered sources.
What's Changed
- 32 Registered Sources: High-speed scrapers across MangaDex, Chikari, KuraManga, KuraHentai, Hiperdex, MangaK, etc.
- Curated List Bulk Downloading: One-click download for lists (e.g. Chikari list 461).
- 3D Depth Library Carousel: Smooth 7-perspective cards with luminous glow, reading progress, and shelf pills.
- Offline Database Integration: Instant omnibar suggestions and offline SFW/Hentai indexing.
- LAN Web Reader & OPDS 1.2 Hub: Native phone reader server (:8577) & OPDS catalog (:8578) with live device telemetry.
- Zero-Deletion Root Safety: Protected master root directories (~/Manga, /media, output_dir).
- Custom Vector Icon: New dynamic MangaSurf wave crest & anime speed prism icon.
Available Downloads
Warning
MacOS X86 is NOT Supported as of yet. We are working on implementing it in the near future
| Platform | Architecture | Download Package | Standalone Executable |
|---|---|---|---|
| Windows | x64 (64-bit) | mangasurf-V1.7.0-windows-x64.zip |
mangasurf-windows-x64.exe |
| Linux | x86_64 (glibc 2.35+) | mangasurf-V1.7.0-linux-x86_64.tar.gz |
mangasurf-linux-x86_64 |
| macOS | Apple Silicon (M1/M2/M3/M4) | mangasurf-V1.7.0-macos-arm64.zip |
mangasurf-macos-arm64 |
Quick Start (No Python Required)
- Download the archive for your operating system above.
- Extract and run
mangasurf(or double-clickmangasurf.exeon Windows). - Enjoy reading with the 3D Depth Carousel, Foliate webtoon viewer, LAN Phone Server (:8577), or OPDS 1.2 Catalog (:8578)!
# CLI search & download
./mangasurf search "solo leveling"
./mangasurf "https://chikari.moe/lists/461-my-manhwa-list"Mangasurf Bleeding-Edge Nightly Build
🌙 Mangasurf Nightly Build
- Build Commit:
b3f4fb7ccf753ff9ffc03a74b88336378a4ed2af - Build Timestamp:
Latest
⚠️ Nightly builds contain bleeding-edge changes and may be unstable. For daily use, prefer official tagged releases.
📦 Binaries
mangasurf-nightly-windows-x64.zipmangasurf-nightly-linux-x86_64.tar.gzmangasurf-nightly-macos-arm64.zip