Skip to content

Latest commit

 

History

History
164 lines (161 loc) · 39.2 KB

README.md

File metadata and controls

164 lines (161 loc) · 39.2 KB

@thi.ng/umbrella examples

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