├── .gitignore ├── .npmignore ├── LICENSE.md ├── README.md ├── docs ├── animation.gif └── formats.md ├── package.json ├── site ├── App.svelte ├── assets │ ├── adjustments-alt.svg │ ├── adjustments-horizontal.svg │ ├── circle-24px.svg │ ├── player-pause.svg │ ├── player-play.svg │ ├── player-record.svg │ ├── player-stop.svg │ └── settings.svg ├── components │ ├── Button.svelte │ ├── LooomCanvas.svelte │ ├── Progress.svelte │ ├── Settings.svelte │ ├── gifworker.js │ ├── record.js │ └── ui │ │ ├── Button.svelte │ │ ├── Checkbox.svelte │ │ ├── Color.svelte │ │ ├── Display.svelte │ │ ├── DropContainer.svelte │ │ ├── DropRoot.svelte │ │ ├── EditorSaveLoad.svelte │ │ ├── FileInput.svelte │ │ ├── Folder.svelte │ │ ├── ImageInput.svelte │ │ ├── NativeColor.svelte │ │ ├── Number.svelte │ │ ├── Panel.svelte │ │ ├── PresetSelector.svelte │ │ ├── Prop.svelte │ │ ├── SeedBox.svelte │ │ ├── Select.svelte │ │ ├── Slider.svelte │ │ ├── Text.svelte │ │ ├── Vector.svelte │ │ ├── assets │ │ ├── keyboard_arrow_down-24px.svg │ │ └── keyboard_arrow_right-24px.svg │ │ ├── dom │ │ ├── Button.svelte │ │ ├── FileInput.svelte │ │ ├── NumberInput.svelte │ │ └── TextInput.svelte │ │ ├── index.js │ │ ├── settings │ │ ├── Animation.svelte │ │ ├── DocumentSize.svelte │ │ └── PresetSelector.svelte │ │ └── state.js ├── index.html ├── index.js ├── main.css ├── splash.svg.js └── vendor │ └── whammy.js ├── src ├── canvas-rendering.js ├── looom-util.js ├── parse-looom-svg.js └── util │ ├── catmull-rom-point.js │ ├── catmull-rom-spline.js │ ├── fit.js │ ├── offset-path.js │ ├── path-util.js │ ├── process-input.js │ └── traverse.js └── test ├── fixtures ├── Earthy.svg ├── Earthy1.svg ├── Earthy2.svg ├── Lucky.svg ├── Neon 2.svg ├── Neon.svg ├── Wakeup.svg ├── allpause.svg ├── blending.svg ├── cube.svg ├── fill-static.svg ├── forwardback.svg ├── masks.svg ├── static-variable-stroke.svg ├── stroke-profile.svg ├── testblend.svg ├── testpaths.svg ├── testplay1.svg ├── testplay2.svg └── timeline.svg └── sketch.js /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/.npmignore -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/README.md -------------------------------------------------------------------------------- /docs/animation.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/docs/animation.gif -------------------------------------------------------------------------------- /docs/formats.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/docs/formats.md -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/package.json -------------------------------------------------------------------------------- /site/App.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/App.svelte -------------------------------------------------------------------------------- /site/assets/adjustments-alt.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/adjustments-alt.svg -------------------------------------------------------------------------------- /site/assets/adjustments-horizontal.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/adjustments-horizontal.svg -------------------------------------------------------------------------------- /site/assets/circle-24px.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/circle-24px.svg -------------------------------------------------------------------------------- /site/assets/player-pause.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/player-pause.svg -------------------------------------------------------------------------------- /site/assets/player-play.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/player-play.svg -------------------------------------------------------------------------------- /site/assets/player-record.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/player-record.svg -------------------------------------------------------------------------------- /site/assets/player-stop.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/player-stop.svg -------------------------------------------------------------------------------- /site/assets/settings.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/assets/settings.svg -------------------------------------------------------------------------------- /site/components/Button.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/Button.svelte -------------------------------------------------------------------------------- /site/components/LooomCanvas.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/LooomCanvas.svelte -------------------------------------------------------------------------------- /site/components/Progress.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/Progress.svelte -------------------------------------------------------------------------------- /site/components/Settings.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/Settings.svelte -------------------------------------------------------------------------------- /site/components/gifworker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/gifworker.js -------------------------------------------------------------------------------- /site/components/record.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/record.js -------------------------------------------------------------------------------- /site/components/ui/Button.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Button.svelte -------------------------------------------------------------------------------- /site/components/ui/Checkbox.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Checkbox.svelte -------------------------------------------------------------------------------- /site/components/ui/Color.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Color.svelte -------------------------------------------------------------------------------- /site/components/ui/Display.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Display.svelte -------------------------------------------------------------------------------- /site/components/ui/DropContainer.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/DropContainer.svelte -------------------------------------------------------------------------------- /site/components/ui/DropRoot.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/DropRoot.svelte -------------------------------------------------------------------------------- /site/components/ui/EditorSaveLoad.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/EditorSaveLoad.svelte -------------------------------------------------------------------------------- /site/components/ui/FileInput.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/FileInput.svelte -------------------------------------------------------------------------------- /site/components/ui/Folder.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Folder.svelte -------------------------------------------------------------------------------- /site/components/ui/ImageInput.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/ImageInput.svelte -------------------------------------------------------------------------------- /site/components/ui/NativeColor.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/NativeColor.svelte -------------------------------------------------------------------------------- /site/components/ui/Number.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Number.svelte -------------------------------------------------------------------------------- /site/components/ui/Panel.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Panel.svelte -------------------------------------------------------------------------------- /site/components/ui/PresetSelector.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/PresetSelector.svelte -------------------------------------------------------------------------------- /site/components/ui/Prop.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Prop.svelte -------------------------------------------------------------------------------- /site/components/ui/SeedBox.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/SeedBox.svelte -------------------------------------------------------------------------------- /site/components/ui/Select.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Select.svelte -------------------------------------------------------------------------------- /site/components/ui/Slider.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Slider.svelte -------------------------------------------------------------------------------- /site/components/ui/Text.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Text.svelte -------------------------------------------------------------------------------- /site/components/ui/Vector.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/Vector.svelte -------------------------------------------------------------------------------- /site/components/ui/assets/keyboard_arrow_down-24px.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/assets/keyboard_arrow_down-24px.svg -------------------------------------------------------------------------------- /site/components/ui/assets/keyboard_arrow_right-24px.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/assets/keyboard_arrow_right-24px.svg -------------------------------------------------------------------------------- /site/components/ui/dom/Button.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/dom/Button.svelte -------------------------------------------------------------------------------- /site/components/ui/dom/FileInput.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/dom/FileInput.svelte -------------------------------------------------------------------------------- /site/components/ui/dom/NumberInput.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/dom/NumberInput.svelte -------------------------------------------------------------------------------- /site/components/ui/dom/TextInput.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/dom/TextInput.svelte -------------------------------------------------------------------------------- /site/components/ui/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/index.js -------------------------------------------------------------------------------- /site/components/ui/settings/Animation.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/settings/Animation.svelte -------------------------------------------------------------------------------- /site/components/ui/settings/DocumentSize.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/settings/DocumentSize.svelte -------------------------------------------------------------------------------- /site/components/ui/settings/PresetSelector.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/settings/PresetSelector.svelte -------------------------------------------------------------------------------- /site/components/ui/state.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/components/ui/state.js -------------------------------------------------------------------------------- /site/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/index.html -------------------------------------------------------------------------------- /site/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/index.js -------------------------------------------------------------------------------- /site/main.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/main.css -------------------------------------------------------------------------------- /site/splash.svg.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/splash.svg.js -------------------------------------------------------------------------------- /site/vendor/whammy.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/site/vendor/whammy.js -------------------------------------------------------------------------------- /src/canvas-rendering.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/canvas-rendering.js -------------------------------------------------------------------------------- /src/looom-util.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/looom-util.js -------------------------------------------------------------------------------- /src/parse-looom-svg.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/parse-looom-svg.js -------------------------------------------------------------------------------- /src/util/catmull-rom-point.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/util/catmull-rom-point.js -------------------------------------------------------------------------------- /src/util/catmull-rom-spline.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/util/catmull-rom-spline.js -------------------------------------------------------------------------------- /src/util/fit.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/util/fit.js -------------------------------------------------------------------------------- /src/util/offset-path.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/util/offset-path.js -------------------------------------------------------------------------------- /src/util/path-util.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/util/path-util.js -------------------------------------------------------------------------------- /src/util/process-input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/util/process-input.js -------------------------------------------------------------------------------- /src/util/traverse.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/src/util/traverse.js -------------------------------------------------------------------------------- /test/fixtures/Earthy.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/Earthy.svg -------------------------------------------------------------------------------- /test/fixtures/Earthy1.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/Earthy1.svg -------------------------------------------------------------------------------- /test/fixtures/Earthy2.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/Earthy2.svg -------------------------------------------------------------------------------- /test/fixtures/Lucky.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/Lucky.svg -------------------------------------------------------------------------------- /test/fixtures/Neon 2.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/Neon 2.svg -------------------------------------------------------------------------------- /test/fixtures/Neon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/Neon.svg -------------------------------------------------------------------------------- /test/fixtures/Wakeup.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/Wakeup.svg -------------------------------------------------------------------------------- /test/fixtures/allpause.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/allpause.svg -------------------------------------------------------------------------------- /test/fixtures/blending.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/blending.svg -------------------------------------------------------------------------------- /test/fixtures/cube.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/cube.svg -------------------------------------------------------------------------------- /test/fixtures/fill-static.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/fill-static.svg -------------------------------------------------------------------------------- /test/fixtures/forwardback.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/forwardback.svg -------------------------------------------------------------------------------- /test/fixtures/masks.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/masks.svg -------------------------------------------------------------------------------- /test/fixtures/static-variable-stroke.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/static-variable-stroke.svg -------------------------------------------------------------------------------- /test/fixtures/stroke-profile.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/stroke-profile.svg -------------------------------------------------------------------------------- /test/fixtures/testblend.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/testblend.svg -------------------------------------------------------------------------------- /test/fixtures/testpaths.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/testpaths.svg -------------------------------------------------------------------------------- /test/fixtures/testplay1.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/testplay1.svg -------------------------------------------------------------------------------- /test/fixtures/testplay2.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/testplay2.svg -------------------------------------------------------------------------------- /test/fixtures/timeline.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/fixtures/timeline.svg -------------------------------------------------------------------------------- /test/sketch.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattdesl/looom-tools/HEAD/test/sketch.js --------------------------------------------------------------------------------