├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | CC0 1.0 Universal 2 | 3 | Statement of Purpose 4 | 5 | The laws of most jurisdictions throughout the world automatically confer 6 | exclusive Copyright and Related Rights (defined below) upon the creator and 7 | subsequent owner(s) (each and all, an "owner") of an original work of 8 | authorship and/or a database (each, a "Work"). 9 | 10 | Certain owners wish to permanently relinquish those rights to a Work for the 11 | purpose of contributing to a commons of creative, cultural and scientific 12 | works ("Commons") that the public can reliably and without fear of later 13 | claims of infringement build upon, modify, incorporate in other works, reuse 14 | and redistribute as freely as possible in any form whatsoever and for any 15 | purposes, including without limitation commercial purposes. These owners may 16 | contribute to the Commons to promote the ideal of a free culture and the 17 | further production of creative, cultural and scientific works, or to gain 18 | reputation or greater distribution for their Work in part through the use and 19 | efforts of others. 20 | 21 | For these and/or other purposes and motivations, and without any expectation 22 | of additional consideration or compensation, the person associating CC0 with a 23 | Work (the "Affirmer"), to the extent that he or she is an owner of Copyright 24 | and Related Rights in the Work, voluntarily elects to apply CC0 to the Work 25 | and publicly distribute the Work under its terms, with knowledge of his or her 26 | Copyright and Related Rights in the Work and the meaning and intended legal 27 | effect of CC0 on those rights. 28 | 29 | 1. Copyright and Related Rights. A Work made available under CC0 may be 30 | protected by copyright and related or neighboring rights ("Copyright and 31 | Related Rights"). Copyright and Related Rights include, but are not limited 32 | to, the following: 33 | 34 | i. the right to reproduce, adapt, distribute, perform, display, communicate, 35 | and translate a Work; 36 | 37 | ii. moral rights retained by the original author(s) and/or performer(s); 38 | 39 | iii. publicity and privacy rights pertaining to a person's image or likeness 40 | depicted in a Work; 41 | 42 | iv. rights protecting against unfair competition in regards to a Work, 43 | subject to the limitations in paragraph 4(a), below; 44 | 45 | v. rights protecting the extraction, dissemination, use and reuse of data in 46 | a Work; 47 | 48 | vi. database rights (such as those arising under Directive 96/9/EC of the 49 | European Parliament and of the Council of 11 March 1996 on the legal 50 | protection of databases, and under any national implementation thereof, 51 | including any amended or successor version of such directive); and 52 | 53 | vii. other similar, equivalent or corresponding rights throughout the world 54 | based on applicable law or treaty, and any national implementations thereof. 55 | 56 | 2. Waiver. To the greatest extent permitted by, but not in contravention of, 57 | applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and 58 | unconditionally waives, abandons, and surrenders all of Affirmer's Copyright 59 | and Related Rights and associated claims and causes of action, whether now 60 | known or unknown (including existing as well as future claims and causes of 61 | action), in the Work (i) in all territories worldwide, (ii) for the maximum 62 | duration provided by applicable law or treaty (including future time 63 | extensions), (iii) in any current or future medium and for any number of 64 | copies, and (iv) for any purpose whatsoever, including without limitation 65 | commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes 66 | the Waiver for the benefit of each member of the public at large and to the 67 | detriment of Affirmer's heirs and successors, fully intending that such Waiver 68 | shall not be subject to revocation, rescission, cancellation, termination, or 69 | any other legal or equitable action to disrupt the quiet enjoyment of the Work 70 | by the public as contemplated by Affirmer's express Statement of Purpose. 71 | 72 | 3. Public License Fallback. Should any part of the Waiver for any reason be 73 | judged legally invalid or ineffective under applicable law, then the Waiver 74 | shall be preserved to the maximum extent permitted taking into account 75 | Affirmer's express Statement of Purpose. In addition, to the extent the Waiver 76 | is so judged Affirmer hereby grants to each affected person a royalty-free, 77 | non transferable, non sublicensable, non exclusive, irrevocable and 78 | unconditional license to exercise Affirmer's Copyright and Related Rights in 79 | the Work (i) in all territories worldwide, (ii) for the maximum duration 80 | provided by applicable law or treaty (including future time extensions), (iii) 81 | in any current or future medium and for any number of copies, and (iv) for any 82 | purpose whatsoever, including without limitation commercial, advertising or 83 | promotional purposes (the "License"). The License shall be deemed effective as 84 | of the date CC0 was applied by Affirmer to the Work. Should any part of the 85 | License for any reason be judged legally invalid or ineffective under 86 | applicable law, such partial invalidity or ineffectiveness shall not 87 | invalidate the remainder of the License, and in such case Affirmer hereby 88 | affirms that he or she will not (i) exercise any of his or her remaining 89 | Copyright and Related Rights in the Work or (ii) assert any associated claims 90 | and causes of action with respect to the Work, in either case contrary to 91 | Affirmer's express Statement of Purpose. 92 | 93 | 4. Limitations and Disclaimers. 94 | 95 | a. No trademark or patent rights held by Affirmer are waived, abandoned, 96 | surrendered, licensed or otherwise affected by this document. 97 | 98 | b. Affirmer offers the Work as-is and makes no representations or warranties 99 | of any kind concerning the Work, express, implied, statutory or otherwise, 100 | including without limitation warranties of title, merchantability, fitness 101 | for a particular purpose, non infringement, or the absence of latent or 102 | other defects, accuracy, or the present or absence of errors, whether or not 103 | discoverable, all to the greatest extent permissible under applicable law. 104 | 105 | c. Affirmer disclaims responsibility for clearing rights of other persons 106 | that may apply to the Work or any use thereof, including without limitation 107 | any person's Copyright and Related Rights in the Work. Further, Affirmer 108 | disclaims responsibility for obtaining any necessary consents, permissions 109 | or other rights required for any use of the Work. 110 | 111 | d. Affirmer understands and acknowledges that Creative Commons is not a 112 | party to this document and has no duty or obligation with respect to this 113 | CC0 or use of the Work. 114 | 115 | For more information, please see 116 | 117 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![Awesome](https://awesome.re/badge.svg)](https://awesome.re) 2 | [![GitHub Stars](https://img.shields.io/github/stars/elasticdotventures/awesome-openscad?style=social)](https://github.com/elasticdotventures/awesome-openscad) 3 | [![Project Status: WIP](https://www.repostatus.org/badges/latest/wip.svg)](https://www.repostatus.org/#wip) 4 | 5 | ## 🎯 Goal 6 | 7 | Bring more awesomeness and harmony to the OpenSCAD community by curating the best tools, libraries, and resources. 8 | 9 | Contributions welcome! If you maintain an OpenSCAD or related project, please open a PR. 10 | 11 | ## Awesome Communities 12 | 13 | - **OpenSCAD GitHub**: The [official source](https://github.com/openscad/openscad) of OpenSCAD. 14 | - **IRC & Matrix**: Real‑time chat on Libera.Chat (#openscad)
[![Visit our IRC channel](https://kiwiirc.com/buttons/irc.libera.chat/openscad.png)](https://kiwiirc.com/client/irc.libera.chat/#openscad) 15 | - **Reddit**: [r/OpenSCAD](https://reddit.com/r/openscad). 16 | - **Mastodon**: Tag posts with [#OpenSCAD](https://mastodon.social/web/tags/openscad). 17 | 18 | ## PartCad 19 | 20 | A modular design platform supporting OpenSCAD, CadQuery, and Build123d via YAML assemblies. 21 | Includes VS Code integration, OCP Viewer, AI‑assisted model generation, and exports to SVG, PNG, STEP, BREP, STL, 3MF, ThreeJS, and OBJ. If you're wondering how to take OpenSCAD to the next level please show PartCad your love! Start designing modular hardware! PartCAD is the standard for documenting manufacturable physical products. 🤯 22 | [partcad.org](https://partcad.org) | [github.com/partcad](https://github.com/partcad) 23 | 24 | ## Friends of SCAD 25 | 26 | - 🦀 **CSGRS**: [timschmidt/csgrs](https://github.com/timschmidt/csgrs/) — BSP‑based constructive solid geometry in Rust. 27 | - ⚙️ **Fornjot**: [hannobraun/fornjot](https://github.com/hannobraun/fornjot) — Boundary‑representation CAD in Rust. 28 | - 🐍 **CadQuery**: [cadquery/cadquery](https://github.com/cadquery/cadquery) — Python DSL for parametric CAD. 29 | - 🧰 **Build123d**: [gumyr/build123d](https://github.com/gumyr/build123d) — Python BRep library on OpenCascade with context‑manager API for parametric modeling. 30 | - 🧱 **OpenCascade**: [OpenCascade/OpenCascade](https://github.com/Open-Cascade-SAS/OCCT) — C++ CAD kernel and modeling toolkit. 31 | - 📐 **ImplicitCAD**: [Haskell-Things/ImplicitCAD](https://github.com/Haskell-Things/ImplicitCAD) — Haskell‑based parametric CAD (compatibility uncertain). 32 | 33 | ## Language Bindings 34 | 35 | Compositional transpilation and visualization libraries for OpenSCAD. 36 | 37 | ### 🦀 Rust 38 | 39 | - **Rust‑Scad** 40 | - **Repo:** [TheZoq2/Rust-Scad](https://github.com/TheZoq2/Rust-Scad) 41 | - ![Last commit](https://img.shields.io/github/last-commit/TheZoq2/Rust-Scad) 42 | - **Description:** DSL for generating OpenSCAD models using Rust’s type safety and cargo workflow. 43 | 44 | ### 🌐 WebAssembly 45 | 46 | - **openscad-wasm** 47 | - **Repo:** [openscad/openscad-wasm](https://github.com/openscad/openscad-wasm) 48 | - ![Last commit](https://img.shields.io/github/last-commit/openscad/openscad-wasm) 49 | - **Description:** Official WebAssembly port of the OpenSCAD core, enabling in‑browser rendering and editing. 50 | 51 | ### 🐍 Python 52 | 53 | - **OpenPySCAD** 54 | 55 | - **Repo:** [taxpon/openpyscad](https://github.com/taxpon/openpyscad) 56 | - ![Last commit](https://img.shields.io/github/last-commit/taxpon/openpyscad) 57 | - **Description:** Lightweight Python wrapper for programmatic SCAD script generation. 58 | 59 | - **python-threaded-openscad** 60 | - **Repo:** [mrkoz/python-threaded-openscad](https://github.com/mrkoz/python-threaded-openscad) 61 | - ![Last commit](https://img.shields.io/github/last-commit/mrkoz/python-threaded-openscad) 62 | - **Description:** Adds multithreading and non‑blocking OpenSCAD calls to Python workflows. 63 | 64 | #### Notable Python Projects 65 | 66 | - **pyDactyl** 67 | 68 | - **Repo:** [karosc/pyDactyl](https://github.com/karosc/pyDactyl) 69 | - ![Last commit](https://img.shields.io/github/last-commit/karosc/pyDactyl) 70 | - **Description:** Interactive web‑based OpenSCAD editor built atop Python. 71 | 72 | - **pyKeeb** 73 | - **Repo:** [r4dr3fr4d/pykeeb](https://github.com/r4dr3fr4d/pykeeb) 74 | - ![Last commit](https://img.shields.io/github/last-commit/r4dr3fr4d/pykeeb) 75 | - **Description:** Parametric keyboard layout generator combining Python and SCAD. 76 | 77 | ### 🦄 TypeScript 78 | 79 | - **scad-js** 80 | 81 | - **Repo:** [scad-js/scad-js](https://github.com/scad-js/scad-js) 82 | - ![Last commit](https://img.shields.io/github/last-commit/scad-js/scad-js) 83 | - **Description:** Fluent TypeScript API for building SCAD models. 84 | 85 | - **openscad-format** 86 | 87 | - **Repo:** [Maxattax97/openscad-format](https://github.com/Maxattax97/openscad-format) 88 | - ![Last commit](https://img.shields.io/github/last-commit/Maxattax97/openscad-format) 89 | - **Description:** Node.js‑based formatter for `.scad` files. 90 | 91 | - **NodeSCAD** 92 | - **Repo:** [ad-si/nodescad](https://github.com/ad-si/nodescad) 93 | - ![Last commit](https://img.shields.io/github/last-commit/ad-si/nodescad) 94 | - **Description:** Node.js wrapper for invoking OpenSCAD from JavaScript scripts. 95 | 96 | ## Platforms Supporting OpenSCAD Syntax 97 | 98 | - **_OpenSCAD_** 99 | 100 | - _The source of truth for everybody else._ 101 | - **Environment:** Desktop (Windows, Linux, macOS) 102 | - **Syntax & Workflow:** Native script-based (`.scad`) 103 | - **Key Features:** Parametric CSG engine, live preview & render, import/export STL, DXF, SVG, OFF, AMF 104 | - **Status:** Active 105 | - **Link:** [GitHub](https://github.com/openscad/openscad) 106 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/openscad/openscad) 107 | - **Latest release:** ![Release](https://img.shields.io/github/v/release/openscad/openscad) 108 | 109 | - **FreeCAD (OpenSCAD Workbench)** 110 | 111 | - _A venerable free open-source tool featuring an OpenSCAD workbench._ 112 | - **Environment:** Desktop (Windows, Linux, macOS) 113 | - **Syntax & Workflow:** Workbench plugin for `.scad` 114 | - **Key Features:** Import SCAD scripts, hybrid CSG & FEM via Calculix 115 | - **Status:** Active 116 | - **Link:** [GitHub](https://github.com/FreeCAD/FreeCAD) 117 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/FreeCAD/FreeCAD) 118 | - **Latest release:** ![Release](https://img.shields.io/github/v/release/FreeCAD/FreeCAD) 119 | 120 | - **JSCAD (OpenJSCAD.org)** 121 | 122 | - _Previously known as OpenJSCAD, online self-hostable web-based UI and CLI._ 123 | - **Environment:** Web & CLI (Node.js/browser) 124 | - **Syntax & Workflow:** JavaScript-based scripting 125 | - **Key Features:** Browser & CLI tools, parametric 2D/3D in JS, multi-format export (STL, DXF, SVG) 126 | - **Status:** Active 127 | - **Link:** [GitHub](https://github.com/jscad/OpenJSCAD.org) 128 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/jscad/OpenJSCAD.org) 129 | 130 | - **CadHub** 131 | 132 | - **Environment:** Web-based IDE 133 | - **Syntax & Workflow:** Live OpenSCAD editor in browser 134 | - **Key Features:** Integrated IDE, live preview, console, parameter customizer 135 | - **Status:** Beta 136 | - **Link:** [cadhub.xyz](https://cadhub.xyz) / [GitHub](https://github.com/Irev-Dev/cadhub) 137 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/Irev-Dev/cadhub) 138 | 139 | - **Blender‑openSCAD** 140 | 141 | - **Environment:** Blender plugin 142 | - **Syntax & Workflow:** Embed OpenSCAD in Blender via WASM/Rust 143 | - **Key Features:** Shared engine integration, cargo installer 144 | - **Status:** Preview 145 | - **Link:** [GitHub](https://github.com/elasticdotventures/blender-openSCAD) 146 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/elasticdotventures/blender-openSCAD) 147 | 148 | - **RapCAD** 149 | 150 | - **Environment:** Desktop (C++/Qt) 151 | - **Syntax & Workflow:** OpenSCAD‑compatible IDE 152 | - **Key Features:** MPFR/GMP arbitrary precision, multithreading, CGAL backend, dynamic arrays 153 | - **Status:** Maintained 154 | - **Link:** [GitHub](https://github.com/GilesBathgate/RapCAD) 155 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/GilesBathgate/RapCAD) 156 | - **Latest release:** ![Release](https://img.shields.io/github/v/release/GilesBathgate/RapCAD) 157 | 158 | - **Libre3D (`render-3d`)** 159 | 160 | - **Environment:** PHP library (server-side) 161 | - **Syntax & Workflow:** PHP wrapper that invokes OpenSCAD and POV‑Ray via Composer allowing you to load SCAD/STL/OBJ, convert to POV format, then render to PNG/SVG. 162 | - **Key Features:** Composer-installed (~1.2.0) PHP wrapper with autoload support; configurable working directory, executable paths, image dimensions, and buffer modes; automatic STL→POV conversion and rendering using a dynamic grid scene, with optional buffered or direct output. 163 | - **Status:** Maintained 164 | - **Link:** [GitHub](https://github.com/libre3d/render-3d) 165 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/libre3d/render-3d) 166 | - **Latest release:** ![Release](https://img.shields.io/github/v/release/libre3d/render-3d) 167 | 168 | - **OpenSCAD.cloud** 169 | 170 | - **Environment:** Web-based (Browser) 171 | - **Syntax & Workflow:** WASM port of OpenSCAD 172 | - **Key Features:** Live editing, multi‑file support, shareable links, STL export 173 | - **Status:** Beta 174 | - **Link:** [openscad.cloud](https://openscad.cloud/) / [GitHub](https://github.com/Autodrop3d/openscad.cloud) 175 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/Autodrop3d/openscad.cloud) 176 | 177 | - **ZenCad** 178 | 179 | - **Environment:** Desktop (Python + Qt) 180 | - **Syntax & Workflow:** OpenSCAD‑style scripting in Python, backed by the OpenCASCADE kernel 181 | - **Key Features:** Interactive REPL & GUI, Jupyter support, advanced B‑Rep ops (sweeps, lofts), mesh analysis, standalone or embeddable in Python scripts 182 | - **Status:** Active 183 | - **Link:** [GitHub](https://github.com/mirmik/zencad) | [Docs](https://mirmik.github.io/zencad/en/index.html) 184 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/mirmik/zencad) 185 | 186 | - **BlocksCAD** 187 | 188 | - **Environment:** Web-based (Blockly) 189 | - **Syntax & Workflow:** Block-based OpenSCAD with code view toggle 190 | - **Key Features:** Drag‑and‑drop, XML/SCAD export 191 | - **Status:** Active 192 | - **Link:** [blockscad3d.com](https://www.blockscad3d.com/) 193 | 194 | - **Models @ MakeWithTech** 195 | 196 | - **Environment:** Web-based customizer 197 | - **Syntax & Workflow:** Forms-based parameter input 198 | - **Key Features:** Thingiverse search, UI forms, high‑capacity rendering 199 | - **Status:** Active 200 | - **Link:** [models.makewithtech.com](https://models.makewithtech.com/) 201 | 202 | ## Editor & IDE Extensions 203 | 204 | - **VS Code (OpenSCAD Language Support)** 205 | 206 | - **Environment:** Desktop IDE 207 | - **Syntax & Workflow:** LSP-based support for `.scad` 208 | - **Key Features:** Formatter (Topiary), auto‑completion, jump to definition, hover docs, symbols, error diagnostics, preview & cheatsheet 209 | - **Status:** Active 210 | - **Link:** [GitHub - openscad-LSP](https://github.com/Leathong/openscad-LSP), [Marketplace](https://marketplace.visualstudio.com/items?itemName=Leathong.openscad-language-support) / [GitHub - openscad-support-vscode](https://github.com/Leathong/openscad-support-vscode) 211 | - **Last commit (VSC support):** ![Last commit](https://img.shields.io/github/last-commit/Leathong/openscad-support-vscode) 212 | - **Last commit (LSP):** ![Last commit](https://img.shields.io/github/last-commit/Leathong/openscad-LSP) 213 | - **Latest release (LSP):** ![Release](https://img.shields.io/github/v/release/Leathong/openscad-LSP?include_prereleases) 214 | 215 | - **VS Code (Antyos OpenSCAD Extension)** 216 | 217 | - **Environment:** Desktop IDE 218 | - **Syntax & Workflow:** VS Code extension using TextMate grammar and command palette integration for `.scad` files 219 | - **Key Features:** 220 | - Syntax highlighting for built‑in and user modules 221 | - Customizer syntax support (drop‑downs, sliders, tabs) 222 | - Preview in OpenSCAD & Export Model buttons 223 | - Code snippets for common patterns 224 | - Built‑in OpenSCAD cheatsheet 225 | - **Status:** Active (37K+ installs) 226 | - **Link:** [Marketplace](https://marketplace.visualstudio.com/items?itemName=Antyos.openscad) / [GitHub](https://github.com/Antyos/vscode-openscad) 227 | - **Last commit:** ![Last commit](https://img.shields.io/github/last-commit/Antyos/vscode-openscad) 228 | - **Latest release (LSP):** ![Release](https://img.shields.io/github/v/release/Antyos/vscode-openscad?include_prereleases) 229 | 230 | - **Code Editors** (Netbeans, Vim, Emacs, Atom) 231 | 232 | - **Environment:** Local editors 233 | - **Syntax & Workflow:** Syntax highlighting & LSP 234 | - **Key Features:** Language Server Protocol support, diagnostics (varies by editor) 235 | - **Status:** Experimental 236 | - **Link:** [LSP GitHub PR](https://github.com/openscad/openscad/pull/3635) 237 | 238 | ## Core Libraries 239 | 240 | - **2D Connection Library** 241 | 242 | - [YouMagine](https://www.youmagine.com/designs/openscad-2d-connection-library) 243 | - **Description:** A set of OpenSCAD modules for creating 2D interlocking tabs and slots, ideal for laser‑cut assemblies (e.g., tripods, handles, camera mounts). 244 | 245 | - **Celtic Knots** 246 | 247 | - [beanz/celtic-knot-scad](https://github.com/beanz/celtic-knot-scad) 248 | - ![Last commit](https://img.shields.io/github/last-commit/beanz/celtic-knot-scad) 249 | - **Description:** Parametric generator for intricate interlaced Celtic knot patterns, configurable by curve resolution, strand count, and line thickness. 250 | 251 | - **MCAD: Parametric CAD Library** 252 | 253 | - [openscad/MCAD](https://github.com/openscad/MCAD) 254 | - ![Last commit](https://img.shields.io/github/last-commit/openscad/MCAD) 255 | - **Description:** General-purpose library of mechanical primitives including gears, springs, bearings, fasteners, and structural profiles. Released under CC0 for open reuse. 256 | 257 | - **Shapes** 258 | 259 | - [Thingiverse](https://www.thingiverse.com/thing:212041) 260 | - **Description:** Collection of basic parametric shape primitives (boxes, cylinders, spheres) and helper modules for rapid prototyping in OpenSCAD. 261 | 262 | - **U‑Joint Library** 263 | 264 | - [Thingiverse](https://www.thingiverse.com/thing:125939) 265 | - **Description:** Parametric modules for designing universal joints, allowing adjustment of shaft diameters, flange dimensions, and cross‑section geometry. 266 | 267 | - **SCAD Utils** 268 | 269 | - [OskarLinde/scad-utils](https://github.com/OskarLinde/scad-utils) 270 | - ![Last commit](https://img.shields.io/github/last-commit/OskarLinde/scad-utils) 271 | - **Description:** A toolkit of functions for boolean operations, morphological transformations, array manipulation, and utility math aiming to extend OpenSCAD’s core capabilities. 272 | 273 | - **FunctionalOpenSCAD** 274 | 275 | - **Repo:** [thehans/FunctionalOpenSCAD](https://github.com/thehans/FunctionalOpenSCAD) 276 | - ![Last commit](https://img.shields.io/github/last-commit/thehans/FunctionalOpenSCAD) 277 | - **Description:** Re‑implements OpenSCAD’s built‑in modules as pure functions operating on mesh data (`poly`), exposing vertex, path, and face geometry for advanced shape analysis, custom transformations, and algorithmic modeling entirely within user scripts. 278 | 279 | - **funcutils** 280 | 281 | - **Repo:** [thehans/funcutils](https://github.com/thehans/funcutils) 282 | - ![Last commit](https://img.shields.io/github/last-commit/thehans/funcutils) 283 | - **Description:** A collection of functional programming utilities for OpenSCAD modeled after C++ STL algorithms, providing higher‑order functions (map, filter, fold), list manipulation, math, string, and type‑checking operations via function‑literals to create expressive, reusable modules. 284 | 285 | - **dotSCAD** 286 | 287 | - **Repo:** [JustinSDK/dotSCAD](https://github.com/JustinSDK/dotSCAD) 288 | - ![Last commit](https://img.shields.io/github/last-commit/JustinSDK/dotSCAD) 289 | - **Description:** Vast collection of math‑ and geometry‑focused modulessuch as arcs, spirals, Béziers, splines, hulls, lofts, sweeps, and path/region operations. 290 | 291 | - **BOSL2** 292 | 293 | - **Repo:** [BelfrySCAD/BOSL2](https://github.com/BelfrySCAD/BOSL2) 294 | - ![Last commit](https://img.shields.io/github/last-commit/BelfrySCAD/BOSL2) 295 | - **Description:** An “everything” library of shapes, masks, math routines, attachment‑based positioning, rounding/filleting, texture embossing, VNF/polygon operations, shorthands, and a parts library (gears, threads, hinges, etc.) to simplify advanced OpenSCAD modeling. 296 | 297 | - **agentscad** 298 | 299 | - **Repo:** [GillesBouissac/agentscad](https://github.com/GillesBouissac/agentscad) 300 | - ![Last commit](https://img.shields.io/github/last-commit/GillesBouissac/agentscad) 301 | - **Description:** Utilities for parametric modeling: canvas & lithophane generators, snap‑joint and Hirth joint modules, detailed threaded‑screw implementations (metric, UNC/UNF, BSW/BSF), beveling, glue‑shape locators, and PCB/box shell templates. 302 | 303 | - **OpenSCADutil** 304 | 305 | - **Repo:** [franpoli/OpenSCADutil](https://github.com/franpoli/OpenSCADutil) 306 | - ![Last commit](https://img.shields.io/github/last-commit/franpoli/OpenSCADutil) 307 | - **Description:** Curated collection of accessory and utility modules: IKEA Skådis pegboard accessories, knurled knobs, soldering‑sponge templates, AirTag cases, and other workflow‑focused scripts for rapid OpenSCAD prototyping. 308 | 309 | - **NopSCADlib** 310 | 311 | - **Repo:** [nophead/NopSCADlib](https://github.com/nophead/NopSCADlib) 312 | - ![Last commit](https://img.shields.io/github/last-commit/nophead/NopSCADlib) 313 | - **Description:** Comprehensive parts and utility framework: motor mounts, electronic housings, chamfers, fillets, precision holes, BOM & DXF generators, automated documentation and exploded‑view assembly scripts for complex OpenSCAD projects. 314 | 315 | - **BH-Lib** 316 | 317 | - **Repo:** [brandonhill/BH-Lib](https://github.com/brandonhill/BH-Lib) 318 | - ![Last commit](https://img.shields.io/github/last-commit/brandonhill/BH-Lib) 319 | - **Description:** Comprehensive collection of OpenSCAD helper functions and modules including geometry transforms (clamp, offset, chamfer), 2D/3D primitives (rounded_cube, torus, capsule), and parametric hardware components (gears, beams, fasteners). 320 | 321 | - **Orientation Models** 322 | 323 | - **Repo:** [tanius/openscad-models](https://github.com/tanius/openscad-models) 324 | - ![Last commit](https://img.shields.io/github/last-commit/tanius/openscad-models) 325 | - **Description:** Personal archive of fully parametric OpenSCAD experiments and designs, ranging from mechanical parts to decorative patterns, illustrating real-world code-driven CAD workflows and advanced shape generation techniques. 326 | 327 | - **OMDL (Mechanical Design Library)** 328 | 329 | - **Repo:** [royasutton/omdl](https://github.com/royasutton/omdl) 330 | - ![Last commit](https://img.shields.io/github/last-commit/royasutton/omdl) 331 | - **Description:** Documented mechanical toolkit offering beams, brackets, fasteners, polyhedron utilities, and test suites; includes a setup script for library installation and an automated API site (v0.6), all under LGPL for open-hardware projects. 332 | 333 | - **openSCAD_functions** 334 | 335 | - **Repo:** [dinther/openSCAD_functions](https://github.com/dinther/openSCAD_functions) 336 | - ![Last commit](https://img.shields.io/github/last-commit/dinther/openSCAD_functions) 337 | - **Description:** Modular library of standalone, well-documented functions covering tasks like chamfers, coordinate conversions, mesh processing, and Boolean utilities, optimized for minimal dependencies. Each is self-contained within it's respective directory along with demo scripts. 338 | 339 | - **openscad-fiddlybits** 340 | 341 | - **Repo:** [mathcodeprint/openscad-fiddlybits](https://github.com/mathcodeprint/openscad-fiddlybits) 342 | - ![Last commit](https://img.shields.io/github/last-commit/mathcodeprint/openscad-fiddlybits) 343 | - **Description:** Lightweight toolkit of focused SCAD scripts aimed at streamlining common modeling chores. Provides dimension arrows, explode-view helpers, object-array generators, and parametric bearing models. 344 | 345 | - **Lofting** 346 | 347 | - **Repo:** [jakubczaplicki/this-to-that](https://github.com/jakubczaplicki/this-to-that) 348 | - ![Last commit](https://img.shields.io/github/last-commit/jakubczaplicki/this-to-that) 349 | - **Description:** Implements profile lofting in pure OpenSCAD by interpolating between two or more 2D cross-sections to create smooth, organic 3D shapes. Includes usage examples, parameter controls for interpolation steps, and support for multi-profile transitions. 350 | 351 | - **JOSL Rack** 352 | 353 | - **Repo:** [jernst/josl](https://github.com/jernst/josl) ![Last commit](https://img.shields.io/github/last-commit/jernst/josl) 354 | - **Description:** A general-purpose OpenSCAD library by Johannes (“JOSL”) that organizes reusable modules for splitting oversized models with various joint types, generating Bezier paths, and rendering 7×5‑pixel text for etching or engraving. Set up via your `OPENSCADPATH` to include example scripts and demos. 355 | 356 | ## Tutorials & Workflows 357 | 358 | - **Naminukas Workflow** 359 | 360 | - **Repo:** [kikaitachi/naminukas](https://github.com/kikaitachi/naminukas) 361 | - ![Last commit](https://img.shields.io/github/last-commit/kikaitachi/naminukas) 362 | - **Description:** A reference parametric design pipeline showcasing best practices: JSON‑driven parameter files, modular SCAD includes, Makefile automation for batch renders, and variant generation. Ideal for structuring scalable OpenSCAD projects and automated output workflows. 363 | 364 | - **OpenSCADObjects** 365 | 366 | - **Repo:** [jeffbarr/OpenSCADObjects](https://github.com/jeffbarr/OpenSCADObjects) 367 | - ![Last commit](https://img.shields.io/github/last-commit/jeffbarr/OpenSCADObjects) 368 | - **Description:** A curated collection of over 75 handcrafted parametric, customizer‑enabled objects designed for easy adaptation and rapid FDM printing. Features various geometric tessellations, functional parts, and decor models. 369 | 370 | - **Cookie Cutters** 371 | 372 | - **Repo:** [benjaminwand/cookie-cutters](https://github.com/benjaminwand/cookie-cutters) 373 | - ![Last commit](https://img.shields.io/github/last-commit/benjaminwand/cookie-cutters) 374 | - **Description:** A collection of example OpenSCAD scripts generating a variety of cookie cutter shapes (e.g., geometric bases, novelty forms like rockets and viruses). Demonstrates Bézier-curve-based outline modeling and provides tutorial links for learning curve mathematics. 375 | 376 | ## Data Exchange & Automation 377 | 378 | ### Import Tools 379 | 380 | - **svg2dxf** 381 | 382 | - **Repo:** [Zigazou/svg2dxf](https://github.com/Zigazou/svg2dxf) ![Last commit](https://img.shields.io/github/last-commit/Zigazou/svg2dxf) 383 | - **Description:** Bash script using Inkscape and pstoedit to convert SVG files into DXF format, enabling crisp 2D vector imports for extrusion and boolean operations in OpenSCAD. 384 | 385 | - **SVG2SCAD** 386 | 387 | - **Repo:** [Spiritdude/SVG2SCAD](https://github.com/Spiritdude/SVG2SCAD) ![Last commit](https://img.shields.io/github/last-commit/Spiritdude/SVG2SCAD) 388 | - **Description:** Perl utility that parses SVG path data and outputs OpenSCAD `polygon()` definitions, preserving Bézier curves and facilitating both linear and rotational extrusions. 389 | 390 | - **fzz2scad** 391 | 392 | - **Repo:** [htho/fzz2scad](https://github.com/htho/fzz2scad) ![Last commit](https://img.shields.io/github/last-commit/htho/fzz2scad) 393 | - **Description:** Python tool that reads Fritzing `.fzz` circuit files and generates parametric SCAD modules for PCB outlines and front panels, streamlining custom enclosure creation. 394 | 395 | - **Litho Research** 396 | 397 | - **Repo:** [Harakan/litho_research](https://github.com/Harakan/litho_research) ![Last commit](https://img.shields.io/github/last-commit/Harakan/litho_research) 398 | - **Description:** Experimental toolkit for automating raster‑to‑3D workflows: converts JPEG/PNG/BMP inputs into lithophane or relief STL models using custom SCAD modules (`lithopane`, `fromscad`) along with Potrace and triangulation tools. Includes example scripts and git submodule integration. 399 | 400 | ### EDA Imports 401 | 402 | - **KiCad Libraries** 403 | 404 | - **Repo:** [mplewis/kicad-libraries](https://github.com/mplewis/kicad-libraries) ![Last commit](https://img.shields.io/github/last-commit/mplewis/kicad-libraries) 405 | - **Description:** Parametric OpenSCAD modules for common PCB footprints (SMD, through-hole, connectors) that match KiCad designs, simplifying integration of electronics into 3D-printed cases. 406 | 407 | - **GerbToSCAD** 408 | - **Repo:** [drujensen/GerbToSCAD](https://github.com/drujensen/GerbToSCAD) ![Last commit](https://img.shields.io/github/last-commit/drujensen/GerbToSCAD) 409 | - **Description:** Parses Gerber PCB files to generate 3D SCAD models of copper layers and board outlines, enabling rapid prototyping of board housings and mechanical fixtures. 410 | 411 | ### Export Tools 412 | 413 | - **Image Generator** 414 | 415 | - **Repo:** [openscad/image-generator](https://github.com/openscad/image-generator) ![Last commit](https://img.shields.io/github/last-commit/openscad/image-generator) 416 | - **Description:** Node.js service that renders SCAD scripts to PNG or SVG via a headless OpenSCAD process, ideal for automated thumbnail creation and documentation galleries. 417 | 418 | - **OpenSCAD Batch Export** 419 | - **Repo:** [CameronBrooks11/OpenSCAD-Batch-Export](https://github.com/CameronBrooks11/OpenSCAD-Batch-Export) ![Last commit](https://img.shields.io/github/last-commit/CameronBrooks11/OpenSCAD-Batch-Export) ![Release](https://img.shields.io/github/v/release/CameronBrooks11/OpenSCAD-Batch-Export?include_prereleases) 420 | - **Description:** CLI and GUI tool for batch-exporting multiple STL files from a single SCAD model using CSV or JSON parameter files. 421 | 422 | ### Automation Utilities 423 | 424 | - **openscad-amu** 425 | 426 | - **Repo:** [royasutton/openscad-amu](https://github.com/royasutton/openscad-amu) ![Last commit](https://img.shields.io/github/last-commit/royasutton/openscad-amu) 427 | - **Description:** Makefile-based automake utilities for scaffolding SCAD projects, resolving library dependencies, generating documentation, and packaging reusable component libraries. 428 | 429 | - **scadlib** 430 | 431 | - **Repo:** [htho/scadlib](https://github.com/htho/scadlib) 432 | - ![Last commit](https://img.shields.io/github/last-commit/htho/scadlib) 433 | - **Description:** CLI toolkit for creating, scaffolding, and documenting OpenSCAD libraries. Includes `scadtool.py` for project management and `SCADDOC` spec for inline module/function annotations. 434 | 435 | ## 3D Printing Utilities 436 | 437 | - **Print3r** 438 | 439 | - **Repo:** [Spiritdude/Print3r](https://github.com/Spiritdude/Print3r) 440 | - ![Last commit](https://img.shields.io/github/last-commit/Spiritdude/Print3r) 441 | - **Description:** A versatile CLI tool for slicing and printing 3D models (`.scad`, `.stl`, `.obj`, `.3mf`, etc.) across multiple slicers (Slic3r, PrusaSlicer, CuraEngine, SuperSlicer) with built‑in support for scaling, rotating, translating, random placement, auto‑centering, batch multiplication of parts, slicer‑independent settings (temperature, layer height, infill density, perimeters), interactive Gcode console, and PNG preview generation 442 | 443 | - **Anti‑warp Walls** 444 | - **Repo:** [JohnStrunk/WhateverSCAD](https://github.com/JohnStrunk/WhateverSCAD) 445 | - ![Last commit](https://img.shields.io/github/last-commit/JohnStrunk/WhateverSCAD) 446 | - **Description:** Parametric OpenSCAD modules (`WWall`, `SWall`) that generate wave‑ or zig‑zag‑patterned walls to introduce relief areas and mitigate shrinkage‑induced warping in ABS prints, with optional solid framing for seamless integration into larger designs 447 | 448 | ## Assemblies & Multi‑Part 449 | 450 | - **Constructive** 451 | 452 | - **Repo:** [solidboredom/constructive](https://github.com/solidboredom/constructive) 453 | - ![Last commit](https://img.shields.io/github/last-commit/solidboredom/constructive) 454 | - **Description:** Introduces a “stamping” DSL on top of OpenSCAD to concisely create interlocking mechanical parts (boxes, tubes, strips) and assemblies without heavy use of `difference()` or loops, focusing on assembly-oriented syntax for rapid prototyping. 455 | 456 | - **Machine Design Framework** 457 | 458 | - **Repo:** [Axford/OpenSCADMachineDesignFramework](https://github.com/Axford/OpenSCADMachineDesignFramework) 459 | - ![Last commit](https://img.shields.io/github/last-commit/Axford/OpenSCADMachineDesignFramework) 460 | - **Description:** A reusable project template and module library for complex machine designs (CNC, robotics), providing standardized folder structure, dependency loading, kinematic helpers, and animation utilities to streamline large-scale OpenSCAD projects. 461 | 462 | - **MoCad** 463 | 464 | - **Repo:** [davidthings/mocad](https://github.com/davidthings/mocad) 465 | - ![Last commit](https://img.shields.io/github/last-commit/davidthings/mocad) 466 | - **Description:** Offers a high‑level parts library where each part includes “Positions” (points + orientations) for easy connection and assembly; includes modules for common mechanical components and helper functions for position manipulation and coordinate maths. 467 | 468 | ## Electrical & Electronics 469 | 470 | - **Electro‑Mech Components** 471 | 472 | - **Repo:** [htho/scadlib-electronic-components](https://github.com/htho/scadlib-electronic-components) 473 | - ![Last commit](https://img.shields.io/github/last-commit/htho/scadlib-electronic-components) 474 | - **Description:** Supplement to the `scadlib` toolkit providing parametric modules for electronic parts such as resistors, capacitors, headers, and sensors with mounting holes and footprint templates for rapid PCB-integrated design. 475 | 476 | - **Coax Trap Form** 477 | 478 | - **Repo:** [SmittyHalibut/coax-trap-form](https://github.com/SmittyHalibut/coax-trap-form) 479 | - ![Last commit](https://img.shields.io/github/last-commit/SmittyHalibut/coax-trap-form) 480 | - **Description:** Parametric OpenSCAD model for designing coaxial trap coil forms used in multi‑band HF wire antennas. Users can adjust coil form diameter, number of turns, coaxial cable diameter, bolt hole size, and form thickness to generate STL-ready trap bodies. Includes example presets for 7.2 MHz (40/80 m) and 14.15 MHz (20 m) traps based on ARRL Antenna Handbook specifications. 481 | 482 | - **Horizontal Server Rack** 483 | 484 | - **Repo:** [cromo/horizontal-rack](https://github.com/cromo/horizontal-rack) ![Last commit](https://img.shields.io/github/last-commit/cromo/horizontal-rack) 485 | - **Description:** Parametric OpenSCAD design for a compact horizontal (hanging) server rack. Configure rack width, depth, mounting hole positions, and clearance for server rails, then render 2D layouts or 3D preview. 486 | 487 | - **KiCad Libraries** 488 | - **Repo:** [willdurand/kicad-libs](https://github.com/willdurand/kicad-libs) ![Last commit](https://img.shields.io/github/last-commit/willdurand/kicad-libs) 489 | - **Description:** William Durand’s collection of KiCad schematic symbols, PCB footprints, and corresponding 3D shapes (STEP) generated via OpenSCAD and converted in FreeCAD. Includes connectors (e.g., GameBoy slot), crystal oscillator packages, and utilities for seamless Eeschema/Pcbnew integration. 490 | 491 | ## Robotics CAD 492 | 493 | - **mushr_cad** 494 | 495 | - **Repo:** [prl-mushr/mushr_cad](https://github.com/prl-mushr/mushr_cad) 496 | - ![Last commit](https://img.shields.io/github/last-commit/prl-mushr/mushr_cad) 497 | - **Description:** Full parametric OpenSCAD CAD library for the MuSHR robotic racecar platform. Includes design files for chassis, bumper, electronics mounts, and multiple versions (v2, v3), plus STL output directories for 3D printing. Blender scenes are provided to assemble and colorize parts. 498 | 499 | - **lablock** 500 | - **Repo:** [fablab-nea/lablock](https://github.com/fablab-nea/lablock) 501 | - ![Last commit](https://img.shields.io/github/last-commit/fablab-nea/lablock) 502 | - **Description:** Parametric door‑locking mechanism for FabLabs and hackerspaces. Generates mounting plates, latch bodies, and actuator interfaces that fit standard knob‑cylinder locks, with customizable dimensions for different door thicknesses and handle sizes. 503 | 504 | ## Mechanical Components 505 | 506 | ### Threads 507 | 508 | - **ThreadLib** 509 | 510 | - **Repo:** [adrianschlatter/threadlib](https://github.com/adrianschlatter/threadlib) 511 | - ![Last commit](https://img.shields.io/github/last-commit/adrianschlatter/threadlib) 512 | - **Description:** Comprehensive library of standard threads (metric, imperial, BSP, PCO, RMS) with built-in spec tables, lead-in/out tapers, and configurable resolutions for easy creation of bolts, nuts, and taps without manual dimension lookup. 513 | 514 | - **Cap Generator** 515 | 516 | - **Repo:** [muesli/cap-generator](https://github.com/muesli/cap-generator) 517 | - ![Last commit](https://img.shields.io/github/last-commit/muesli/cap-generator) 518 | - **Description:** Parametric OpenSCAD module for thumb-cap generation: customize cap height, diameter, knurl pattern, and thread profile; designed for 3D printing PETG/PLA with ready-to-print examples and printing tips. 519 | 520 | - **Metric Threads** 521 | 522 | - **Repo:** [gabfv/scad-metric-thread-library](https://github.com/gabfv/scad-metric-thread-library) 523 | - ![Last commit](https://img.shields.io/github/last-commit/gabfv/scad-metric-thread-library) 524 | - **Description:** Remix of an ISO metric thread library offering functions to create bolts, nuts, threaded holes, and insert-style screws; tweaked for Cura compatibility and real-world steel hardware dimensions. 525 | 526 | - **Threads** 527 | 528 | - [dkprojects.net/openscad-threads](http://dkprojects.net/openscad-threads) 529 | - **Description:** Utilities for modeling metric and imperial screw threads with customizable pitch, major/minor diameters, and thread profiles. 530 | 531 | ### Screws, Nuts & Bolts 532 | 533 | - **nutsnbolts** 534 | 535 | - **Repo:** [JohK/nutsnbolts](https://github.com/JohK/nutsnbolts) 536 | - ![Last commit](https://img.shields.io/github/last-commit/JohK/nutsnbolts) 537 | - **Description:** ISO metric fastener generator: `screw("MxL")`, `nut()`, `hole_through()`, `nutcatch_parallel()/nutcatch_sidecut()` modules enable insertion of realistic screws and nuts with adjustable clearances. Supports optional modeled threads, material color macros, and a consistent origin convention for simple assembly integration. 538 | 539 | - **ScrewsMetric** 540 | 541 | - **Repo:** [More-Wrong/ScrewsMetric](https://github.com/More-Wrong/ScrewsMetric) 542 | - ![Last commit](https://img.shields.io/github/last-commit/More-Wrong/ScrewsMetric) 543 | - **Description:** Database-driven library of ISO‑standard metric fasteners including bolts, nuts, washers, bearings with precise dimensions, tolerance options, and parameter-driven interfaces for embedding hardware into designs. 544 | 545 | - **usagi.scad** 546 | 547 | - **Repo:** [usagi/usagi.scad](https://github.com/usagi/usagi.scad) 548 | - ![Last commit](https://img.shields.io/github/last-commit/usagi/usagi.scad) 549 | - **Description:** Japanese-origin OpenSCAD library offering JIS/ISO-compliant parametric modules for bolts, nuts, washers, and structural profiles, emphasizing part fidelity and standards adherence. 550 | 551 | - **BOLTS: Open Library of Technical Specifications** 552 | 553 | - [boltsparts/boltsparts](https://github.com/boltsparts/boltsparts) 554 | - ![Last commit](https://img.shields.io/github/last-commit/boltsparts/boltsparts) 555 | - **Description:** Standardized library for generating parametric nuts, bolts, washers, and fastener interfaces conforming to ISO/ANSI dimensions, with easy global or local installation. 556 | 557 | - **BOLTS (archive)** 558 | 559 | - [boltsparts/BOLTS_archive](https://github.com/boltsparts/BOLTS_archive) 560 | - ![Last commit](https://img.shields.io/github/last-commit/boltsparts/BOLTS_archive) 561 | - **Description:** Archive, the repository was renamed a new repository was created. For the new repository some not needed data was stripped and the history rewritten. 562 | 563 | ### Gears 564 | 565 | - **OpenSCAD Gear Generator** 566 | 567 | - **Repo:** [chrisspen/gears](https://github.com/chrisspen/gears) 568 | - ![Last commit](https://img.shields.io/github/last-commit/chrisspen/gears) 569 | - **Description:** Full-featured gear toolkit for racks, spur, helical, ring, bevel, worm, and planetary gears; supports DIN-compliant involute profiles, pressure-angle/helix-angle adjustments, herringbone options, and assembled vs. unassembled output. 570 | 571 | - **Lens Gears** 572 | 573 | - **Link:** [Jaymis – Lens Gears Blog](https://jaymis.com/2015/11/3d-printable-seamless-friction-fit-lens-gears-for-follow-focus/) 574 | - **Description:** OpenSCAD script (plus 100 pre-generated STLs) to create friction-fit follow-focus rings for camera lenses (50–100 mm diameters in 0.5 mm steps); includes measurement guidance, shrinkage compensation, and Customizer support for arbitrary sizes. 575 | 576 | - **Spherical Bevel Gears** 577 | - **Repo:** [JediJeremy/BevelGears](https://github.com/JediJeremy/BevelGears) 578 | - ![Last commit](https://img.shields.io/github/last-commit/JediJeremy/BevelGears) 579 | - **Description:** Alpha-stage library for generating spherical involute bevel gear pairs in OpenSCAD using list comprehensions; customizable gear geometry for non-planar meshing, requires OpenSCAD 2019.05 or later. 580 | 581 | ### Bearings & Belts 582 | 583 | - **scad_libraries** 584 | - **Repo:** [phidiasllc/scad_libraries](https://github.com/phidiasllc/scad_libraries) 585 | - ![Last commit](https://img.shields.io/github/last-commit/phidiasllc/scad_libraries) 586 | - **Description:** Parametric models for common motion components including ball and roller bearings, timing and V‑belts, pulleys, sprockets, gears, shafts as well as helper modules for groove machining and belt tensioners. Aims to simplify the design of mechanical power-transmission assemblies. 587 | 588 | ### Pumps 589 | 590 | - **Peristaltic Pump (TomHodson)** 591 | 592 | - **Repo:** [TomHodson/Peristaltic-Pump](https://github.com/TomHodson/Peristaltic-Pump) 593 | - ![Last commit](https://img.shields.io/github/last-commit/TomHodson/Peristaltic-Pump) 594 | - **Description:** Design files for a 3D‑printable peristaltic pump head optimized for flexible tubing and low-shear fluid handling. Consists of a rotor with an adjustable roller count, the housing with inlet/outlet ports, and mounting flanges. 595 | 596 | - **Peristaltic Pump (adricl)** 597 | 598 | - **Repo:** [adricl/peristaltic-pump](https://github.com/adricl/peristaltic-pump) 599 | - ![Last commit](https://img.shields.io/github/last-commit/adricl/peristaltic-pump) 600 | - **Description:** Slim peristaltic pump SCAD library providing a compact pump head module with parameterized tube diameter, rotor spacing, and housing thickness for integration into automated fluidic systems. 601 | 602 | - **Moineau Pump** 603 | - **Repo:** [doctek/Moineau-Paste-Extruder](https://github.com/doctek/Moineau-Paste-Extruder) 604 | - ![Last commit](https://img.shields.io/github/last-commit/doctek/Moineau-Paste-Extruder) 605 | - **Description:** Parametric progressive‑cavity (Moineau) pump design for paste extrusion. The design consists of the rotor and stator geometries, mounting adapter, and mounting bracket which supports variable pitch, rotor length, and stator thickness for granular control of extrusion flow. 606 | 607 | ### Funnels & Couplings 608 | 609 | - **Cylindrical Couplings** 610 | - **Repo:** [alexbirklykke/openscad](https://github.com/alexbirklykke/openscad) 611 | - ![Last commit](https://img.shields.io/github/last-commit/alexbirklykke/openscad) 612 | - **Description:** Provides two SCAD modules: 1. `funnel()` for smooth tapered transitions between differing diameters and 2. `cylindrical_coupling()` for creating seamless pipe couplings. Parameters include inlet/outlet diameters, length, wall thickness, and optional chamfer/rim details, ideal for fluid or ducting connectors. 613 | 614 | ### Joints 615 | 616 | - **JointSCAD** 617 | - **Repo:** [HopefulLlama/JointSCAD](https://github.com/HopefulLlama/JointSCAD) 618 | - ![Last commit](https://img.shields.io/github/last-commit/HopefulLlama/JointSCAD) 619 | - **Description:** Single-stop library for parametric joinery: includes bridle, dovetail, dowel, finger, mortise & tenon (standard, pinned, shouldered), scarf, and other joint modules. Exposes modular functions (e.g. `dovetailJointA(dimensions, count)`) to split prints and assemble mechanical or woodworking parts precisely. 620 | 621 | ### Wheels & Pulleys 622 | 623 | - **Pulley Models** 624 | 625 | - **Repo:** [ElectricSkateboard/SolidModels](https://github.com/ElectricSkateboard/SolidModels) 626 | - ![Last commit](https://img.shields.io/github/last-commit/ElectricSkateboard/SolidModels) 627 | - **Description:** Parametric OpenSCAD models for power‑transmission components as well as motor mounts and sprocket examples for hobby robotics. Features GT2, T‑MXL, XL, HTD pulley profiles with customizable tooth count and belt compatibility. 628 | 629 | - **Configurable Wheel** 630 | 631 | - **Repo:** [alexfranke/Highly-Configurable-Wheel](https://github.com/alexfranke/Highly-Configurable-Wheel) 632 | - ![Last commit](https://img.shields.io/github/last-commit/alexfranke/Highly-Configurable-Wheel) 633 | - **Description:** STL generator using an OpenSCAD Customizer with 46 parameters to produce versatile wheel and tire designs, adjustable for rim diameter, tread pattern, spoke count, thickness, and hub mounting features. 634 | 635 | - **Rover Wheel** 636 | 637 | - **Repo:** [DavidMFlynn/RoverWheel](https://github.com/DavidMFlynn/RoverWheel) 638 | - ![Last commit](https://img.shields.io/github/last-commit/DavidMFlynn/RoverWheel) 639 | - **Description:** Complete parametric rover wheel assembly with integrated 60:1 planetary gearbox, motor mount, and low‑res quadrature encoder pockets (7200 counts/rotation), optimized for 3D printing and custom robotics platforms. 640 | 641 | - **Filament Tires** 642 | - **Repo:** [Arcus-3d/FilaMecanum](https://github.com/Arcus-3d/FilaMecanum) 643 | - ![Last commit](https://img.shields.io/github/last-commit/Arcus-3d/FilaMecanum) 644 | - **Description:** OpenSCAD source and STL modules for Mecanum‑style wheels using filament loops as tread; generates hub designs and loop patterns that enable omnidirectional movement on flat surfaces. 645 | 646 | ### Pegboards 647 | 648 | - **Skadis Accessories** 649 | 650 | - **Repo:** [franpoli/OpenSCADutil (ikea_skadis_pegboard_accessories)](https://github.com/franpoli/OpenSCADutil/tree/master/ikea_skadis_pegboard_accessories) 651 | - ![Last commit](https://img.shields.io/github/last-commit/franpoli/OpenSCADutil) 652 | - **Description:** Parametric library for IKEA Skådis pegboards providing hooks, plates, boxes, racks and tool mounts. Configure cell size, accessory type, wall thickness, chamfers and mounting inset; includes demo files and detailed usage instructions. 653 | 654 | - **PegSTR** 655 | 656 | - **Repo:** [MGX3D/pegstr](https://github.com/MGX3D/pegstr) 657 | - ![Last commit](https://img.shields.io/github/last-commit/MGX3D/pegstr) 658 | - **Description:** “Pegboard Wizard” generator for standard 1″-spaced US pegboards. Create holders and bins in arbitrary M×N matrices, with round, square or rectangular shapes, strength vs. economy settings, snap‑in features, and adjustable tilt or openness. 659 | 660 | - **Peggrid** 661 | - **Repo:** [ringerc/openscad-pegboard-peggrid](https://github.com/ringerc/openscad-pegboard-peggrid) 662 | - ![Last commit](https://img.shields.io/github/last-commit/ringerc/openscad-pegboard-peggrid) 663 | - **Description:** Simple SCAD modules for generating perforated plates or negative peg grids. Customize board dimensions, hole/peg diameter and spacing, square or hex patterns, edge margins, center alignment, and hole depth. This library is ideal for decorative panels, filters, or subtractive modeling. 664 | 665 | ## 2D Tools 666 | 667 | - **PathBuilder** 668 | 669 | - **Repo:** [dinther/pathbuilder](https://github.com/dinther/pathbuilder) 670 | - ![Last commit](https://img.shields.io/github/last-commit/dinther/pathbuilder) 671 | - **Description:** SVG‑style path language implemented in OpenSCAD (`m, l, h, v, c, s, q, a`, plus `fillet`, `chamfer`, `forward`, etc.) for building complex 2D outlines or point lists programmatically. Supports mixed absolute/relative commands, customizable curve segmentation, and direct extrusion or mesh generation. 672 | 673 | - **SCAD Utils (2D)** 674 | 675 | - **Repo:** [OskarLinde/scad-utils](https://github.com/OskarLinde/scad-utils) 676 | - ![Last commit](https://img.shields.io/github/last-commit/OskarLinde/scad-utils) 677 | - **Description:** Lightweight collection of 2D morphology and symmetry operations (`inset`, `outset`, `fillet`, `rounding`, `shell`), plus mirror transforms and utility math modules. 678 | 679 | - **SCADTrace** 680 | 681 | - **Repo:** [guyc/scadtrace](https://github.com/guyc/scadtrace) 682 | - ![Last commit](https://img.shields.io/github/last-commit/guyc/scadtrace) 683 | - **Description:** Bitmap‑to‑SCAD converter: uses Potrace to vectorize black‑and‑white images into SVG, triangulates via Triangle, and emits optimized `polyhedron()` geometry for embossing or 3D reliefs inside OpenSCAD. 684 | 685 | - **LaserCut** 686 | 687 | - **Repo:** [bmsleight/lasercut](https://github.com/bmsleight/lasercut) 688 | - ![Last commit](https://img.shields.io/github/last-commit/bmsleight/lasercut) 689 | - **Description:** Modules to flatten 3D OpenSCAD models into laser‑cuttable 2D parts (`lasercutout`, `lasercutoutSquare`, `lasercutoutBox`), complete with tabbing, captive‑nut slots, finger joints and CNC bit corner relief. Generates DXF or flattened SCAD for rapid fabrication. 690 | 691 | - **LaserSCAD** 692 | - **Repo:** [mbugert/laserscad](https://github.com/mbugert/laserscad) 693 | - ![Last commit](https://img.shields.io/github/last-commit/mbugert/laserscad) 694 | - **Description:** High‑level API for 2D laser‐cut template generation: wrap 3D parts in `lpart()` and use `make cut`/`make engrave` to auto‐layout DXF/SVG sheets, with kerf compensation, engraving (`lengrave`), slicing (`lslice`), and preview commands via an included Makefile. 695 | 696 | ## Case & Boxes 697 | 698 | - **LaserCut Box** 699 | 700 | - **Repo:** [larsch/lasercut-box-openscad](https://github.com/larsch/lasercut-box-openscad) 701 | - ![Last commit](https://img.shields.io/github/last-commit/larsch/lasercut-box-openscad) 702 | - **Description:** Parametric generator for laser‑cut box panels. Specify width, depth, height, material thickness, finger joint width, and tab spacing. Outputs flattened panels ready for DXF export or laser‑cut workflows, including optional lid and ventilation slot features. 703 | 704 | - **Shimon Box** 705 | 706 | - **Repo:** [ubitux/shimonbox](https://github.com/ubitux/shimonbox) 707 | - ![Last commit](https://img.shields.io/github/last-commit/ubitux/shimonbox) 708 | - **Description:** Customizable electronics enclosure originally for the Shimon musical instrument. Offers configurable wall thickness, mounting standoffs, cable cutouts, and snap‑fit lid designs. Designed for easy adaptation to other PCB layouts via parameter file. 709 | 710 | - **Parametric Case** 711 | 712 | - **Repo:** [eclecticc/ParametricCase](https://github.com/eclecticc/ParametricCase) 713 | - ![Last commit](https://img.shields.io/github/last-commit/eclecticc/ParametricCase) 714 | - **Description:** Toolkit for creating versatile electronics enclosures. Includes modules for base, lid, panels, cutouts (USB, HDMI, buttons), snap clips, and mounting rails. Parameters cover wall thickness, corner radii, cutout positions, and fastening options. 715 | 716 | - **Dovetail Cases** 717 | 718 | - **Repo:** [cfinke/OpenSCAD-Dovetails](https://github.com/cfinke/OpenSCAD-Dovetails) 719 | - ![Last commit](https://img.shields.io/github/last-commit/cfinke/OpenSCAD-Dovetails) 720 | - **Description:** Produces precision dovetail‑style box joints for wooden or printed cases. Functions include `dovetail_joint()` and `dovetail_case()`, with adjustable dovetail angle, board thickness, slot width, and chamfer options for seamless assembly. 721 | 722 | - **SeedStack** 723 | 724 | - **Repo:** [apollo-ng/seedstack](https://github.com/apollo-ng/seedstack) 725 | - ![Last commit](https://img.shields.io/github/last-commit/apollo-ng/seedstack) 726 | - **Description:** Stackable seed incubation and sprouting trays. Parametric design for tray dimensions, mesh support, drainage holes, and stack spacing. Optimized for 3D printing with interlocking features and consistent alignment. 727 | 728 | - **PCB Fixture** 729 | 730 | - **Repo:** [gskielian/PCB-Fixture-Generator](https://github.com/gskielian/PCB-Fixture-Generator) 731 | - ![Last commit](https://img.shields.io/github/last-commit/gskielian/PCB-Fixture-Generator) 732 | - **Description:** Automates creation of PCB holding jigs and fixtures. Generates drill guides, alignment pins, clamp slots, and labeling overlays based on board outline and drill file. Built with SCons for configurable, repeatable fixture builds. 733 | 734 | - **PCB Boxes** 735 | 736 | - **Repo:** [eyal0/openscad-pcb-boxes](https://github.com/eyal0/openscad-pcb-boxes) 737 | - ![Last commit](https://img.shields.io/github/last-commit/eyal0/openscad-pcb-boxes) 738 | - **Description:** Configurable enclosure generator for PCBs, with parameters for board dimensions, wall thickness, standoffs, mounting holes, and cutouts; integrates with SCons for automated builds and variant outputs. 739 | 740 | ## Raspberry Pi Models 741 | 742 | - **OpenSCAD Raspberry Pi Library** 743 | 744 | - **Repo:** [RigacciOrg/openscad-rpi-library](https://github.com/RigacciOrg/openscad-rpi-library) 745 | - ![Last commit](https://img.shields.io/github/last-commit/RigacciOrg/openscad-rpi-library) 746 | - **Description:** A set of SCAD modules modeling various Raspberry Pi boards (Model A+, B v2, 3B+, 4B) and common add‑ons (LCD panels, sensor modules, HDD shields). Provides accurate board outlines, mounting hole locations, and component clearances to aid in rapid case and enclosure prototyping. 747 | 748 | - **Raspi3-Airchannel** 749 | 750 | - **Repo:** [pinae/Raspi3-Airchannel](https://github.com/pinae/Raspi3-Airchannel) 751 | - ![Last commit](https://img.shields.io/github/last-commit/pinae/Raspi3-Airchannel) 752 | - **Description:** Two‑part 3D‑printable air channel designed to mount a 60 mm fan on a Raspberry Pi 3 Model B+. Channels airflow over the SoC and underside memory chip, supports optional heatsinks, and prints without support when top rotated 180°. 753 | 754 | - **OpenSCAD Library (RPi & Servos)** 755 | 756 | - **Repo:** [process1183/openscad-library](https://github.com/process1183/openscad-library) 757 | - ![Last commit](https://img.shields.io/github/last-commit/process1183/openscad-library) 758 | - **Description:** Defines mechanical parameters and simple 3D modules for RPi boards (including 4 B and camera HDMI extension) and Hitec HS‑85MG micro servo. Variables cover board dimensions, port locations, mounting hole spacing, and servo horn geometry. 759 | 760 | - **Raspberry-Pi-OpenSCAD-Model** 761 | - **Repo:** [TomHodson/Raspberry-Pi-OpenSCAD-Model](https://github.com/TomHodson/Raspberry-Pi-OpenSCAD-Model) 762 | - ![Last commit](https://img.shields.io/github/last-commit/TomHodson/Raspberry-Pi-OpenSCAD-Model) 763 | - **Description:** Simplified SCAD representations of Raspberry Pi boards based on published mechanical data and direct measurements. Provides `Raspberry_Pi_4B()` and common PCB outline modules for quick placement into larger assemblies or enclosures. 764 | 765 | ## Calendars 766 | 767 | - **Configurable Calendar** 768 | - **Link:** [chrastecky/open-scad-configurable-calendar-3d-model](https://chrastecky.dev/3d-printing/open-scad-configurable-calendar-3d-model) 769 | - **Description:** A fully scriptable 3D‑printable calendar implemented in OpenSCAD. Uses Zeller’s Congruence and custom leap‑year logic to calculate weekday offsets for any year. Offers parameters for start/end month, months‑per‑row layout, grid dimensions, text size, holiday and weekend highlighting, multi‑material color layering, translation/localization of labels, print quality (segment resolution), and configurable magnet or screw holes for mounting on walls or fridges. 770 | 771 | ## Novel & Interesting 772 | 773 | - **Simple Paste Extruder** 774 | 775 | - **Repo:** [keesj/simple-paste-extruder](https://github.com/keesj/simple-paste-extruder) ![Last commit](https://img.shields.io/github/last-commit/keesj/simple-paste-extruder) 776 | - **Description:** Minimalistic “direct‑drive” extruder for 3D printers using a standard syringe (32 mm OD), M8 bolt & nut, and a 28BYJ‑48 stepper. All non‑printed parts are low‑cost and readily available; the SCAD script generates rack‑and‑pinion gears and frames via MCAD submodule. 777 | 778 | - **ThrustMeter Assembly** 779 | 780 | - **Repo:** [AndKe/ThrustMeter](https://github.com/AndKe/ThrustMeter) ![Last commit](https://img.shields.io/github/last-commit/AndKe/ThrustMeter) 781 | - **Description:** Complete thrust‑test rig using OpenSCAD for the 3D‑printed sled and mount, paired with an Arduino‑based force sensor and DataExplorer logging. Measures thrust, power (g/W), and efficiency of RC motors, propellers, and ESCs with vibration‑damped sled mounting. 782 | 783 | - **KeyV2** 784 | 785 | - **Repo:** [rsheldiii/KeyV2](https://github.com/rsheldiii/KeyV2) ![Last commit](https://img.shields.io/github/last-commit/rsheldiii/KeyV2) 786 | - **Description:** Extensive parametric keycap library supporting Cherry and Alps stems, multiple profiles (SA, DSA, DCS, G20, Hi‑Pro, OEM), custom legends, artisan inserts, and full‑layout generation. Includes Customizer support, modifier chains, and example layouts (60%, Ergodox). 787 | 788 | - **LockPickr** 789 | 790 | - **Repo:** [spookey/lockpickr](https://github.com/spookey/lockpickr) ![Last commit](https://img.shields.io/github/last-commit/spookey/lockpickr) 791 | - **Description:** Work‑in‑progress OpenSCAD models for laser‑cut lock‑picking tools (picks, bows, triangles). Provides parametric handle, pick profile, and demo visuals; aims to generate STL or DXF outlines for hobbyist tool creation. 792 | 793 | - **Parametric Switch Holder** 794 | 795 | - **Repo:** [qwelyt/Parametric-switch-holder](https://github.com/qwelyt/Parametric-switch-holder) ![Last commit](https://img.shields.io/github/last-commit/qwelyt/Parametric-switch-holder) 796 | - **Description:** Customizable keyboard switch station generating lube trays, switch testers, or storage grids in arbitrary M×N layouts. Adjust cell spacing, switch type (Cherry/Alps), plate thickness, and optional “puzzle” interlocking legs for compact organization. 797 | 798 | - **Aircores** 799 | 800 | - **Repo:** [HelsinkiHacklab/aircores](https://github.com/HelsinkiHacklab/aircores) 801 | - ![Last commit](https://img.shields.io/github/last-commit/HelsinkiHacklab/aircores) 802 | - **Description:** Parametric OpenSCAD models and Arduino code for building air‑core gauge coilforms and their winding machines. Includes printable coilforms, a “spooler” assembly for automated winding, and PWM/I²C driver firmware for measurement and control. 803 | 804 | - **Wire Dispenser** 805 | 806 | - **Repo:** [tuna-f1sh/wire-dispenser](https://github.com/tuna-f1sh/wire-dispenser) 807 | - ![Last commit](https://img.shields.io/github/last-commit/tuna-f1sh/wire-dispenser) 808 | - **Description:** Laser‑cut reel dispenser for wiring projects. Fully configurable for any number and size of spools, with slot geometry tuning. Uses OpenSCAD’s `projection()` to generate flat DXF panels for CNC cutting. 809 | 810 | - **Bottle Engraver** 811 | 812 | - **Repo:** [farbro/bengraver](https://github.com/farbro/bengraver) 813 | - ![Last commit](https://img.shields.io/github/last-commit/farbro/bengraver) 814 | - **Description:** Open‑source CNC bottle engraver design. Guides laser or rotary tool around a bottle’s curvature to etch graphics. Includes SCAD and FreeCAD files, drill guides, STL parts, and a detailed build thesis. 815 | 816 | - **Möbius Patterns** 817 | 818 | - **Repo:** [oherrala/openscad-moebius](https://github.com/oherrala/openscad-moebius) 819 | - ![Last commit](https://img.shields.io/github/last-commit/oherrala/openscad-moebius) 820 | - **Description:** Scripts for creating Möbius strips and umbilic tori with customizable twist count, tube radius, and mesh resolution. Provides ready‑to‑print STLs and sample visuals for mathematical and decorative modeling. 821 | 822 | - **OpenSCADObjects** 823 | 824 | - **Repo:** [jeffbarr/OpenSCADObjects](https://github.com/jeffbarr/OpenSCADObjects) 825 | - ![Last commit](https://img.shields.io/github/last-commit/jeffbarr/OpenSCADObjects) 826 | - **Description:** A curated collection of over 75 handcrafted parametric, customizer‑enabled objects designed for easy adaptation and rapid FDM printing. Features various geometric tessellations, functional parts, and decor models. 827 | 828 | - **Ventilator (COSV‑CAM)** 829 | 830 | - **Link:** [COSV - Cam Open Source Ventilator](https://hackaday.io/project/170507-cosv-cam-open-source-ventilator) 831 | - **Description:** Roller‑cam‑based BVM ventilator designed for COVID‑19 relief. Combines laser‑cut frames and 3D‑printed parts to compress bag‑valve masks, using Arduino‑driven feedback for assisted ventilation modes. Cost‑effective (~$220) and quick‑build solution. 832 | 833 | - **openJoystick** 834 | 835 | - **Repo:** [tjhowse/OpenJoystick](https://github.com/tjhowse/OpenJoystick) 836 | - ![Last commit](https://img.shields.io/github/last-commit/tjhowse/OpenJoystick) 837 | - **Link:** [YouTube Demo](https://www.youtube.com/watch?v=GIY6-3KwIS8&list=PLC66292176B625E2A) 838 | - **Description:** Cross-platform application that captures and visualizes gamepad/joystick input in real time making it ideal for driving interactive, input-based parametric models or debugging control schemes in OpenSCAD workflows. 839 | 840 | - **PistonPen** 841 | 842 | - **Repo:** [sanja-byelkin/SimplePistonPen](https://github.com/sanja-byelkin/SimplePistonPen) 843 | - ![Last commit](https://img.shields.io/github/last-commit/sanja-byelkin/SimplePistonPen) 844 | - **Description:** Fully parametric, printable piston mechanism that converts linear motion into ink deposition. It includes the cylinder, piston, pen-holder, and mounting brackets with adjustable dimensions and seal taper settings for smooth fluid-driven writing. 845 | 846 |
847 | 848 | --- 849 | 850 |
851 | 852 | ## Obsolete (Unmaintained) 853 | 854 | > Anything not working in stable or nightly builds. 855 | 856 | - **ScaraOne** 857 | 858 | - **Repo:** [robdobsn/ScaraOne](https://github.com/robdobsn/ScaraOne) 859 | - ![Last commit](https://img.shields.io/github/last-commit/robdobsn/ScaraOne) 860 | - **Description:** Parametric OpenSCAD implementation of a single‑arm SCARA robot, including modules for the base, rotary joint, arm link, and end‑effector, intended for rapid prototyping of articulated robotic arms. 861 | 862 | - **nerdata** 863 | 864 | - **Repo:** [drigberg/nerdata](https://github.com/drigberg/nerdata) 865 | - ![Last commit](https://img.shields.io/github/last-commit/drigberg/nerdata) 866 | - **Description:** JavaScript/TypeScript library that generates random names, places, items, species, and quotes from various sci‑fi and fantasy universes (Star Wars, Dune, LotR, etc.), with include/exclude filtering and zero external dependencies. 867 | 868 | - **MOST SCAD Libraries** 869 | 870 | - **Repo:** [mtu-most/most-scad-libraries](https://github.com/mtu-most/most-scad-libraries) 871 | - ![Last commit](https://img.shields.io/github/last-commit/mtu-most/most-scad-libraries) 872 | - **Description:** Suite of SCAD modules used in the MOST project: NEMA17 stepper mounts, planetary gearbox mechanisms, belt and pulley profiles, bearing models, fasteners, calibration blocks, and SCAD‑based font rendering. 873 | 874 | - **Magpie** 875 | 876 | - **Repo:** [sjkelly/Magpie](https://github.com/sjkelly/Magpie) 877 | - ![Last commit](https://img.shields.io/github/last-commit/sjkelly/Magpie) 878 | - **Description:** “Vitamins” library and BOM generator for OpenSCAD: provides parametric hardware component models (electronics, fasteners) and utilities to assemble a bill of materials alongside your designs. 879 | 880 | - **BezierScad** 881 | 882 | - **Repo:** [chadkirby/BezierScad](https://github.com/chadkirby/BezierScad) 883 | - ![Last commit](https://img.shields.io/github/last-commit/chadkirby/BezierScad) 884 | - **Description:** Library of generalized Bézier curve functions for OpenSCAD such as `BezWall`, `BezLine`, `BezArc` which support arbitrary control‑point counts, width/height interpolation, and 2D/3D extrusion workflows. 885 | 886 | - **GraphSCAD** 887 | 888 | - **Repo:** [graphscad/graphscad](https://github.com/graphscad/graphscad) 889 | - ![Last commit](https://img.shields.io/github/last-commit/graphscad/graphscad) 890 | - **Description:** Nodal editor that exports OpenSCAD scripts: build graphs of transform and shape nodes (gears, pulleys, boxes, look‑at, etc.), manage world/local/object coordinate spaces, and embed graph metadata in SCAD comments. 891 | 892 | - **OpenSCAD Model Library** 893 | 894 | - **Repo:** [cznewt/openscad-model-library](https://github.com/cznewt/openscad-model-library) 895 | - ![Last commit](https://img.shields.io/github/last-commit/cznewt/openscad-model-library) 896 | - **Description:** Basic library of composite shapes and extrusion utilities for modular 3D objects; includes modules for Raspberry Pi enclosures, HC‑SR04 sensor mounts, primitive combinations, and utility functions. 897 | 898 | - **OpenSCAD-Modules** 899 | 900 | - **Repo:** [snemetz/OpenSCAD-Modules](https://github.com/snemetz/OpenSCAD-Modules) 901 | - ![Last commit](https://img.shields.io/github/last-commit/snemetz/OpenSCAD-Modules) 902 | - **Description:** Personal collection powering the “Data Center in a Box” project: modular case and shelf designs, PCB mount plates, standoff libraries, pattern generators, and accessory modules. 903 | 904 | - **PyCAD** 905 | - **Repo:** [Verkhovskaya/PyCAD](https://github.com/Verkhovskaya/PyCAD) 906 | - ![Last commit](https://img.shields.io/github/last-commit/Verkhovskaya/PyCAD) 907 | - **Description:** Python library for generating 3D models via an OpenSCAD backend: use the `Figure` API to define lines, shapes, and transformations, auto‑generate SCAD scripts, launch the GUI, and export STL files. 908 | 909 |
910 | 911 | --- 912 | 913 |
914 | 915 | [![Star History Chart](https://api.star-history.com/svg?repos=elasticdotventures/awesome-openscad&type=Date)](https://star-history.com/#awesome-openscad&Date) 916 | --------------------------------------------------------------------------------