2 min read 440 words Updated Jun 08, 2026 Created Jun 08, 2026

overview

Purpose

Glyph is a terminal-based data visualization framework that lets software engineers quickly query, transform, and visualize data — directly from their terminal, without leaving the keyboard or context.

The Problem

Software engineers who work with data often face a frustrating round-trip: query data, export it, open a notebook or plotting library, configure charts, and leave the terminal to view the result. By the time the visualization appears, the connection between the data and the view has already degraded — context is lost across tools, APIs, and domains.

The Solution

glyph closes that loop by keeping everything in one place:

  • blr — a declarative yet Turing-complete query and visualization language (inspired by the ML language family). It handles both data transformation and chart/layout definitions in a single domain.
  • glyph — a terminal UI built on ratatui + crossterm that renders blr-defined visualizations as reactive, in-terminal displays.
  • Vertically integrated API — unlike dashboarding systems that bolt together generic SQL and separate charting libraries, glyph owns the full stack. Context flows freely between the data layer and the visualization layer because they share the same language.

Data Sources

Data comes from anywhere. blr uses a modular package system — CSV and local files ship built-in, and additional source modules can be installed for databases, APIs, log streams, telemetry systems, and more.

Design Goals

  1. Fast, reactive visualizations — query data and see a visualization with minimal effort.
  2. Single environment — no need to leave the terminal to inspect, query, and view data.
  3. Expressive language — blr is simple enough for declarative queries but powerful enough for complex transformations and visualization definitions.
  4. Tight integration — the language and the UI speak the same API, so no context is lost between querying and rendering.
  5. Extensible sources — new data sources are added as blr packages, not by forking the core.

Target Users

Software engineers who dabble in data science — people comfortable in the terminal, who already interact with data daily (logs, metrics, CSVs, databases), but who don't want to spin up Jupyter notebooks or heavy plotting libraries for quick exploration and visualization.

Scope

glyph is a small, focused tool designed from the start for vertical integration. It is not a general-purpose dashboarding framework. Each visualization is tightly coupled to its data source through blr, and the system is optimized for that integration.

The project will start as a personal tool. If and when it proves useful beyond the original use cases, the community can help grow it — but the core design remains intentionally scoped and coherent.