• Stars
    star
    114
  • Rank 307,967 (Top 7 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created about 5 years ago
  • Updated over 1 year ago

Reviews

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

Repository Details

A marble diagram generator.

Swirly

A marble diagram generator.

npm JavaScript Standard Style

Example

Here's Swirly rendering the effect of the concatAll operator:

concatAll

The image above was built from this marble diagram specification.

Diagram specifications use an extension of the syntax used for RxJS marble testing. Please consult the examples to learn how to create diagrams.

Web Version

You can use Swirly in your browser at swirly.dev.

The Web version allows you to edit diagram specifications in real time and export them to an SVG or a PNG image.

CLI Version

Swirly is also available as a command-line utility. To run it, you need a sufficiently recent version of Node.js.

To install Swirly on your machine, just install the swirly npm package:

npm install -g swirly

Next, create diagram.txt with your diagram specification. Take a look at the examples to learn about the expected syntax.

You can then generate an SVG image from the specification by simply running:

swirly diagram.txt diagram.svg

Swirly can also output PNG images. Since PNG is a raster image format, you may want to increase the resolution to get a higher-quality result. You can do so by passing --scale followed by a percentage. For example, this will render the image at twice its original size:

swirly --scale=200 diagram.txt diagram.png

Author

Tim De Pauw

License

MIT

More Repositories

1

es6-promise-pool

Runs Promises in a pool that limits their concurrency.
JavaScript
377
star
2

winston-aws-cloudwatch

A Winston transport for Amazon CloudWatch.
JavaScript
47
star
3

lwc

A live-updating version of the UNIX wc command.
Go
32
star
4

metalsmith-discover-partials

Discovers your template partials and registers them with Handlebars.
JavaScript
12
star
5

kodi-missing-episodes

Checks your Kodi TV library for missing episodes using Trakt.
TypeScript
9
star
6

metalsmith-discover-helpers

Discovers your template helpers and registers them with Handlebars.
JavaScript
9
star
7

rollup-timer

Times Rollup plugins by monkey-patching plugin API functions.
JavaScript
7
star
8

plugin.video.deredactie

Kodi plugin to watch videos from deredactie.be.
Python
7
star
9

jflow

Cover Flow for Java Swing.
Java
7
star
10

esbuild-plugin-import-pattern

esbuild plugin that imports modules based on wildcard patterns.
JavaScript
5
star
11

samovar

A pure-JSON template language and renderer. Also supports YAML.
JavaScript
5
star
12

rollup-load-plugins

Loads Rollup plugins listed in package.json.
JavaScript
4
star
13

http-aws4

Performs AWS Signature Version 4-signed HTTP requests from the command line.
JavaScript
4
star
14

asdf-bump

Interactive upgrades for asdf.
JavaScript
4
star
15

chicago-capitalize

Capitalizes a title according to the Chicago Manual of Style.
JavaScript
4
star
16

rollup-plugin-mustache

Precompiles Mustache templates using Hogan.js.
JavaScript
3
star
17

minivault

A pretty rudimentary vault (Web front end).
JavaScript
3
star
18

fancy-rollup

Multi-process Rollup wrapper.
JavaScript
3
star
19

atom-npm-helper

Search the npm registry and install packages from Atom.
JavaScript
3
star
20

aws-lambda-node-wrapper

Runs recent versions of Node.js on AWS Lambda.
JavaScript
3
star
21

hampster

Installs and links interdependent npm packages.
JavaScript
3
star
22

minivault-rest

A pretty rudimentary vault (RESTful API).
JavaScript
2
star
23

rollup-plugin-resolve-aliases

Resolves aliases.
JavaScript
2
star
24

picard

GitHub-style punchcards meet pie charts.
JavaScript
2
star
25

minivault-core

A pretty rudimentary vault (core API).
JavaScript
2
star
26

babel-preset-es2015-generators-async

babel-preset-es2015 minus regenerator plus async-to-module-method.
JavaScript
2
star
27

dune-movie-prettifier

Creates nice movie listings for Dune HD media players.
Perl
2
star
28

event-registry

Keeps track of EventEmitter listeners and automatically removes them upon selected events.
JavaScript
2
star
29

jquery-selecttext

jQuery plugin to select all text in an element
JavaScript
1
star
30

dune-tv-prettifier

Creates nice TV series listings for Dune HD media players.
Perl
1
star
31

rollup-plugin-strip-logger

Strips out references to a logger package.
JavaScript
1
star
32

regexfu

A simple Java Swing GUI to try out regular expressions.
Java
1
star
33

bucketeer

Bulk-processes objects inside an Amazon S3 bucket.
JavaScript
1
star
34

rollup-plugin-assert-es

Verifies that bundled code is ES5.
JavaScript
1
star
35

rollup-plugin-transform-code

Performs simple code transformations.
JavaScript
1
star
36

burrata

Robust, developer-friendly postMessage.
JavaScript
1
star
37

rollup-plugin-cssnext

Easy integration between Rollup and cssnext.
JavaScript
1
star
38

depviz

Visualizes intra-monorepo dependencies.
JavaScript
1
star
39

stream-capacitor

Throttles streams based on customizable throughput.
JavaScript
1
star
40

diagnosis

Runs a series of client-side health checks.
JavaScript
1
star
41

lwc-nodejs

A live-updating version of the UNIX wc command.
JavaScript
1
star
42

karma-mocha-iframes

Runs every Mocha-based Karma test in its own iframe.
JavaScript
1
star
43

mitmproxy-scripts

Scripts that I use with mitmproxy.
Python
1
star
44

yorkie

A pure-Bash port of Husky. Woof!
Shell
1
star