···11[package]
22name = "shapemaker"
33-version = "0.1.0"
33+version = "1.0.0"
44edition = "2021"
5566# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
7788[dependencies]
99-chumsky = "0.8.0"
109docopt = "1.1.1"
1010+rand = "0.8.5"
1111serde = "1.0.147"
1212-svg = "0.12.1"
1212+svg = "0.13.0"
+56
README.md
···11+# shapemaker
22+33+An experiment into the generation of 2D flat design abstract artwork using limited shape and color combinations, arranged in a 8-point grid.
44+55+## Gallery
66+77+<div style="display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 1rem;">
88+99+**HAL 9000**
1010+
1111+1212+**Amogus**
1313+
1414+1515+**Capitalism**
1616+
1717+1818+**Cutting An Egg**
1919+
2020+2121+**Designing A Font**
2222+
2323+2424+**Drone Operating System**
2525+
2626+2727+**Iron Factory**
2828+
2929+3030+**Japan Sledding Olympics**
3131+
3232+3333+**Lunatic Green Energy**
3434+
3535+3636+**Measuring Spirits**
3737+
3838+3939+**Phone Cameras**
4040+
4141+4242+**Reflections**
4343+
4444+4545+**Spline Optimisation**
4646+
4747+4848+**Tropical Fish**
4949+
5050+5151+**Weaving**
5252+
5353+5454+5555+5656+</div>
+11
README.md.in
···11+# shapemaker
22+33+An experiment into the generation of 2D flat design abstract artwork using limited shape and color combinations, arranged in a 8-point grid.
44+55+## Gallery
66+77+<div style="display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 1rem;">
88+99+%gallery%
1010+1111+</div>
+20
fill-gallery.rb
···11+#!/usr/bin/env ruby
22+33+gallery = ""
44+55+Dir.glob("gallery/*.svg").each do |file|
66+ if file == "gallery/test.svg" then next end
77+88+ title = file
99+ .sub(/^gallery\//, "")
1010+ .sub(/\.svg$/, "")
1111+ .gsub(/-/, " ").split(" ")
1212+ .map { |word| word.upcase == word ? word : word.capitalize }
1313+ .join(" ")
1414+1515+ gallery += "**#{title}**\n\n\n"
1616+end
1717+1818+File.open "README.md", "w" do |f|
1919+ f.write File.read("README.md.in").gsub("%gallery%", gallery)
2020+end