Book Simulator
pendingby tu2-atmanand and AE-SAY-WAY
Simulates a book view by combining multiple notes from the folder hierarchy into a continuous reading experience. View, edit and export the virtual view as note or PDF.
Book Simulator
A plugin for Obsidian (https://obsidian.md) that simulates a book view by combining multiple notes from a folder into a continuous reading experience. It uses the hierarchy of the folder to structure the chapters and sections of the book.
Features
- Vault Explorer: Browse your vault's folder structure in a dedicated sidebar (20% of the view)
- Book Renderer: View combined notes from a selected folder as a continuous book (80% of the view)
- Hierarchical Structure: Notes are organized hierarchically with proper heading adjustments
- Markdown Rendering: Uses Obsidian's native MarkdownRenderer for proper content display
- Easy Access: Open via ribbon icon, command palette, or file menu
How to Use
- Open Book Simulator: Click the book icon in the left ribbon, or use the command palette (Ctrl/Cmd+P) and search for "Open Book Simulator"
- Select a Folder: Click on any folder in the explorer panel on the left
- Read: The right panel will display all notes from the selected folder (and its subfolders) combined into a single continuous book view
Installation
Using BRAT (Recommended for testing)
- Follow the steps mentioned here : https://github.com/tu2-atmanand/obsidian-book-simulator/releases/tag/0.1.1
From Obsidian Community Plugins (once released)
- Open Settings → Community plugins
- Search for "Book Simulator"
- Click Install, then Enable
Manual Installation
- Download
main.js,styles.css, andmanifest.jsonfrom the latest release - Create a folder named
obsidian-book-simulatorin your vault's.obsidian/plugins/directory - Copy the downloaded files into this folder
- Reload Obsidian
- Enable the plugin in Settings → Community plugins
Development
This project uses TypeScript and esbuild for bundling.
Setup
npm install
Development Build (with watch mode)
npm run dev
Production Build
npm run build
Project Structure
src/
main.ts # Plugin entry point
types.ts # TypeScript interfaces
views/
bookSimulatorView.ts # Main view implementation
components/
virtualFileExplorer.ts # File explorer component
bookRenderer.ts # Book rendering component
utils/
fileTreeUtils.ts # File tree building utilities
hierarchyGenerator.ts # Markdown hierarchy generation
How It Works
- The plugin creates a custom ItemView that splits into two panels
- The left panel (20%) shows a virtual file explorer of your vault
- When you select a folder, the right panel (80%) generates a combined markdown document
- All markdown files in the folder (and subfolders) are combined with proper heading adjustments
- The combined content is rendered using Obsidian's MarkdownRenderer API
License
GPL v3
Support
If you find this plugin helpful, consider supporting its development by making a donation!
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.