casualbot85 downloadsRead-only viewer for source code and developer-centric files (py, ps1, sh, ts, etc.) with syntax highlighting via Prism.
Obsidian plugin that provides read-only syntax-highlighted viewing for the most common development and developer-centric file types — py, ps1, sh, ts, cs, sql, yml, and many more. Never executes file contents.
The goal is to make developer files first-class citizens inside an Obsidian vault. A common use case is storing AI agent harness files — prompts, tool configs, CLAUDE.md instructions, memory files, and similar artifacts — directly in your vault so they're browsable, searchable, and linkable alongside your notes. Any plain-text source file you'd normally only open in an editor can instead be read from within Obsidian without leaving your knowledge base.
End users install through Obsidian's Settings → Community plugins → Browse, or download the artifacts from the latest GitHub release.
src/main.ts — plugin entry: CodeViewPlugin, CodeView (extends TextFileView), CodeViewSettingTab. Render path uses Prism.tokenize + a DOM walker (no innerHTML).src/prism.ts — Prism component imports + GDScript grammar extension. Import order matters — components that extend others must load after their bases.styles.css — token classes (.token.comment, .token.keyword, …) mapped to Obsidian CSS variables.manifest.json, versions.json — kept in lockstep by scripts/version-bump.mts (run automatically by npm version)..github/workflows/release.yml — manual workflow_dispatch release workflow, gated to CasualBot.See CLAUDE.md for the architectural details, non-obvious constraints, and release-flow internals.
Requires Node.js 20+.
npm install
npm run dev # esbuild watch mode (inline sourcemaps)
npm run typecheck # tsc --noEmit (only static check)
npm run build # production bundle → main.js
Sideload a build into a test vault:
VAULT_PATH="/path/to/your/vault" npm run install-to-vault
This copies manifest.json, main.js, and styles.css to <vault>/.obsidian/plugins/code-view/. After each rebuild, Reload plugins in Obsidian (or Ctrl+R) to pick up changes.
Releases are produced exclusively by the Release Obsidian plugin workflow (Actions tab → Run workflow → choose patch | minor | major). The workflow bumps the version, syncs manifest.json + versions.json via the version lifecycle hook, builds, tags (no v prefix — Obsidian rejects it), and publishes a GitHub release with main.js + manifest.json + styles.css attached.
Never edit the version in manifest.json, versions.json, or package.json by hand — always go through npm version (or the workflow).
This plugin complies with all Obsidian developer policies:
LICENSE (MIT).main.js per its license terms.