No description
Find a file
JK 1d1c9d2a4a Refactor type definitions for clarity and consistency
- Updated LeafArgs type definition in declarations.d.ts to use a single union type format.
- Simplified LinkTextSegment type definition in linkTextFragments.ts to a single union type.
- Removed unnecessary tooltip display call in ExportConfigModal class in modal.ts.
2026-07-21 16:45:45 +02:00
.github Updated Naming Convention 2026-06-05 14:50:35 +02:00
__mocks__ feat(equations): add document-level equation prefix via hidden obsitex block 2026-07-20 15:19:24 +02:00
docs feat(equations): add document-level equation prefix via hidden obsitex block 2026-07-20 15:19:24 +02:00
release-artifacts feat(tikz): transition to on-demand lazy asset loading model 2026-06-05 15:27:19 +02:00
src Refactor type definitions for clarity and consistency 2026-07-21 16:45:45 +02:00
test_helpers fix(tikz-editor): resolve statement parsing with embedded semicolons, node math rendering, and multi-selection 2026-07-21 16:19:30 +02:00
tikzjax-assets fix(equations): preserve LaTeX row-break dimensions in sub-equation tagging 2026-07-17 13:06:44 +02:00
.editorconfig initializing 2026-06-04 20:11:56 +02:00
.gitignore updating the plugin 2026-06-04 20:12:07 +02:00
.npmrc initializing 2026-06-04 20:11:56 +02:00
.prettierignore updating the plugin 2026-06-04 20:12:07 +02:00
.prettierrc.json updating the plugin 2026-06-04 20:12:07 +02:00
CONTRIBUTING.md Updated Naming Convention 2026-06-05 14:50:35 +02:00
esbuild.config.mjs fix(equations): preserve LaTeX row-break dimensions in sub-equation tagging 2026-07-17 13:06:44 +02:00
eslint.config.mjs feat(tikz): major rendering, layout, and editor enhancements (#1) 2026-06-06 12:08:11 +02:00
eslint.css.config.mjs setting up prod release 2026-06-04 20:26:28 +02:00
jest.config.js refactor: reorganize src into modular structure and increase test coverage 2026-06-04 20:50:07 +02:00
LICENSE refactor: reorganize src into modular structure and increase test coverage 2026-06-04 20:50:07 +02:00
manifest-beta.json feat(equations): add document-level equation prefix via hidden obsitex block 2026-07-20 15:19:24 +02:00
manifest.json update docs; version bump v0.0.3 2026-06-06 12:16:18 +02:00
mkdocs.yml feat(tikz): major rendering, layout, and editor enhancements (#1) 2026-06-06 12:08:11 +02:00
package-lock.json refactor: reorganize src into modular structure and increase test coverage 2026-06-04 20:50:07 +02:00
package.json Refactor type definitions for clarity and consistency 2026-07-21 16:45:45 +02:00
pnpm-lock.yaml Refactor type definitions for clarity and consistency 2026-07-21 16:45:45 +02:00
pnpm-workspace.yaml updating the plugin 2026-06-04 20:12:07 +02:00
README.md update docs; version bump v0.0.3 2026-06-06 12:16:18 +02:00
requirements.txt updating the plugin 2026-06-04 20:12:07 +02:00
tsconfig.eslint.json updating the plugin 2026-06-04 20:12:07 +02:00
tsconfig.json feat(settings): redesign settings tab with categories, search, i18n, and what's new modal 2026-06-05 14:29:35 +02:00
version-bump.mjs updating the plugin 2026-06-04 20:12:07 +02:00
versions.json feat(tikz): enhance SVG parsing and element deletion; add duplication functionality 2026-06-14 00:39:18 +02:00

Downloads Version

TeXcore for Obsidian

A minimalistic, high-performance LaTeX assistant for automatic equation numbering, referencing, and TikZ rendering with basic GUI editing in Obsidian.md to transforms your vault into a rich ecosystem for scientific drafting and study.

Prisma Calendar Preview

📚 Full Documentation & Guides


Key Features

  • Equation Numbering & referencing: Auto-numbers equations with custom IDs and provides search-based fuzzy autocomplete suggestion dropdowns via \eqref.
  • On-Demand TikZ Diagrams: Compiles TikZ code blocks asynchronously in a Web Worker, lazy-downloading and caching assets to remain lightweight and bloat-free.
  • Advanced PDF Export: Highly configurable single-note or batch folder PDF exports featuring customizable headers, footers, page sizes, and style overrides.

Behind the Scenes: The WebAssembly Engine

To render TikZ diagrams without forcing you to install a full local LaTeX distribution, TeXcore runs the compiler directly inside Obsidian using WebAssembly:

  1. TeX in Wasm: The core Pascal source code of TeX is compiled into a WebAssembly binary (tex.wasm) via the web2js compiler.
  2. Background Compilation: Because TeX compilation is CPU-bound, the plugin spawns a background Web Worker to run the Wasm engine. This keeps Obsidian's UI completely smooth and responsive.
  3. On-Demand CDN Fetching: When you first run a TikZ diagram, the plugin downloads the pre-compiled format engine (core.dump.gz) and the font stylesheet (tikzjax.css), caching them locally on your disk.
  4. Lazy Caching: If your diagram includes specific packages (e.g. \usepackage{circuitikz}), the loader resolves the files, downloads them from a CDN, and saves them locally. Subsequent renders of the same packages work fully offline.

License

This plugin is licensed under the MIT License.


Credits & Sourcing

The TikZJax engine and assets are derived from and built upon the incredible work of the following open-source projects:

  1. kisonecat/tikzjax by Jim Fowler — The original browser-based TeX-in-Wasm compiler.
  2. drgrice1/tikzjax by Glenn Rice — Added Web Worker support, along with additional TeX library and package compilations.
  3. artisticat1/obsidian-tikzjax by artisticat1 — Inspiration for Obsidian integration wrapper that packaged these components.

Note: The underlying TeX engine binaries, format dumps, and LaTeX style packages are distributed under their respective open-source licenses (GPL-3.0+ / LPPL v1.3c).