whatisgithub

What is pinstar?

reekta92/pinstar — explained in plain English

Analysis updated 2026-05-18

28RustAudience · developerComplexity · 2/5Setup · easy

In one sentence

A terminal-based editor for Obsidian's .canvas files, letting you view, pan, and edit note canvases without opening Obsidian.

Mindmap

mindmap
  root((pinstar))
    What it does
      Edits Obsidian canvas files
      Runs in a terminal
      Pan zoom and navigate
    Tech stack
      Rust
      Ratatui
      Serde JSON
      UUID crate
    Use cases
      Quick edits over SSH
      Lightweight alternative
      Inline node editing
    Limitations
      Node titles differ from Obsidian
      No real image rendering
    Install
      Cargo install
      Prebuilt packages
      Build from source

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Edit an Obsidian .canvas file from a terminal without launching the full app

USE CASE 2

Browse and rearrange canvas notes over SSH on a remote machine

USE CASE 3

Use a lightweight command-line alternative for quick canvas edits

What is it built with?

RustRatatuiSerde JSONUUID

How does it compare?

reekta92/pinstarhellanglez/zsparkmatthart1983/diskwatch
Stars282729
LanguageRustRustRust
Setup difficultyeasyhardeasy
Complexity2/54/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Prebuilt packages exist for common Linux distros, building from source needs Rust 1.85+.

So what is it?

Pinstar is a canvas file editor that runs inside your terminal. It works specifically with the .canvas file format used by Obsidian, a popular note-taking app. Instead of needing a graphical window, you interact with it through a text-based interface directly in your command line. What it solves is simple: if you have Obsidian canvas files and want to view or edit them without opening Obsidian itself, pinstar gives you a lightweight alternative that runs entirely in the terminal. You can pan around the canvas, zoom in and out, navigate between connected nodes, and edit node content inline. The tool reads and writes the .canvas file format faithfully, supporting text nodes, file nodes, link nodes, and group nodes. Each node is tracked by a unique identifier to keep connections intact. There are some known limitations: node titles can get overwritten in a way that differs from how Obsidian handles them, and images are rendered as plain nodes rather than actual images. You can install it either via Cargo (the Rust package manager) with a single command, or download a pre-built binary from the Releases page. Pre-compiled packages are available for several Linux distributions. The README notes that building from source requires Rust version 1.85 or newer. The project is written in Rust and uses Ratatui, a library for building terminal user interfaces.

Copy-paste prompts

Prompt 1
Show me how to install pinstar with cargo and open a .canvas file with it
Prompt 2
Explain how pinstar tracks nodes with UUIDs to keep connections intact
Prompt 3
Walk me through panning, zooming, and editing node text in pinstar
Prompt 4
What are pinstar's current limitations with node titles and images

Frequently asked questions

What is pinstar?

A terminal-based editor for Obsidian's .canvas files, letting you view, pan, and edit note canvases without opening Obsidian.

What language is pinstar written in?

Mainly Rust. The stack also includes Rust, Ratatui, Serde JSON.

How hard is pinstar to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is pinstar for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.