AdaCAD is a monorepo of tools and libraries for algorithmically generating and manipulating woven drafts. Everything below lives in this single repository.
-
packages/ — Libraries and shared code
adacad-drafting-lib— Core data structures and algorithms for draft making and manipulation. Includes all operations code and documentation (if you want to make your own operation, do it here!) and the code to render drafts for simulation. TypeScript library also published as an NPM package.
-
projects/ — Applications and tools
ui— Angular web app that imports the AdaCAD library. Provides the graph of operations and drafts, user/database integrations, and file load/save. Experimental workspace for parametric weave drafting, supporting algorithmic and playful approaches for shaft and jacquard looms. Use it online at adacad.org.docs— Docusaurus site that imports the library and documents operations, with getting started guides and examples. Available at docs.adacad.org.screenshot-generator— Renders each AdaCAD operation in the UI and generates images for keeping operation documentation up to date.
Clone this repository once. To build or run a specific part of the monorepo, see the README at the root of that package or project (e.g. packages/adacad-drafting-lib/README.md, projects/ui/README.md). The UI and docs depend on the library in packages/adacad-drafting-lib, which is typically linked locally in the monorepo.
We invite anyone interested to hack on AdaCAD. If that describes you, you can find support in our Discord channel.
This project is maintained by Laura Devendorf and the Unstable Design Lab. The project is supported by National Science Foundation Grants #2346150, #1943109, and #1755587.
