Skip to content

About

Exact, editable geometric vector art (seamless patterns and backgrounds) written as plain SVG by a standard-library Python program. By MV2 of Munim, Inc., made with AI agents.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vector Studio

Exact, editable geometric vector art, written as plain SVG by a small Python program (standard library only), plus seamless looping motion backgrounds rendered to MP4 in the browser.

Text-to-image models are good at texture and bad at geometry: their "vectors" are usually traced pixels, full of broken curves and stray nodes. Vector Studio goes the other way. Every artwork is built from exact geometry (arcs, polygons, Voronoi cells and smooth Bezier curves), so each shape is one clean filled path that a designer can select, recolour or reuse. Shapes are grouped into named layers (background, sky, sun, mesas, tiles, accents...) that open as labelled groups in a vector editor.

Try it in your browser: open index.html (or the project's GitHub Pages site, once it is switched on). It runs studio.py with Pyodide, shows the batch, lets you leave out any piece and downloads a zip. Nothing is uploaded.

Motion loops

motion.html draws seamless looping backgrounds and encodes them frame by frame to H.264 MP4 with WebCodecs and mp4-muxer. Every moving term completes a whole number of cycles per loop, so the last frame leads straight back into the first. It needs a current Chrome or Edge.

Sizes: 1920 x 1080, 3840 x 2160, vertical 1080 x 1920 and 2160 x 3840, square 1080 x 1080 and 2160 x 2160; 5 to 60 seconds at 25 or 30 fps. Vertical and square clips get their own seeds, so they are new designs rather than crops of the landscape ones.

style what moves
waves layered wave bands in a two-colour gradient, flowing sideways
halftone a hexagonal grid of dots whose sizes ripple outward from a focus
contours topographic contour lines (with index contours) flowing outward
tiles Bauhaus tiles (quarter circles, semicircles, triangles, rings) turning a quarter at a time
blobs soft blurred colour blobs drifting
bokeh glowing out-of-focus lights rising slowly on a dark ground, twinkling
synth retro 80s synthwave: a perspective grid moving toward a striped sun, optional stars and mountains
sunburst retro sunburst rays turning, with a pulsing centre
stripes groovy 70s wavy stripes flowing diagonally
plexus a network of drifting dots, linked by lines that fade with distance

Rendering downloads one .mp4 per kept clip and an Adobe Stock CSV (Filename, Title, Keywords, Category, Releases). Filenames stay within Adobe Stock's 30 characters (mv2_motion_* for HD, mv2_4k_*, mv2_vert_*, mv2_v4k_*, mv2_sq_*, mv2_sq4k_*).

Vector styles

Seventeen vector styles, each with variations and fourteen hand-picked palettes:

style what it is seamless
bauhaus grid of quarter circles, semicircles, triangles, rings and stripes no
boho boho wall art: rainbow arches, rising sun with rays, leafy branches, circles no
cairo Cairo pentagon tiles with grout lines (exact tiling, optional rounded corners) yes
desert flat desert: banded sky, sun with halo or moon and stars, mesas, dunes, saguaro cacti no
groovy 70s groovy wavy stripes (seamless both ways) or wavy concentric rings stripes: yes
halftone radial, linear or wave halftone dots no
landscape flat mountain landscape: banded sky, plain or retro striped sun, jagged ranges, rolling hills, pines no
memphis Memphis-style squiggles, triangles, rings, crosses and dot grids yes
mosaic stained glass or mosaic from a seamless Voronoi diagram, sharp or rounded yes
organic abstract organic cut-out shapes: blobs, leaves, half discs, arches, squiggles, dot grids no
seigaiha Japanese wave scales of concentric circles yes
star eight-pointed star and diamond tile pattern yes
terrazzo stone chips and speckles, wrapped across the edges yes
topo topographic contour lines with index contours no
truchet interlocking quarter-ring arcs, optional checker ground yes
tumbling isometric cubes (tumbling blocks) yes, three-tone mode
waves layered wave bands in a two-colour gradient no

Each file is a 4000 x 4000 px artboard (16 MP), RGB hex fills only, with no strokes, text, images or scripts. That meets Adobe Stock's technical rules for vectors (AI, EPS or SVG, 15 to 65 MP, strokes outlined, organised into layers and groups).

Use

python studio.py list
python studio.py one --style desert --seed 7 --out desert.svg
python studio.py build --out out --batch 1 --per-style 3

build writes svg/*.svg, a contact.html sheet to review the batch in a browser, adobe_stock.csv (Filename, Title, Keywords, Category, Releases) and a draft freepik.csv (File name; Title; Keywords; Prompt; Model). Titles and keywords come from the style and palette. A batch number changes every seed, so batches never repeat each other.

python -m unittest -v test_studio

The tests check every style for valid SVG, artboard size, fills, named non-empty layers, metadata limits and determinism, and check the geometry itself (the Voronoi cells and Cairo pentagons tile the plane exactly). For the motion page they check that it uses the same palettes as studio.py, that its script's brackets, strings and regular expressions are well formed, and that every style, palette list, frame size and filename fits the rules above.

Versions: studio.py reports the vector generator's version (0.3.0); motion.html shows its own at the bottom of the page (0.4.0).

Made with AI

Vector Studio and the artworks and clips it produces were made by AI agents working for MV2 of Munim, Inc. If you upload its output to a marketplace, label it the way that marketplace requires (Adobe Stock: "Created using generative AI tools").

License

Code: Apache-2.0, see LICENSE. By MV2 of Munim, Inc. (munimversion2@gmail.com). mp4-muxer (loaded from jsDelivr by motion.html) is Apache-2.0 licensed by Vanilagy.

About

Exact, editable geometric vector art (seamless patterns and backgrounds) written as plain SVG by a standard-library Python program. By MV2 of Munim, Inc., made with AI agents.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages