Pen plotter graphics software
Pen plotters support any kind of vector graphics, but these are the software tools I've found that create graphics primarily for plotters.
Turtletoy is a turtle graphics plotting environment in JavaScript, run by Reinder Nijhoff.
Vsketch is a Python API for generating graphics suitable for plotting.
Penkit is Paul Butler's well-documented Python API for plotter graphics.
PenPlots.jl is a Julia API for plotter graphics, also by Paul Butler.
canvas-sketch is a JavaScript API for plotter graphics by Matt DesLauriers.
SwiftGraphics is Emory Dunn's Swift framework for pen plotter artwork, with a ray tracer.
yyz is DesLauriers' unstable API for pen plotting, using a React-like interface for SVG creation.
weir is Anders Hoff's Common Lisp API for plotter graphics.
Penplotter.js is a pen plotter-oriented generative art API in JavaScript with options to generate G-code.
Generative Art with Elm is an environment for creating plotter artwork and can communicate with an AxiDraw pen plotter.
Toodle Studio is an animated Lisp canvas for drawing with turtle graphics.
Art-specific
Tinkersynth is a Joy Division cover generator.
Flow Lines (source) generates contour lines in the same direction.
SuperformulaSVG is a shape generator.
revdancatt's pen plotter page has several SVG tools, including Perlin circles, snowflakes, and spokes and circles.
Sketch is an exploration of cross-hatching and engraving techniques for 3D models.
Sandify is purpose-built for magnetic sand plotter robots.
3D
ln from Michael Fogleman is a Go 3D renderer that targets SVG and inspired ln.js and linea, both in TypeScript.
three-plotter-renderer is a 3D renderer for SVG with hatch marks.
plotter.vision is an online STL to SVG converter with anaglyph (red-blue perspective shift for "3D" glasses) support, written in JavaScript.
3D objects to plottable SVGs workflow describes Maks Surguy's use of Blender and a few Python libraries for two primary art styles: sliced layers of models and polygon wireframes.
Utilities
fart is a local art creation system for pen plotting that regenerates artwork when code changes and offers UI elements to control tuneables in Rust.
vpype is a command line tool for rescaling and modifying SVG for pen plotters
plottertools are assorted utilities for working with plotters.
Chiplotle is an early Python library for interfacing with plotters that use HP-GL, HP's plotter control language.
svg2gcode is a web tool for converting SVG files to g-code instructions for 2D CNC machines.
Optimization
Optimizing Plots with a TSP Solver outlines a process to speed up the physical process of plotting.
General-purpose
nannou is a Rust framework for generative graphics and audio.
p5.js and Sandpit.js provide the classic Processing environment in JavaScript.
Paper.js is a library for manipulating vector art.
Quil is a Clojure (or JavaScript) library for interactive animations.
D3 is a data-driven visualization system that can generate SVGs.
Patternodes is a commercial, node-based art creation app for macOS.
Rune.js is a JavaScript SVG generation system.
Urpflanze is a JavaScript SVG generation system, too.
Cuttle shows great promise as a system for controlling cutting machines, but hasn't seen a public release yet.
Apparatus is an earlier iteration of Cuttle with many of its interactive design features.
Plugins
Grasshopper is a plugin for Rhino with a node-based system, and described in Generative Art with Grasshopper3D .
Looper is a plugin for Sketch to Create generative art without coding.
Sverchok is a plugin for Blender to generate art using a node-based workflow.
Lists
Clever Someday's Online SVG Tools is a large list of utilities for 2D cutting machines that may have some overlap with pen plotting.
Inactive
madisonaxi is an inactive Python API for teaching using an AxiDraw, by JR Heard.
SNEK is Anders Hoff's old Common Lisp API.
penplot is Matt DesLauriers' old JavaScript API.
Go Play Space is a turtle graphics API for Go.
scenelib, scenic, and vecdraw are Paul Butler's older Rust-based 3D libraries for pen plotting.