Skip to content

Latest commit

 

History

History
142 lines (139 loc) · 32.2 KB

README.md

File metadata and controls

142 lines (139 loc) · 32.2 KB

@thi.ng/umbrella examples

This directory contains a growing number (currently 130) of standalone example projects, including live online versions, build instructions and commented source code.

If you want to contribute an example, please get in touch via PR, issue tracker, email or twitter!

# Screenshot Name Description
001 adaptive-threshold Interactive image processing (adaptive threshold)
002 ascii-raymarch ASCII art raymarching with thi.ng/shader-ast & thi.ng/text-canvas
003 async-effect Minimal demo using interceptors with an async side effect
004 big-font Large ASCII font text generator using @thi.ng/rdom
005 bitmap-font Figlet-style bitmap font creation with transducers
006 canvas-dial Canvas based dial widget
007 cellular-automata 2D transducer based cellular automata
008 color-themes Probabilistic color theme generator
009 commit-heatmap Heatmap visualization of this mono-repo's commits
010 commit-table-ssr Filterable commit log UI w/ minimal server to provide commit history
011 crypto-chart Basic crypto-currency candle chart with multiple moving averages plots
012 devcards BMI calculator in a devcards format
013 dominant-colors Color palette generation via dominant color extraction from uploaded images
014 ellipse-proximity Interactive visualization of closest points on ellipses
015 fft-synth Interactive inverse FFT toy synth
016 fiber-basics Fiber-based cooperative multitasking basics
017 geom-convex-hull Convex hull & shape clipping of 2D polygons
018 geom-fuzz-basics geom-fuzz basic shape & fill examples
019 geom-knn Doodle w/ K-nearest neighbor search result visualization
020 geom-knn-hash K-nearest neighbor search in an hash grid
021 geom-tessel Animated, recursive polygon tessellations
022 geom-voronoi-mst Poisson-disk shape-aware sampling, Voronoi & Minimum Spanning Tree visualization
023 gesture-analysis Mouse gesture / stroke analysis, simplification, corner detection
024 grid-iterators Visualization of different grid iterator strategies
025 hdom-basics Minimal hdom usage example
026 hdom-benchmark hdom update performance benchmark (old version)
027 hdom-benchmark2 hdom update performance benchmark w/ config options
028 hdom-canvas-clock Realtime analog clock demo
029 hdom-canvas-draw Interactive pattern drawing demo using transducers
030 hdom-canvas-particles 2D Bezier curve-guided particle system
031 hdom-canvas-shapes Various hdom-canvas shape drawing examples & SVG conversion / export
032 hdom-dropdown Custom dropdown UI component for hdom
033 hdom-dropdown-fuzzy Custom dropdown UI component w/ fuzzy search
034 hdom-dyn-context Using custom hdom context for dynamic UI theming
035 hdom-elm Using hdom in an Elm-like manner
036 hdom-inner-html Higher-order component for rendering HTML strings
037 hdom-local-render Isolated, component-local DOM updates
038 hdom-localstate UI component w/ local state stored in hdom context
039 hdom-skip Skipping UI updates for selected component(s)
040 hdom-skip-nested Skipping UI updates for nested component(s)
041 hdom-theme Example for themed components proposal
042 hdom-toggle Customizable slide toggle component demo
043 hdom-vscroller Virtual scroller component for large tables / lists
044 hiccup-canvas-arcs Animated arcs & drawing using hiccup-canvas
045 hiccup-css-image-transition Generating pure CSS image transitions
046 hydrate-basics Hiccup / hdom DOM hydration example
047 ifs-fractal Barnsley fern IFS fractal renderer
048 imgui Canvas based Immediate Mode GUI components
049 imgui-basics Minimal IMGUI usage example
050 interceptor-basics Event handling w/ interceptors and side effects
051 interceptor-basics2 Event handling w/ interceptors and side effects
052 iso-plasma Animated sine plasma effect visualized using contour lines
053 json-components Transforming JSON into UI components
054 kmeans-viz k-means clustering visualization
055 lispy-repl Browser REPL for a Lispy S-expression based mini language
056 login-form Basic SPA example with atom-based UI router
057 mandelbrot Worker based, interactive Mandelbrot visualization
058 markdown Markdown to Hiccup to HTML parser / transformer
059 multitouch Basic rstream-gestures multi-touch demo
060 package-stats CLI util to visualize umbrella pkg stats
061 parse-playground Parser grammar livecoding editor/playground & codegen
062 pixel-basics Pixel buffer manipulations
063 pixel-dither Showcase of various dithering algorithms
064 pixel-indexed Image dithering and remapping using indexed palettes
065 pixel-normal-map Normal map creation/conversion basics
066 pixel-sorting Interactive pixel sorting tool using thi.ng/color & thi.ng/pixel
067 pointfree-svg Generate SVG using pointfree DSL
068 poisson-circles 2D Poisson-disc sampler with procedural gradient map
069 poly-spline Polygon to cubic curve conversion & visualization
070 porter-duff Port-Duff image compositing / alpha blending
071 ramp-synth Unison wavetable synth with waveform editor
072 rasterize-blend Steering behavior drawing with alpha-blended shapes
073 rdom-basics Demonstates various rdom usage patterns
074 rdom-canvas-basics Minimal rdom-canvas animation
075 rdom-delayed-update Dynamically loaded images w/ preloader state
076 rdom-dnd rdom drag & drop example
077 rdom-key-sequences rstream & transducer-based FSM for converting key event sequences into high-level commands
078 rdom-lissajous rdom & hiccup-canvas interop test
079 rdom-search-docs Full umbrella repo doc string search w/ paginated results
080 rdom-svg-nodes rdom powered SVG graph with draggable nodes
081 render-audio Generative audio synth offline renderer and WAV file export
082 rotating-voronoi Animated Voronoi diagram, cubic splines & SVG download
083 router-basics Complete mini SPA app w/ router & async content loading
084 rstream-dataflow Minimal rstream dataflow graph
085 rstream-event-loop Minimal demo of using rstream constructs to form an interceptor-style event loop
086 rstream-grid Interactive grid generator, SVG generation & export, undo/redo support
087 rstream-hdom rstream based UI updates & state handling
088 rstream-spreadsheet rstream based spreadsheet w/ S-expression formula DSL
089 rstream-sync Minimal rstream sync() example using rdom
090 scenegraph 2D scenegraph & shape picking
091 scenegraph-image 2D scenegraph & image map based geometry manipulation
092 shader-ast-canvas2d 2D canvas shader emulation
093 shader-ast-evo Evolutionary shader generation using genetic programming
094 shader-ast-noise HOF shader procedural noise function composition
095 shader-ast-raymarch WebGL & JS canvas2D raymarch shader cross-compilation
096 shader-ast-sdf2d WebGL & JS canvas 2D SDF
097 shader-ast-tunnel WebGL & Canvas2D textured tunnel shader
098 shader-ast-workers Fork-join worker-based raymarch renderer (JS/CPU only)
099 shader-graph Minimal shader graph developed during livestream #2
100 soa-ecs Entity Component System w/ 100k 3D particles
101 spline-tangent Compute cubic spline position & tangent using Dual Numbers
102 stratified-grid 2D Stratified grid sampling example
103 svg-barchart Simplistic SVG bar chart component
104 svg-particles Basic 2D particle system w/ SVG shapes
105 svg-resample SVG path parsing & dynamic resampling
106 svg-waveform Additive waveform synthesis & SVG visualization with undo/redo
107 talk-slides hdom based slide deck viewer & slides from my ClojureX 2018 keynote
108 text-canvas 3D wireframe textmode demo
109 text-canvas-image Textmode image warping w/ 16bit color output
110 todo-list Obligatory to-do list example with undo/redo
111 trace-bitmap Multi-layer vectorization & dithering of bitmap images
112 transducers-hdom Transducer & rstream based hdom UI updates
113 triple-query Triple store query results & sortable table
114 unbiased-normals Visual comparison of biased vs. unbiased normal vectors projected on the surface of a sphere
115 webgl-channel-mixer rdom & WebGL-based image channel editor
116 webgl-cube WebGL multi-colored cube mesh
117 webgl-cubemap WebGL cube maps with async texture loading
118 webgl-float-fbo Drawing to floating point offscreen / multi-pass shader pipeline
119 webgl-game-of-life Game of Life implemented as WebGL2 multi-pass shader pipeline
120 webgl-grid WebGL instancing, animated grid
121 webgl-msdf WebGL MSDF text rendering & particle system
122 webgl-multipass Minimal multi-pass / GPGPU example
123 webgl-shadertoy Shadertoy-like WebGL setup
124 webgl-ssao WebGL screenspace ambient occlusion
125 wolfram 1D Wolfram automata with OBJ point cloud export
126 xml-converter XML/HTML/SVG to hiccup/JS conversion
127 zig-canvas Zig-based DOM creation & canvas drawing app
128 zig-cellular Zig-based 2D multi-behavior cellular automata
129 zig-counter Simple Zig/WASM click counter DOM component
130 zig-todo-list Zig-based To-Do list, DOM creation, local storage task persistence