Releases: battlecook/omni-viewer-obsidian
Releases · battlecook/omni-viewer-obsidian
Release list
0.7.0
Added
- Added a TFLite/LiteRT viewer for
.tfliteand.liteon desktop and mobile, backed byomni-viewer-core: graph topology with node inspection and searchable operator/tensor/input-output tables. The FlatBuffer metadata is inspected without decoding model weights. - Content-signature rerouting now recognises the
TFL3FlatBuffer identifier, so TFLite models open in the TFLite viewer regardless of their extension.
Changed
- Updated
omni-viewer-corefrom 0.13.0 to 0.15.0, pinned to an exact version.
0.6.0
Added
- Added an ONNX viewer for
.onnxon desktop and mobile, backed byomni-viewer-core: connected computation graph with node inspection, searchable node/tensor/input-output tables, model metadata and opsets, and JSON copy. Weight payloads are not decoded. - Added a GGUF viewer for
.ggufon desktop and mobile: summary cards, searchable tensor and metadata tables, structure preview, and JSON copy. Tensor payload bytes are never read.
Changed
- Updated
omni-viewer-corefrom 0.12.1 to 0.13.0.
Performance
- GGUF models are inspected through filesystem range reads on desktop, so only the header, metadata, and tensor index are loaded. A 256 MiB model reads 2 MB (0.75%). Mobile has no filesystem access and falls back to a whole-file read, limited to 512 MB.
Build
- Resolved
@huggingface/ggufto its browser build inesbuild.config.mjs. Itsexportsentry is the Node build, which importsfs/promisesopen/statthrough a local-file helper the GGUF adapter never uses, since the adapter always supplies its own rangefetch. - Declared
@huggingface/ggufas a direct dependency because the build now resolves it by path.
0.5.2
Changed
- Moved the Word viewer's core styling into the release
styles.cssand mounted the viewer in scoped light DOM so Obsidian can load its CSS through the supported plugin stylesheet path. - Reworked Word printing to use a temporary top-level print root and static
@media printrules while preserving document images, page layout, and zoom reset behavior.
Fixed
- Resolved the remaining Obsidian Community plugin review error caused by creating and attaching a runtime
<style>element for the Word print view.
Build
- Extended the deterministic stylesheet build step to scope and bundle
omni-viewer-coreWord CSS without leaking its standalone page selectors into Obsidian.
0.4.0
Changed
- Migrated the Parquet, TOML, Mermaid, and PlantUML viewers to the shared
omni-viewer-corerendering engine, mounting the core viewer directly into the view instead of the template path (continuing the CSV/PDF/PowerPoint/archive migrations). - Parquet: large files again load lazily — the viewer now reads through random-access range reads on desktop, materializing only the footer and the requested row-group pages instead of loading the whole file into memory, so files above 50 MB no longer preload every row. Small files behave as before, and the core viewer adds table/JSON export to a file through the system save dialog.
- TOML: the core viewer replaces the read-only tree with an editable source panel that writes changes back to the file, alongside tree/flatten/JSON panels, scoped search, expand/collapse, and copy path/value/JSON — on both desktop and mobile.
- Mermaid and PlantUML: the core viewer adds a live source editor with write-back to the file, theme-aware rendering, zoom, and copy/save of the diagram. The mermaid and PlantUML renderers are bundled explicitly (added as direct
mermaidandpuml-canvas-jsdependencies) so esbuild can follow them into the single-file plugin bundle. - PowerPoint: embedded EMF/WMF metafile images are now rasterized to PNG and rendered inline (desktop and mobile) instead of falling back to a placeholder.
- Updated
omni-viewer-coreto 0.9.0.
Removed
- Deleted the viewer code the core migrations replaced: the Parquet, TOML, Mermaid, and PlantUML templates, the standalone TOML parser, the filesystem Parquet reader, and the
hyparquet-nodetype shim.
Build
- Attest
main.jsandstyles.cssin the release workflow to publish build provenance.
0.3.2
Fixed
- Bundled JSZip from its source entry so the existing safe Promise and
setImmediateshims replace legacy browser fallbacks that dynamically created<script>elements and failed Obsidian's release security scan.
0.3.1
Changed
- Updated
omni-viewer-coreto 0.7.0. - Moved mobile viewer overrides into the plugin's
styles.cssinstead of injecting a runtime<style>element.
Fixed
- Replaced direct Word print-view style assignments with CSS classes to comply with Obsidian's plugin review rules.
0.3.0
Added
- Added a Safetensors viewer backed by
omni-viewer-core, including tensor/metadata tables, search, structure preview, and JSON copy. - Added vault-backed mobile viewers, save-as, PDF file selection, and ZIP extraction.
Changed
- Updated
omni-viewer-coreto 0.6.0. - Added a shared desktop/mobile bundle with browser-compatible Node shims.
- Replaced the share service's Node HTTPS transport with Obsidian's cross-platform request API.
- Added responsive and touch-oriented viewer overrides for Android and iOS.
Fixed
- Prevented mobile image exports from silently overwriting existing vault files and rejected folder paths in export names.
- Connected mobile audio download and region-export actions to vault-backed save-as handling.
0.2.0
Added
- Archive: inline preview for audio, video, and image entries. Previously only plain-text entries could be previewed and every other entry was reported as unsupported.
- Archive: save an individual entry to disk from the viewer.
Changed
- Migrated the PowerPoint and archive viewers to the shared
omni-viewer-corerendering engine, mounting the core viewer directly into the view instead of the iframe/template path (continuing the CSV/PDF migration from 0.1.2). - Archive: listing, entry preview, and save all stream through a path-based decoder, so multi-GB archives are inspected and extracted without loading the archive into memory.
- PowerPoint: parsing and rendering now come from the core; the LibreOffice (
soffice) PDF fallback for decks with no renderable slides is preserved, and its export is save-only so it can no longer overwrite the source.ppt/.pptxwith PDF bytes. - Loaded PDF.js through a static import shimmed at build time instead of a dynamic
import()of a blob URL. - Updated
omni-viewer-coreto 0.4.
Removed
- Deleted the viewer code the core migrations replaced: the archive/CSV/PDF/PowerPoint templates, the vendored PPTX and legacy-PPT binary parsers, the eager archive reader, and the unused HWP document parser (HWP rendering goes through the bundled
rhwpWebAssembly module). About 17k lines in total, shrinkingmain.js.
Fixed
- Archive:
rar/7z/dmg/tararchives no longer fail to open when Obsidian is launched outside a login shell (for example from the macOS Dock), where the inheritedPATHomits Homebrew/MacPorts and the7z/tarbinaries could not be found. - Themed the toolbars of the office-family and archive viewers, which previously kept the core's hardcoded dark fallback colors instead of the Obsidian theme.
0.1.2
Changed
- Migrated the CSV and PDF viewers to the shared
omni-viewer-corerendering engine, mounting the core viewer directly into the view instead of the iframe/template path. - CSV: editing now preserves scroll position, sort order, and selection when you save; export uses the system save dialog, matching the PDF viewer and the rest of the plugin.
- PDF: adding annotations and saving no longer resets the current page, zoom, or scroll.
- Moved Share and Open shared link from in-view buttons to the viewer toolbar actions.
- Updated
xlsxto the official SheetJS distribution (npm publishing stopped at 0.18.5).
0.1.1
Changed
- Removed
eval/new Functionusage to comply with Obsidian plugin guidelines: replaced thesetimmediate/liedependencies with safe shims and switched the HWP viewer to a readablehwpViewerMain.js, deleting the minified webpack bundle. - Replaced
anywith explicit types/unknownplus runtime type guards across platform, audio engine, GIS, tabular, and message handling code. - Used Obsidian's
setCssStyles()instead of directel.styleassignment. - Removed
!importantand dead VSCode-only CSS variables from viewer templates. - Used Node's
module.builtinModulesinstead of thebuiltin-modulespackage. - Gzip-compressed bundled assets to reduce
main.jssize. - Removed debug
console.logstatements while keeping error/warning handlers. - Cleaned up the command name and manifest/package description.
Docs
- Added a privacy policy link for the share feature.