No description
Find a file
kvasonaft d6d8a10c81 Address community catalog lint findings
- Type loadData() result as Partial<Fb2Data> instead of implicit any
- Schedule requestAnimationFrame on the view's owning window
  (contentEl.win) so timing works in popout windows
- Drop !important from theme backgrounds; selector specificity
  already wins over Obsidian's .view-content rule
- Adopt the declarative settings API (getSettingDefinitions +
  getControlValue/setControlValue) so settings appear in the settings
  search on Obsidian 1.13+; the imperative display() stays as a
  fallback for 1.7.2-1.12

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 00:31:14 +03:00
src Address community catalog lint findings 2026-07-17 00:31:14 +03:00
.gitignore Simplify repo for study: untrack build artifacts, refactor rendering into tag maps 2026-07-03 22:00:41 +03:00
LICENSE adding MIT license 2026-07-16 14:20:27 +03:00
manifest.json Raise minAppVersion to 1.7.2 for async revealLeaf 2026-07-17 00:22:53 +03:00
package-lock.json Rename plugin id to fiction-book-reader 2026-07-17 00:01:48 +03:00
package.json Reword description to satisfy catalog submission rules 2026-07-17 00:17:45 +03:00
README.md Rename plugin id to fiction-book-reader 2026-07-17 00:01:48 +03:00
styles.css Address community catalog lint findings 2026-07-17 00:31:14 +03:00
tsconfig.json initial commit 2026-07-02 22:31:02 +03:00
versions.json Prepare plugin for Obsidian community release 2026-07-16 23:43:25 +03:00

FB2 Reader

An Obsidian plugin for reading FictionBook (.fb2) files directly in your vault. Works on desktop and mobile.

Features

  • Reader view. Open a .fb2 file and it renders as a formatted book: cover, title page, authors, annotation, chapters, poems, quotes, footnotes, images, and tables.
  • Table of contents. A side panel lists the chapters of the active book; click a chapter to scroll to it.
  • Reading position. The plugin remembers where you stopped in each book (up to 300 books) and takes you back there when you reopen it.
  • Appearance settings. Theme (light / dark / sepia or follow Obsidian), font family, font size, line height, text color, and optional drop caps.
  • Encoding detection. Older FB2 books in windows-1251 and other legacy encodings are decoded automatically.

Usage

Put a .fb2 file anywhere in your vault and click it — it opens in the reader. Use the Open table of contents command (or switch to a reader tab) to show the chapter panel.

Note: zipped books (.fb2.zip) are not supported — unpack them to plain .fb2 first. Obsidian identifies files by their final extension only, so claiming .zip would hijack every archive in the vault.

Installation

From community plugins

Search for FB2 Reader in Settings → Community plugins (once the plugin is accepted into the catalog).

Manual

  1. Download main.js, manifest.json, and styles.css from the latest release.
  2. Copy them into <your vault>/.obsidian/plugins/fiction-book-reader/.
  3. Reload Obsidian and enable FB2 Reader in Settings → Community plugins.

Development

npm install
npm run dev    # watch mode, rebuilds main.js on change
npm run build  # typecheck + production build

The entire plugin lives in src/main.ts; esbuild bundles it into main.js.

License

MIT