# Office Suite for Obsidian

Obsidian Version Release Version Community Plugins TypeScript License: MIT PRs Welcome

Buy Me A Coffee

--- **Office Suite** is a powerful, all-in-one productivity plugin for [Obsidian](https://obsidian.md) that lets you view and edit Microsoft Word (`.docx`), Microsoft Excel (`.xlsx`), and tabular data files (`.csv`, `.tsv`) **natively inside your Obsidian interface**. No external applications, no converting your files to Markdown, and no loss of formatting. Edit your documents and spreadsheets side-by-side with your knowledge vault, with full autosave round-tripped directly back to the original binary files.

Office Suite Word Editor Demo

--- ## Key Highlights - **Native Word (.docx) Editor**: Full WYSIWYG rich-text editing with true OOXML lossless round-tripping. - **Native Spreadsheet (.xlsx, .csv, .tsv) Editor**: Interactive multi-sheet grid interface with formula engine and number formatting. - **Native PDF (.pdf) Editor & Annotator**: Cross-compatible ISO 32000-1 annotations (Sticky Notes, Highlights, Ink drawings, Text boxes, Shapes), Acrobat-like page operations, citations, and vault note linking. - **Adaptive Theme Support**: Toggle between Obsidian Dark Paper mode and true White Paper mode for optimal readability. - **Instant Debounced Autosave**: Changes write straight to your vault files on disk without interrupting your writing flow. - **100% Local & Privacy-First**: Everything runs locally inside your Obsidian workspace. No cloud services or external dependencies required. --- ## Comprehensive Feature Matrix ### 1. Word Document Editor (.docx) Edit standard `.docx` files generated by Microsoft Word, LibreOffice, or Google Docs with true round-trip fidelity.

Word Document Editor (.docx) Preview

| Category | Supported Features | | :--- | :--- | | **Typography & Fonts** | Custom font families (*Calibri, Arial, Times New Roman, Georgia, Courier New, Verdana, Segoe UI, Trebuchet MS, Tahoma*), font sizes (*8pt – 72pt*), Clear Formatting | | **Rich Text Styling** | **Bold**, *Italic*, Underline, ~~Strikethrough~~, Subscript (x₂), Superscript (x²), `Inline Code`, Blockquotes | | **Colors** | Text color picker with custom HEX selector, Background highlight color picker | | **Headings & Structure** | Full heading hierarchy (**H1 – H6**) mapped 1:1 to Word styles, Paragraphs, Horizontal Dividers, Page Breaks (`Ctrl+Enter`) | | **Paragraph & Alignment** | Left, Center, Right, and Justified alignment; customizable line spacing (*1.0, 1.15, 1.5, 2.0*); Indent & Outdent controls | | **Lists** | Bulleted lists, Numbered / Ordered lists, Nested list indentation and lift controls | | **Tables** | Insert custom tables, Add Row Above / Below, Add Column Left / Right, Delete Row / Column / Table, Custom Cell Shading (Blue, Gray, Yellow, Green, Clear) | | **Images & Media** | Embedded document images, interactive resize handles with aspect-ratio locking, alignment presets (Left, Center, Right), dimension tooltips | | **Preservation Engine** | Unedited OOXML elements (headers, footers, `styles.xml`, `numbering.xml`, themes, and page margins) are preserved intact | --- ### 2. Spreadsheet & Data Editor (.xlsx, .csv, .tsv) View, edit, calculate, and format Excel spreadsheets and tabular files seamlessly inside your notes.

Spreadsheet & Data Editor (.xlsx) Preview

| Category | Supported Features | | :--- | :--- | | **Grid Engine** | Smooth spreadsheet grid with row/column headers, active cell cursor, range selection, and keyboard navigation | | **Formula Engine** | Real-time calculation with `=SUM()`, `=AVERAGE()`, `=COUNT()`, `=MAX()`, `=MIN()`, `=IF()`, `=CONCAT()`, `=ROUND()`, and algebraic expressions | | **Formula Bar** | Dedicated formula bar showing current cell coordinate (e.g., `A1`, `C12`) with full interactive formula editing | | **Number Formatting** | Quick Currency format (`$`), Percentage format (`%`), Increase decimal places (`.00`), Decrease decimal places (`.0`) | | **Cell Typography** | Font family selector, font size controls, **Bold**, *Italic*, Underline, ~~Strikethrough~~ | | **Cell Styling & Colors**| Text color palette, Cell background / fill color picker, Cell border toggling | | **Cell Alignment** | Left align (text default), Center align, Right align (numeric default) | | **Row & Column Controls**| Insert row below, Insert column right, Delete selected row, Delete selected column | | **Multi-Sheet Workbooks**| Workbook tab bar: switch sheets, create new sheet (`+`), and double-click to rename sheet tabs | | **CSV & TSV Support** | Native parsing and serialization of comma-separated and tab-separated files with full grid capabilities | | **History Stack** | Full undo (`Ctrl+Z`) and redo (`Ctrl+Y`) history stack for spreadsheet edits | --- ### 3. Native PDF Editor & Cross-Compatible Annotator (.pdf) View, annotate, and edit PDF documents natively with standard **ISO 32000-1 compliance** (100% cross-compatible with Adobe Acrobat, Apple Preview, Google Chrome, Microsoft Edge, and Foxit). | Category | Supported Features | | :--- | :--- | | **Sticky Notes** | Place standard Sticky Notes (`/Subtype /Text`) anywhere on pages with author, timestamp, Markdown comment editor, and customizable color | | **Text Highlights** | Highlight text in 8 preset colors encoded with exact `/QuadPoints` for standard Acrobat/Preview rendering | | **Freehand Draw (Ink)** | Smooth vector pen and marker markup (`/Subtype /Ink`) with customizable stroke width, opacity, and eraser tool | | **Text Boxes** | Add editable text blocks directly onto PDF pages (`/Subtype /FreeText`) with custom font size and color | | **Geometric Shapes** | Insert Rectangles, Circles/Ovals, and Lines (`/Subtype /Square`, `/Circle`, `/Line`) with stroke and fill styles | | **Acrobat-like Page Ops** | Rotate pages 90° clockwise/counter-clockwise, duplicate page, insert blank page, and delete page | | **Annotations List Panel** | Collapsible sidebar with real-time text search, type filters (All, Highlights, Notes, Drawings, Shapes), and jump-to-annotation navigation | | **Cite & Academic Citations**| Generate formatted citations in **APA**, **MLA**, **Chicago**, **BibTeX**, and **Obsidian Markdown Blockquotes** from selections or pages | | **Refer & Deep Linking** | Create Obsidian deep links (`[[document.pdf#page=N&annot=ID]]`) that smoothly scroll to the exact page and pulse/highlight the target annotation | | **Link Annotations with Notes**| Connect any PDF annotation to vault Markdown notes (`[[Notes/Summary.md]]`), create new notes with one click, and export all annotations to Markdown | | **High-DPI Rendering** | Crisp Retina/4K canvas rendering via Obsidian's built-in PDF.js engine with interactive selectable text layer | --- ## Installation ### Method 1: Obsidian Community Plugins (Recommended) Once listed in the official Obsidian Community Plugins directory: 1. Open **Obsidian Settings**. 2. Navigate to **Community plugins** and ensure **Restricted mode** is turned off. 3. Click **Browse** and search for **"Office Suite"**. 4. Click **Install**, then click **Enable**. 5. Open any `.docx`, `.xlsx`, `.csv`, or `.tsv` file from your file explorer to start editing! --- ### Method 2: Beta Testing via Obsidian BRAT You can test the latest beta releases using the [Obsidian BRAT](https://github.com/TfTHacker/obsidian42-brat) plugin: 1. Install **BRAT** from Community Plugins. 2. Open **Settings → BRAT → Add Beta plugin**. 3. Paste the repository URL: `https://github.com/vishalrashmika/obsidian-office-suite`. 4. Click **Add Plugin** and enable **Office Suite**. --- ### Method 3: Manual Installation 1. Download `manifest.json`, `main.js`, and `styles.css` from the latest release. 2. Open your Obsidian Vault folder in your file manager. 3. Navigate to `.obsidian/plugins/` (create the folder if it doesn't exist). 4. Create a new folder named `office-suite` (or `docx-editor`). 5. Copy `manifest.json`, `main.js`, and `styles.css` into that folder. 6. In Obsidian, go to **Settings → Community plugins** and enable **Office Suite**. --- ## Quick Start Guide 1. **Opening Files**: Simply click on any `.docx`, `.xlsx`, `.csv`, or `.tsv` file in your Obsidian vault. The file opens immediately in the Office Suite editor. 2. **Switching Paper Themes**: Use the **Paper Theme** toggle in the top-right toolbar to switch between **Light Mode** (white page paper) and **Dark Mode** (dark page paper). 3. **Inserting Tables & Images**: In `.docx` mode, click the **Table** dropdown or **Image** button in the toolbar to add media and structured data. 4. **Entering Formulas**: In `.xlsx` or `.csv` mode, select a cell, type `=` in the Formula Bar, and use standard spreadsheet formulas like `=SUM(A1:A10)` or `=AVERAGE(B1:B5)`. 5. **Autosaving**: All modifications autosave automatically in the background (~800ms debounce). You can verify save status via the "Saved" indicator in the toolbar. --- ## Shortcuts and Hotkeys | Action | Shortcut | | :--- | :--- | | **Undo** | `Ctrl + Z` / `Cmd + Z` | | **Redo** | `Ctrl + Y` / `Cmd + Shift + Z` | | **Bold** | `Ctrl + B` / `Cmd + B` | | **Italic** | `Ctrl + I` / `Cmd + I` | | **Underline** | `Ctrl + U` / `Cmd + U` | | **Edit Cell (Spreadsheet)** | `F2` | | **Page Break (Docx)** | `Ctrl + Enter` / `Cmd + Enter` | --- ## Contributing Contributions, feature requests, and bug reports are welcome! We want to make Office Suite the premier document and data tool for the Obsidian ecosystem. ### How to Contribute 1. **Report a Bug / Request a Feature**: Open an Issue on GitHub with detailed reproduction steps or feature descriptions. 2. **Submit a Pull Request**: - Fork the repository. - Create a feature branch (`git checkout -b feature/amazing-feature`). - Commit your changes (`git commit -m 'Add amazing feature'`). - Push to your branch (`git push origin feature/amazing-feature`). - Open a Pull Request. ### Development Setup ```bash # Clone the repository git clone https://github.com/vishalrashmika/obsidian-office-suite.git cd obsidian-office-suite # Install dependencies npm install # Start development build with watch mode npm run dev # Build production bundle npm run build ``` --- ## Support the Project If you find **Office Suite** valuable for your daily note-taking and workflow, please consider supporting its continuous development:

Buy Me A Coffee

Your support helps cover development tools, test devices, and future feature expansions! Don't forget to star the repository on GitHub! --- ## Author Created by [Vishal Rashmika](https://vishalrashmika.com). --- ## License This project is licensed under the [GPL V3](LICENSE).