This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

๐Ÿšš Cleanup root folder

basically shove all the mess inside research/ and examples/ lol

+55 -56
+12 -7
Justfile
··· 1 1 export RUST_BACKTRACE := "1" 2 2 3 3 build: 4 - cargo build --bin shapemaker 4 + cargo build --bin shapemaker --features mp4,vst 5 5 cp target/debug/shapemaker . 6 6 7 7 vst: ··· 9 9 gsudo cp "target/bundled/Shapemaker VST.vst3/Contents/x86_64-win/Shapemaker VST.vst3" "C:/Program Files/Common Files/VST3/Shapemaker VST.vst3" 10 10 11 11 web: 12 - wasm-pack build --target web -d web 13 - echo "" >> web/.gitignore 14 - echo "!index.html" >> web/.gitignore 12 + wasm-pack build --target web -d examples/web --features web 13 + echo "" >> examples/web/.gitignore 14 + echo "!index.html" >> examples/web/.gitignore 15 15 16 16 start-web: 17 17 just web 18 - python3 -m http.server --directory web 18 + python3 -m http.server --directory examples/web 19 19 20 20 install: 21 21 cp shapemaker ~/.local/bin/ 22 22 23 23 example-video out="out.mp4" args='': 24 - RUST_BACKTRACE=full ./shapemaker video --colors colorschemes/palenight.css {{out}} --sync-with fixtures/schedule-hell.midi --audio fixtures/schedule-hell.flac --grid-size 16x10 --resolution 480 {{args}} 24 + RUST_BACKTRACE=full ./shapemaker video --colors examples/colorschemes/palenight.css {{out}} --sync-with examples/schedule-hell.midi --audio examples/schedule-hell.flac --grid-size 16x10 --resolution 480 {{args}} 25 25 26 26 example-image out="out.png" args='': 27 - ./shapemaker image --colors colorschemes/palenight.css --resolution 1400 {{out}} {{args}} 27 + ./shapemaker image --colors examples/colorschemes/palenight.css --resolution 1400 {{out}} {{args}} 28 + 29 + readme: 30 + #!/usr/bin/env bash 31 + cd examples/gallery 32 + ./fill.rb
+6 -4
README.md
··· 18 18 19 19 ## Gallery 20 20 21 + 21 22 | | | | 22 23 |:-------------------------:|:-------------------------:|:-------------------------:| 23 - | **HAL 9000** ![HAL 9000](gallery/HAL-9000.svg) | **Cutting An Egg** ![Cutting An Egg](gallery/cutting-an-egg.svg) | **Designing A Font** ![Designing A Font](gallery/designing-a-font.svg) 24 - | **Drone Operating System** ![Drone Operating System](gallery/drone-operating-system.svg) | **Japan Sledding Olympics** ![Japan Sledding Olympics](gallery/japan-sledding-olympics.svg) | **Lunatic Green Energy** ![Lunatic Green Energy](gallery/lunatic-green-energy.svg) 25 - | **Measuring Spirits** ![Measuring Spirits](gallery/measuring-spirits.svg) | **Phone Cameras** ![Phone Cameras](gallery/phone-cameras.svg) | **Reflections** ![Reflections](gallery/reflections.svg) 26 - | **Spline Optimisation** ![Spline Optimisation](gallery/spline-optimisation.svg) | **Weaving** ![Weaving](gallery/weaving.svg) 24 + | **HAL 9000** ![HAL 9000](./examples/gallery/HAL-9000.svg)| **Cutting An Egg** ![Cutting An Egg](./examples/gallery/cutting-an-egg.svg)| **Designing A Font** ![Designing A Font](./examples/gallery/designing-a-font.svg) 25 + | **Drone Operating System** ![Drone Operating System](./examples/gallery/drone-operating-system.svg)| **Japan Sledding Olympics** ![Japan Sledding Olympics](./examples/gallery/japan-sledding-olympics.svg)| **Lunatic Green Energy** ![Lunatic Green Energy](./examples/gallery/lunatic-green-energy.svg) 26 + | **Measuring Spirits** ![Measuring Spirits](./examples/gallery/measuring-spirits.svg)| **Phone Cameras** ![Phone Cameras](./examples/gallery/phone-cameras.svg)| **Reflections** ![Reflections](./examples/gallery/reflections.svg) 27 + | **Spline Optimisation** ![Spline Optimisation](./examples/gallery/spline-optimisation.svg)| **Weaving** ![Weaving](./examples/gallery/weaving.svg) 28 +
+14 -3
README.md.in
··· 1 1 ![shapemaker](title.png) 2 2 3 + <center> 4 + <p style="text-align: center;" align="center"> 5 + <em><a href="https://github.com/ewen-lbh/shapemaker/blob/e7ff660d42f4fc3cb29e1246ee82cbdd2f27c5ab/src/examples.rs#L114">See the code that generated this image</a></em> 6 + </p> 7 + </center> 8 + 9 + * * * 10 + 11 + > **โš ๏ธ Warning:** 12 + > README is still a work-in-progress 13 + 3 14 An experiment into the generation of 2D flat design abstract artwork using limited shape and color combinations, arranged in a 8-point grid. 4 15 16 + [![wakatime](https://wakatime.com/badge/github/ewen-lbh/shapemaker.svg)](https://wakatime.com/badge/github/ewen-lbh/shapemaker) [![Crates.io Version](https://img.shields.io/crates/v/shapemaker)](https://crates.io/crates/shapemaker) [![docs.rs](https://img.shields.io/docsrs/shapemaker)](https://docs.rs/shapemaker) 17 + 18 + 5 19 ## Gallery 6 20 7 - <div style="display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 1rem;"> 8 21 9 22 %gallery% 10 - 11 - </div>
adapters/flstudio/.gitignore research/adapters/flstudio/.gitignore
adapters/flstudio/__init__.py research/adapters/flstudio/__init__.py
adapters/flstudio/adapter.py research/adapters/flstudio/adapter.py
colorschemes/afterglow.json examples/colorschemes/afterglow.json
colorschemes/cra.json examples/colorschemes/cra.json
colorschemes/palenight.css examples/colorschemes/palenight.css
colorschemes/palenight.json examples/colorschemes/palenight.json
colorschemes/snazzy-light.json examples/colorschemes/snazzy-light.json
+23
examples/gallery/fill.rb
··· 1 + #!/usr/bin/env ruby 2 + 3 + gallery = "| | | | 4 + |:-------------------------:|:-------------------------:|:-------------------------:| 5 + " 6 + 7 + Dir.glob("*.svg").each_with_index do |file, i| 8 + if file == "test.svg" then next end 9 + 10 + title = file 11 + .sub(/^gallery\//, "") 12 + .sub(/\.svg$/, "") 13 + .gsub(/-/, " ").split(" ") 14 + .map { |word| word.upcase == word ? word : word.capitalize } 15 + .join(" ") 16 + 17 + gallery += "| **#{title}** ![#{title}](./examples/gallery/#{file})" 18 + if i % 3 == 2 then gallery += "\n" end 19 + end 20 + 21 + File.open "../../README.md", "w" do |f| 22 + f.write File.read("../../README.md.in").gsub("%gallery%", gallery) 23 + end
-20
fill-gallery.rb
··· 1 - #!/usr/bin/env ruby 2 - 3 - gallery = "" 4 - 5 - Dir.glob("gallery/*.svg").each do |file| 6 - if file == "gallery/test.svg" then next end 7 - 8 - title = file 9 - .sub(/^gallery\//, "") 10 - .sub(/\.svg$/, "") 11 - .gsub(/-/, " ").split(" ") 12 - .map { |word| word.upcase == word ? word : word.capitalize } 13 - .join(" ") 14 - 15 - gallery += "**#{title}**\n![#{title}](#{file})\n\n" 16 - end 17 - 18 - File.open "README.md", "w" do |f| 19 - f.write File.read("README.md.in").gsub("%gallery%", gallery) 20 - end
fixtures/schedule-hell.flac examples/schedule-hell.flac
fixtures/schedule-hell.midi examples/schedule-hell.midi
gallery/HAL-9000.svg examples/gallery/HAL-9000.svg
gallery/cutting-an-egg.png examples/gallery/cutting-an-egg.png
gallery/cutting-an-egg.svg examples/gallery/cutting-an-egg.svg
gallery/designing-a-font.png examples/gallery/designing-a-font.png
gallery/designing-a-font.svg examples/gallery/designing-a-font.svg
gallery/drone-operating-system.png examples/gallery/drone-operating-system.png
gallery/drone-operating-system.svg examples/gallery/drone-operating-system.svg
gallery/gallery.png examples/gallery/gallery.png
gallery/japan-sledding-olympics.png examples/gallery/japan-sledding-olympics.png
gallery/japan-sledding-olympics.svg examples/gallery/japan-sledding-olympics.svg
gallery/lunatic-green-energy.svg examples/gallery/lunatic-green-energy.svg
gallery/measuring-spirits.png examples/gallery/measuring-spirits.png
gallery/measuring-spirits.svg examples/gallery/measuring-spirits.svg
gallery/myriad/generate examples/gallery/myriad/generate
gallery/phone-cameras.svg examples/gallery/phone-cameras.svg
gallery/reflections.svg examples/gallery/reflections.svg
gallery/smash.py examples/gallery/smash.py
gallery/spline-optimisation.svg examples/gallery/spline-optimisation.svg
gallery/test.png examples/gallery/test.png
-20
gallery/test.svg
··· 1 - <svg viewBox="-10 -10 120 120" xmlns="http://www.w3.org/2000/svg"> 2 - <g> 3 - <circle cx="75" cy="25" r="25" style="fill: none; stroke: black; stroke-width: 0.5px;"/> 4 - </g> 5 - <g> 6 - <circle cx="100" cy="50" r="2" style="fill: cyan;"/> 7 - </g> 8 - <g> 9 - <circle cx="50" cy="0" r="5" style="fill: none; stroke: black; stroke-width: 0.5px;"/> 10 - </g> 11 - <g> 12 - <path d="M0,50 Q50,50,50,100" style="fill: none; stroke: black; stroke-width: 2px;"/> 13 - </g> 14 - <g> 15 - <circle cx="0" cy="0" r="2" style="fill: none; stroke: black; stroke-width: 0.5px;"/> 16 - </g> 17 - <g> 18 - <circle cx="25" cy="75" r="25" style="fill: orange;"/> 19 - </g> 20 - </svg>
gallery/weaving.svg examples/gallery/weaving.svg
poetry.lock research/poetry.lock
pyproject.toml research/pyproject.toml
research_flp/onset.flp research/flp/onset.flp
research_flp/onset.json research/flp/onset.json
research_flp/tipping point.flp research/flp/tipping point.flp
research_flp/tipping point.json research/flp/tipping point.json
research_midi/.gitignore research/midi/.gitignore
research_midi/Cargo.lock research/midi/Cargo.lock
research_midi/Cargo.toml research/midi/Cargo.toml
-2
web/.gitignore
··· 1 - * 2 - !index.html
web/index.html examples/web/index.html