├── 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 | [](https://awesome.re)
2 |
3 | ## Goal
4 | Attempting to bring more awesomeness & harmony to the OpenSCAD community.
5 |
6 |
7 |
8 | [](https://www.repostatus.org/#wip)
9 |
10 | I am marking this project as WIP planning for a better awesome-list.
11 |
12 | If you have an openscad project please open a PR.
13 |
14 | # awesome-openscad [](https://github.com/sindresorhus/awesome)
15 | A collection of awesome OpenSCAD resources
16 |
17 | [](https://github.com/elasticdotventures)
18 | [](https://github.com/elasticdotventures/awesome-openscad)
19 |
20 |
21 | # Awesome communities
22 | * [https://github.com/openscad/openscad]()
23 | * [](https://kiwiirc.com/client/irc.libera.chat/#openscad)
24 |
25 | * [IRC/Matrix.org bridge](https://matrix.to/#/#openscad:libera.chat)
26 |
27 | * [Reddit r/OpenSCAD](https://reddit.com/r/openscad)
28 | * https://mastodon.social/web/tags/openscad
29 | * CadHub Discord: (see page for link)
30 |
31 | ## 😘 Acknowledge Friends of SCAD
32 | * 🥰🦀 [CSGRS](https://github.com/timschmidt/csgrs/) Constructive solid geometry with polygons using BSP trees in Rust
33 | * [Fornjot](https://www.fornjot.app/) built in RUST, similar to OpenSCAD with boundary representation.
34 | * 🐍.python [CadQuery/cadquery]() - a popular python centric dialect that is turing complete and therefore perhaps better suited for systems coding & simulation.
35 | * ©️++ [OpenCascade]() - a C++ wholly separate but similar distant cousin of OpenSCAD.
36 | * [ImplicitCAD]() may not use OpenSCAD (can't tell)
37 |
38 |
39 | # 👋 Platforms supporting OpenSCAD syntax
40 | // TODO: this should be a table suggesting environments & differences
41 | * [OpenSCAD](https://github.com/openscad/openscad) the source of truth for everybody else.
42 | * [FreeCAD](https://github.com/FreeCAD/FreeCAD) a venerable free open-source tool that features an OpenSCAD workbench
43 | * [JSCAD](https://github.com/jscad/OpenJSCAD.org)
44 | * previously known as OpenJSCAD, online self-hosteable web-based ui & CLI. 📢
45 | * 👀 Live Demo: [https://openjscad.xyz]()
46 | * [Visual Studio Code](https://github.com/Antyos/vscode-openscad)
47 | * Language Service Provider "LSP" module (should be compatible with any editor, but only tested on vs-code)
48 | * [cadhub](https://github.com/Irev-Dev/cadhub)
49 | * 👀 Live Demo: [https://cadhub.xyz/]()
50 | * [Blender](https://github.com/elasticdotventures/blender-openSCAD)
51 | * [Netbeans, VIM, Emacs, Atom]()
52 | * 👎 unmaintained, possibly working: https://github.com/openscad/openscad/pull/3635 (29 commits ahead, 1038 commits behind master at time of writing)
53 | * 👀 [Tomatower/openscad](https://github.com/Tomatower/openscad) (29 commits ahead, 1038 commits behind master at time of writing)
54 | * [RapCAD]()
55 | * [Libre 3D]()
56 | * [BlocksCAD]
57 | * Models @ MakeWithTech
58 | * openscad.cloud by Autodrop3d
59 |
60 |
61 | # 🍰 Parametric Geometry Syntax Sugar
62 | ### Libraries
63 | - [2D connection library](https://www.youmagine.com/designs/openscad-2d-connection-library)
64 | - [BOLTS: Open Library of Technical Specifications](http://www.bolts-library.org)
65 | - [Celtic Knots](https://github.com/beanz/celtic-knot-scad)
66 | - [MCAD: Parametric CAD Library](https://github.com/openscad/MCAD)
67 | - [Shapes](https://www.thingiverse.com/thing:212041)
68 | - [Threads](http://dkprojects.net/openscad-threads)
69 | - [U-Joint Library](https://www.thingiverse.com/thing:125939)
70 | - [Utility libraries](https://github.com/OskarLinde/scad-utils)
71 |
72 | ## Functional
73 | * https://github.com/thehans/FunctionalOpenSCAD
74 | * https://github.com/thehans/funcutils
75 | functional openscad
76 |
77 |
78 |
79 | ## Ubiqutious OpenSCAD 😎
80 | - popular & useful Libraries/tool-kits
81 |
82 | * https://github.com/htho/scadlib
83 | * dotSCAD v3.2
84 | https://github.com/JustinSDK/dotSCAD
85 | * archimedean spiral
86 | * BOSL2
87 | https://github.com/revarbat/BOSL2/wiki
88 | * agentscad
89 | https://github.com/GillesBouissac/agentscad
90 | * snap joint
91 | * threaded screws
92 | * hirth joint
93 | * beveling
94 | * glue shapes
95 | * OpenSCADutil
96 | * SKADIS!!
97 | * https://github.com/franpoli/OpenSCADutil
98 |
99 | * NopSCADlib
100 | * https://github.com/nophead/NopSCADlib
101 | * BH-Lib
102 | https://github.com/brandonhill/BH-Lib
103 |
104 | * Directions, orientation, position
105 | https://github.com/tanius/openscad-models
106 |
107 | * omdl 'mechanical design library'
108 | https://royasutton.github.io/openscad-amu/
109 | https://royasutton.github.io/omdl/
110 |
111 | * https://github.com/dinther/openSCAD_functions
112 |
113 | * openscad-fiddlybits
114 | https://github.com/mathcodeprint/openscad-fiddlybits
115 |
116 |
117 | * openJoystick 🕹️
118 | https://www.youtube.com/watch?v=GIY6-3KwIS8&list=PLC66292176B625E2A
119 |
120 |
121 |
122 |
123 | # Language Bindings
124 | - compositional openSCAD transpilation & visualization
125 | ### 🦀.RUST
126 | https://github.com/TheZoq2/Rust-Scad
127 |
128 | ### WASM
129 | https://github.com/openscad/openscad-wasm
130 |
131 |
132 | ### 🐍.Python
133 | https://github.com/taxpon/openpyscad
134 | * https://github.com/mrkoz/python-threaded-openscad
135 | * Projects
136 | * https://awesomeopensource.com/project/karosc/pyDactyl
137 | * https://github.com/r4dr3fr4d/pykeeb
138 |
139 | ### 🦄.TypeScript
140 | * (https://github.com/scad-js/scad-js)
141 | * code formatter
142 | * (https://github.com/Maxattax97/openscad-format)
143 | * (https://www.npmjs.com/package/nodescad)
144 |
145 |
146 |
147 |
148 | # Tutorials / Creating (the process)
149 | https://mirmik.github.io/zencad/en/index.html
150 | * https://www.youtube.com/watch?v=tOx5UI8GGns
151 | * https://github.com/benjaminwand/cookie-cutters
152 |
153 | workflows:
154 | https://github.com/kikaitachi/naminukas
155 |
156 | # Merging
157 | * Lofting
158 | https://github.com/jakubczaplicki/this-to-that
159 |
160 |
161 | # Importing
162 | * https://github.com/Zigazou/svg2dxf
163 | * https://github.com/Spiritdude/SVG2SCAD
164 | * https://github.com/htho/fzz2scad
165 | # KiCad
166 | https://github.com/mplewis/kicad-libraries
167 | # Gerber
168 | https://github.com/drujensen/GerbToSCAD
169 |
170 |
171 | # Exporting
172 | * PNG
173 | https://github.com/openscad/image-generator/issues
174 |
175 | # 3d printing
176 | * https://github.com/Spiritdude/Print3r
177 | * Anti-warping walls
178 | https://github.com/JohnStrunk/WhateverSCAD
179 |
180 |
181 | # Assemblies
182 | * Attach Library
183 | https://www.thingiverse.com/thing:30136
184 |
185 | * constructive
186 | https://github.com/solidboredom/constructive
187 | * https://github.com/solidboredom/constructive/blob/main/tutorials/basic-tutorial.md
188 |
189 | * OpenSCADMachineDesignFramework
190 | https://github.com/Axford/OpenSCADMachineDesignFramework
191 |
192 | * MoCad ??
193 | https://github.com/davidthings/mocad
194 |
195 | * ScrewsMetric has complex assemblies
196 | https://github.com/More-Wrong/ScrewsMetric
197 |
198 | * https://github.com/usagi/usagi.scad
199 |
200 |
201 | https://github.com/eyal0/openscad-pcb-boxes
202 |
203 | * PCB/EDA object syntax
204 | https://github.com/htho/scadlib-electronic-components/tree/master/electromechanical/other/printed_circuit_boards
205 |
206 |
207 | # Robotics
208 | https://github.com/prl-mushr/mushr_cad
209 | https://github.com/fablab-nea/lablock
210 |
211 | https://github.com/kikaitachi/naminukas
212 |
213 | # Threads
214 | * ThreadLib
215 | https://github.com/adrianschlatter/threadlib
216 | * Cap Generator
217 | https://github.com/muesli/cap-generator
218 | * Metric Threads
219 | * https://github.com/gabfv/scad-metric-thread-library
220 |
221 | # Gears
222 | * OpenSCAD gear generator
223 | https://github.com/chrisspen/gears
224 | * Lens Gears
225 | http://jaymis.com/2015/11/3d-printable-seamless-friction-fit-lens-gears-for-follow-focus/
226 | * Spherical Involute Bevel Gears
227 | https://github.com/JediJeremy/BevelGears
228 |
229 |
230 | # Bearings & Belts
231 | https://github.com/phidiasllc/scad_libraries
232 |
233 | # Pistons, Solenoids & Valves
234 | * PistonPen
235 | https://github.com/sanja-byelkin/SimplePistonPen
236 | - Peristaltic Pump
237 | * https://github.com/TomHodson/Peristaltic-Pump/
238 | * https://github.com/adricl/peristaltic-pump
239 | * Moineau Pump/Paste Extruder
240 | https://github.com/doctek/Moineau-Paste-Extruder
241 |
242 |
243 | # Funnels & Clyndrical couplings
244 | https://github.com/alexbirklykke/openscad
245 |
246 | # Text
247 | https://github.com/brodykenrick/text_on_OpenSCAD
248 | * Braille
249 | https://github.com/whosawhatsis/braille-openscad
250 |
251 |
252 |
253 | # Heatsinks
254 | * https://github.com/fullyautomated/means-of-circuit-design/tree/main/3D
255 |
256 | # Optical Encoder
257 | * https://github.com/Irev-Dev/3D-Printed-Optical-Encoder
258 |
259 |
260 |
261 | # ServoArms
262 | https://github.com/hugokernel/OpenSCAD_ServoArms
263 |
264 | # Cyborg Beast Prosthetics?
265 | https://github.com/daprice/Flexy-Beast
266 |
267 | # Novel/Interesting
268 | git submodule update --init
269 | https://github.com/keesj/simple-paste-extruder
270 |
271 | * Thrustmeter Assembly
272 | https://github.com/AndKe/ThrustMeter
273 |
274 | * Keys
275 | https://github.com/rsheldiii/KeyV2
276 |
277 | * Lock Picking
278 | https://github.com/spookey/lockpickr
279 |
280 | * MXSwitches
281 | https://github.com/qwelyt/Parametric-switch-holder/blob/master/Parametric-switch-holder.scad
282 |
283 | * AirCore / Transformers
284 | https://github.com/HelsinkiHacklab/aircores/tree/master/coilforms
285 |
286 | * Wire Dispenser
287 | https://github.com/tuna-f1sh/wire-dispenser
288 |
289 | * Bottle Engraver
290 | https://github.com/farbro/bengraver
291 |
292 | * Mobius stuff
293 | https://github.com/oherrala/openscad-moebius
294 |
295 | * Ventilator
296 | https://hackaday.io/project/170507-cosv-cam-open-source-ventilator
297 |
298 | # Joints
299 | https://github.com/HopefulLlama/JointSCAD
300 |
301 |
302 | # Nuts & Bolts
303 | * https://github.com/JohK/nutsnbolts/
304 | ```
305 | include ;
306 |
307 | screw("M20x100", thread="modeled"); // screw M20x100 with thread
308 | nut("M20", thread="modeled"); // corresponding nut with thread
309 |
310 | screw("M3x12"); // screw M3x12
311 |
312 | ```
313 |
314 | # Wheels & Pully
315 | * Pully & GT5, idler, etc.
316 | https://github.com/ElectricSkateboard/SolidModels/blob/master/Pulley_T-MXL-XL-HTD-GT2_N-tooth.scad
317 | * https://github.com/alexfranke/Highly-Configurable-Wheel
318 | * Rover Wheel w/60:1 Planetary drive & motor
319 | https://github.com/DavidMFlynn/RoverWheel/issues
320 | * Filament Tires
321 | https://github.com/Arcus-3d/FilaMecanum
322 |
323 |
324 | # Pegboards
325 | * skadis
326 | * https://github.com/franpoli/OpenSCADutil/tree/master/ikea_skadis_pegboard_accessories
327 |
328 | * https://github.com/MGX3D/pegstr
329 | * https://github.com/MGX3D/pegstr/issues/7
330 |
331 | https://github.com/ringerc/openscad-pegboard-peggrid
332 |
333 |
334 | # 2D
335 | * svgShape
336 | https://github.com/dinther/pathbuilder
337 |
338 | * https://github.com/OskarLinde/scad-utils
339 | 2d morphology
340 | * SCADTrace
341 | emboss black & white bitmap to openscad object
342 | https://github.com/guyc/scadtrace
343 | * Laser Cutting
344 | https://github.com/bmsleight/lasercut
345 | https://github.com/mbugert/laserscad
346 |
347 |
348 |
349 | # Antenna
350 | https://awesomeopensource.com/project/SmittyHalibut/coax-trap-form
351 |
352 |
353 | # Case & Boxes
354 | https://github.com/larsch/lasercut-box-openscad
355 | https://github.com/ubitux/shimonbox
356 | https://github.com/eclecticc/ParametricCase
357 | https://github.com/cfinke/OpenSCAD-Dovetails
358 | A fully 3D printed stackable seed incubation/sprout growing system
359 | https://github.com/apollo-ng/seedstack
360 | - https://www.thingiverse.com/thing:1355018
361 |
362 | * PCB fixture generator
363 | https://github.com/gskielian/PCB-Fixture-Generator
364 |
365 | https://github.com/schub/basteln
366 |
367 |
368 | https://github.com/apollo-ng/seedstack
369 | https://awesomeopensource.com/project/sebastianrakel/SolderStuffStation
370 | https://github.com/DaveDavenport/SensorBox
371 |
372 | https://github.com/heyspacebuck/parametric-chastity-cage
373 |
374 | # RPI
375 | * https://github.com/RigacciOrg/openscad-rpi-library
376 | * https://github.com/pinae/Raspi3-Airchannel
377 | * + Servos
378 | https://github.com/process1183/openscad-library
379 |
380 |
381 | https://github.com/TomHodson/Raspberry-Pi-OpenSCAD-Model
382 | * openscad -o rpi.png --camera=-30,0,12,41,0,201,620 --imgsize=640,480 --projection=p rpi.scad
383 |
384 |
385 | # Robots
386 | * Verilog
387 | http://staff.ustc.edu.cn/~songch/download/IEEE.1364-2005.pdf
388 | * https://github.com/kikaitachi/naminukas
389 | * DIY Servo
390 | https://github.com/kwatters/DIYServo
391 |
392 | # Personal Utilities
393 | https://github.com/jernst/josl
394 | Horizontal 19" Hanging Rack
395 | https://github.com/cromo/horizontal-rack
396 | * jpeg,png, etc. to STL
397 | https://github.com/Harakan/litho_research
398 | *
399 | https://awesomeopensource.com/project/willdurand/kicad-libs
400 |
401 | # Calendars
402 | * https://chrastecky.dev/3d-printing/open-scad-configurable-calendar-3d-model
403 |
404 |
405 |
406 | ------ LINE OF OBSOLENCE ------
407 |
408 | # Obsolete (Apparently Unmaintained)
409 | NOTE: anything that doesn't work in the stable
410 | or nightly belongs here
411 |
412 | single arm scara robot
413 | https://github.com/robdobsn/ScaraOn
414 |
415 | https://github.com/drigberg/nerdata
416 |
417 | https://github.com/mtu-most/most-scad-libraries
418 |
419 | https://github.com/sjkelly/Magpie
420 |
421 | https://github.com/chadkirby/BezierScad
422 |
423 | https://github.com/graphscad
424 |
425 | https://cadhub.xyz/
426 | * round anything library
427 | https://learn.cadhub.xyz/docs/round-anything/api-reference/
428 |
429 | https://github.com/cznewt/openscad-model-library
430 |
431 | https://github.com/snemetz/OpenSCAD-Modules
432 |
433 | https://github.com/Verkhovskaya/PyCAD
434 |
435 |
436 | https://www.thingiverse.com/thing:689564
437 | https://github.com/hyperair/fan-blades/issues
438 |
439 | https://github.com/revk/PCBCase
440 | https://cults3d.com/en/users/JustinSDK/creations?page=2
441 | https://en.wikibooks.org/wiki/OpenSCAD_Tutorial
442 | https://github.com/rcolyer/smooth-prim
443 | https://github.com/rcolyer/smooth-prim
444 | https://github.com/dzhu/openscad-language-server
445 | https://github.com/Leathong/openscad-LSP
446 |
--------------------------------------------------------------------------------