• Stars
    star
    382
  • Rank 112,241 (Top 3 %)
  • Language
    TypeScript
  • License
    GNU General Publi...
  • Created 12 months ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Create diagrams and plan your code with TypeScript.

TSDiagram

TSDiagram is an online tool that helps you draft diagrams quickly by using TypeScript.
πŸ‘‰ https://tsdiagram.com

Features

  • Lets you define your data models through top-level type aliases, interfaces, and classes.
  • Automatically layouts the nodes in an efficient way.
  • ...but if you move one of the nodes manually, it will only auto-layout the other ones.
  • Persists the document state in the URL and localStorage.
  • Export your diagrams as SVG.

Roadmap

  • Function call representation
  • Customizable TypeScript context (lib, etc.)
  • Bring your own storage (different vendors)

This project is not just a diagramming tool, but also the foundation for a greater code visualization project. Imagine flagging types and functions in your code editor and see how they are connected, and how data flows through them. That's the end goal, so we'll swap the TS compiler with Tree-sitter in the process.


TSDiagram Screenshot

Test links

Special thanks <3

More Repositories

1

image.nvim

πŸ–ΌοΈ Bringing images to Neovim.
Lua
674
star
2

vimage.nvim

Lua
74
star
3

devstream.tv

Devstream is a website that allows you to watch live developer streams.
Vue
57
star
4

openMou

markdown editor
JavaScript
31
star
5

playlister

Instantly create shareable playlists.
Vue
9
star
6

syslang

Syslang is an opinionated document syntax inspired by Org, Markdown, and HyperLists.
C
9
star
7

auto

Auto is a TypeScript-powered command-line automation tool.
TypeScript
8
star
8

config

My personal configuration - NixOS, Neovim, and all the good stuff.
Lua
6
star
9

work

Convenient wrapper over git-worktree, using fzf for switching between trees and branches.
Shell
6
star
10

promptpack

CLI tool for packing files into a prompt for LLM usage.
TypeScript
5
star
11

silabe.js

JavaScript syllabification library for the romanian language. (Librarie JavaScript pentru despartirea in silabe in limba romana.)
JavaScript
5
star
12

zodbus

ZodBus is a fully-typed event bus powered by Zod, with nested namespace & wildcard support and payload validation.
TypeScript
5
star
13

parcel-plugin-static

Parcel plugin for copying everything inside a directory to the bundle directory.
JavaScript
4
star
14

go2

go2 is a simple cli utility that allows you to index the directories you use often and create some kind of alias for them without polluting your shell's environment.
JavaScript
4
star
15

totomato

Totomato is a cross-platform minimalistic Pomodoro application.
Vue
3
star
16

benchmate

Small but mighty benchmarking library for JavaScript
TypeScript
3
star
17

time-tracker.nvim

Automatic project / file time tracker for Neovim.
Lua
3
star
18

statelift

Minimalist proxy-based state management library for React (experimental).
TypeScript
2
star
19

vue-starter

JavaScript
2
star
20

git-service

A web service that operates on top of a git repository, able to trigger operations and expose repository information.
Rust
2
star
21

scripts

Scripts and other small things that I use and decided to share for various reasons.
Shell
1
star
22

langtoolkit

TypeScript
1
star
23

linter

Notes and configurations for my linting setup.
TypeScript
1
star
24

remat

Simple reminder scheduling tool.
TypeScript
1
star
25

js-benchmark-tool-comparison

Benchmarking experiments
JavaScript
1
star
26

cphchat

school project
JavaScript
1
star
27

jslanscan

Browser-based LAN scanning library and application.
JavaScript
1
star
28

diagram.nvim

Diagrams as code in Neovim.
Lua
1
star