Nintendo 3DS homebrew ebook and manga reader based on the original Nintendo DS project dslibris.
- Reads ebooks and manga on Nintendo 3DS hardware and Azahar.
- Library browser with grid and list views, cover thumbnails, metadata titles, and touch navigation.
- Six reading themes with matching splash screens and reader gradients.
- Supported formats:
EPUB,FB2,TXT,RTF,ODT,MOBI,PDF,CBZandXPS. EPUBreflow with TOC support, bookmarks,go to page, cached pagination, and broad inline/block formatting support.- Fixed-layout viewer for manga and document formats (
CBZ,PDFandXPS) with zoom, pan, outline navigation, and full-page preview. - Bundled fallback fonts for broader language coverage (Latin, Cyrillic, Greek, CJK, Arabic, Hebrew, Thai, and more).
![]() |
![]() |
|
|
Recommended install (.cia via Universal-Updater):
- Install
3dslibrisfrom Universal-Updater. - Launch it once so
sdmc:/3ds/3dslibris/is created if needed. - Copy your books to
sdmc:/3ds/3dslibris/book/. - Launch the installed title.
Manual install (.3dsx):
- Download
3dslibris-sdmc.zipand3dslibris.3dsxfrom GitHub Releases. - Extract it to the root of the SD card so it expands into
sdmc:/. - Copy
3dslibris.3dsxtosdmc:/3ds/3dslibris/3dslibris.3dsx. - Copy your books to
sdmc:/3ds/3dslibris/book/. - Launch
sdmc:/3ds/3dslibris/3dslibris.3dsxfrom Homebrew Launcher.
Manual install (.cia):
- Install
3dslibris.cia. - Launch it once so
sdmc:/3ds/3dslibris/is created if needed. - Copy your books to
sdmc:/3ds/3dslibris/book/. - Launch the installed title.
Notes:
- The
.ciaincludes defaultfont/andresources/assets inRomFS. - Books are read from
sdmc:/3ds/3dslibris/book/and optionallyromfs:/3ds/3dslibris/book/. - Runtime data can also be installed under
sdmc:/config/3dslibris/(for examplebook/,font/,resources/, cache, prefs, and log files). - If the same filename exists in both places, the SD version wins.
- Releases also provide
3dslibris-debug.3dsxand3dslibris-debug.cia, which enable verbose logging tosdmc:/3ds/3dslibris/3dslibris.log.
Library:
D-Pad: move selectionA: open selected bookL/R: previous or next library pageTouch: select and open booksY/Select: openGENERALsettings
Standard reading:
A/B/L/R: turn pagesZL/ZR(New 3DS): previous or next pageD-Pad Left/D-Pad Right: jump between bookmarksY: toggle bookmark; holdYon a page with inline links to enter link-focus mode, then D-Pad to move andAto followX: change background colorSELECT: openBOOKsettingsSTART: return to library
Fixed-layout documents (PDF / CBZ / XPS):
A: zoom inB: zoom outLeft,L,ZR/Right,R,ZL: previous or next pageUp/Down: next or previous chapter when available, otherwise page navigationTouch/Circle Pad/C-Stick: move the viewport on the page previewSELECT: openBOOKsettingsSTART: return to library
Strong support:
EPUB: EPUB2 and EPUB3 reflow, NAV and NCX TOC support, cached pagination, bookmarks, configurable fonts, and broad inline/block formatting support.
Good support:
FB2TXTRTFODT
Experimental or best-effort:
MOBI: can be slow on first open, TOC quality depends on file structure, and some files may fall back to safer but more limited parsing.PDF: viewer mode with zoomed reading area and full-page preview.CBZ: viewer mode for manga and image-based books.XPS: viewer mode with the same fixed-layout reader controls.
- No DRM support.
- EPUB is a reflow renderer, not a full browser engine. Complex CSS, JavaScript, multi-column layouts, and wide tables are simplified.
- EPUB tables are converted into text-oriented blocks for readability on 3DS screens.
- SVG support in EPUB is limited to common wrappers that reference supported raster images.
- Some malformed EPUB anchors and MOBI tables of contents can produce approximate navigation.
- Large or malformed MOBI files may open slowly or lose some rich formatting in safer fallback paths.
- After changing layout-related settings such as font size, spacing, orientation, or some format-specific options, reopening the current book may be necessary.
Docker build flow:
docker build -f docker/Dockerfile.cia -t 3dslibris-build .
docker run --rm \
-v "$(pwd):/project" -w /project \
-e DEVKITPRO=/opt/devkitpro \
-e DEVKITARM=/opt/devkitpro/devkitARM \
3dslibris-build \
sh -lc 'make clean && make -j2 && make zip-sdmc && make debug-3dsx && make cia && make source-release'Expected outputs:
3dslibris.cia3dslibris-debug.cia3dslibris.3dsx3dslibris-debug.3dsxdist/3dslibris-source.tar.gz
- CONTRIBUTING.md
- THIRD_PARTY_NOTICES.md
- docs/PDF_SOURCE_RELEASE.md - source release and rebuild notes for distributed binaries
This repository contains code under multiple licenses, but the distributed application is effectively governed by GNU AGPL v3 or later because it links against MuPDF.
- The inherited and base
3dslibriscode remains under GNU GPL v2 or later. - MuPDF is included under GNU AGPL v3 or later.
- When distributed together as the
3dslibrisapplication, the combined work must be treated as AGPL v3 or later.
See:
- LICENSE
- LICENSES/GPL-2.0-or-later.txt
- LICENSES/AGPL-3.0-or-later.txt
- THIRD_PARTY_NOTICES.md
- docs/PDF_SOURCE_RELEASE.md
- Original
dslibris: Ray Haleblian - 3DS port and maintenance: Rigle


