feng19

feng19

Elixir Data Viewer - A web viewer for Elixir data structures

Elixir Data Viewer

A read-only web viewer for Elixir data structures with syntax highlighting, code folding, line numbers, and a Tokyo Night theme.

Built with vanilla TypeScript + DOM — no CodeMirror, no React — powered by lezer-elixir for accurate parsing.

Features

  • Syntax Highlighting — Accurate Elixir syntax coloring via lezer-elixir parser, matching Tokyo Night theme

  • Code Folding — Collapse/expand maps, lists, tuples, keyword lists, bitstrings, and multi-line strings

  • Line Numbers — Gutter with line numbers and fold indicators

  • Floating Toolbar — Per-viewer toolbar (appears on hover) with:

    • ⊟ Fold All

    • ⊞ Unfold All

    • :right_arrow_curving_left: Word Wrap toggle

    • ⎘ Copy to clipboard

    • ⧩ Filter by key

  • Key Filtering — Hide specific key-value pairs by key name (e.g. filter out socket, secret_key_base)

  • Multiple Viewers — Support multiple independent viewer instances on the same page

  • Configurable Toolbar — Show/hide individual toolbar buttons via options or HTML data-* attributes

  • Word Wrap — Toggle word wrap for long lines

  • Zero Dependencies — Only peer dependencies on lezer-elixir and @lezer/common/@lezer/highlight

Visit the website directly and try out the online demo.

https://github.com/feng19/elixir-data-viewer

Most Liked

dimitarvp

dimitarvp

Sounds nice – could you add some screenshots to the README, please?

Last Post!

feng19

feng19

Fixed, Thanks.

Where Next?

Popular in Announcing Top

wmnnd
Hi there, for my project DBLSQD, I needed a file storage solution that is a bit more flexible than Arc. Because I thought others might f...
New
josevalim
Hi everyone, We would like to announce that Plataformatec is working on a new MySQL driver called MyXQL. Our goal is to eventually integ...
New
sorentwo
Hello! tl;dr Announcing Oban, an Ecto based job processing library with a focus on reliability and historical observability. After spen...
985 44608 311
New
oltarasenko
Dear Elixir community, After a year of development, bug fixes, and improvements, we are proudly ready to share the release of Crawly 0.1...
New
martinthenth
Hello everybody :wave: Recently, some of my colleagues talked about database ids and uuids and their problems, and I remembered the pain...
New
scohen
Lexical Lexical is a next-generation language server for the Elixir programming language. Features Context aware code completion As-you...
New
markmark206
simple_feature_flags is a tiny package that lets you turn features on or off based on which environment (e.g. localhost, staging, product...
New

Other popular topics Top

Qqwy
Original source of discussion: This topic on the Pragmatic Programmers’ Functional Web Development with Elixir, OTP, and Phoenix forum. ...
New
ashish173
I am using Ecto timestamps with postgres, I can see the timestamps() use the :naive_dateime but for my use case I wanted to store the ti...
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
gausby
I asked this very same question on twitter and got some interesting feedback, but I thought it would be a good question to ask here as we...
1207 40082 209
New
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New
saif
Hello everyone, Long time lurker first time poster here. I’ve recently begun working on Elixir full-time again! :raised_hands: It’s been...
New

We're in Beta

About us Mission Statement