CraftML: 3D modeling is web programming

Tom Yeh, Jeeeun Kim

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

21 Scopus citations


We explore web programming as a new paradigm for programmatic 3D modeling. Most existing approaches subscribe to the imperative programming paradigm. While useful, there exists a gulf of evaluation between procedural steps and the intended structure. We present CraftML, a language providing a declarative syntax where the code is the structure. CraftML offers a rich set of programming features familiar to web developers of all skill levels, such as tags, hyperlinks, document object model, cascade style sheet, JQuery, string interpolation, template engine, data injection, and scalable vector graphics. We develop an online IDE to support CraftML development, with features such as live preview, search, module import, and parameterization. Using examples and case studies, we demonstrate that CraftML offers a low floor for beginners to make simple designs, a high ceiling for experts to build complex computational models, and wide walls to support many application domains such as education, data physicalization, tactile graphics, assistive devices, and mechanical components.

Original languageEnglish
Title of host publicationCHI 2018 - Extended Abstracts of the 2018 CHI Conference on Human Factors in Computing Systems
Subtitle of host publicationEngage with CHI
PublisherAssociation for Computing Machinery
ISBN (Electronic)9781450356206, 9781450356213
StatePublished - 20 Apr 2018
Event2018 CHI Conference on Human Factors in Computing Systems, CHI 2018 - Montreal, Canada
Duration: 21 Apr 201826 Apr 2018

Publication series

NameConference on Human Factors in Computing Systems - Proceedings


Conference2018 CHI Conference on Human Factors in Computing Systems, CHI 2018

Bibliographical note

Publisher Copyright:
© 2018 Copyright is held by the owner/author(s).


  • 3D modeling
  • 3D printing
  • Creativity support
  • Programming


Dive into the research topics of 'CraftML: 3D modeling is web programming'. Together they form a unique fingerprint.

Cite this