Skip to content
← All side projects

Nanosmid

Started as a headless Drupal playground, became a configurator for DIY furniture. First design: the Kura bench.

Project
Nanosmid
Status
still alive
Period
2017 – nu
Sheet
1 of 1

Nanosmid is a digital workshop where industrial design, craftsmanship and AI meet. You pick a design, adjust the dimensions, and get a cutting plan, a building plan and a 3D model to build it yourself. But the name is older than the furniture.

Three lives of one name

  1. 2017

    NanoRouter

    A home-made router in vanilla ES6 that fetched pages from a headless Drupal. “Digital craftsmanship and future of the web.” Half a year of learning, then silence.

  2. 2022

    Art and coding

    A restart with web components (Lit and TypeScript): a portfolio pulling together articles from Medium and Drupal. Quiet after December 2022.

  3. 2025

    Craft + Algorithm

    After three quiet years, a new direction: furniture. A parametric model in CadQuery, a configurator in React and Three.js, and a first design: the Kura bench.

Kura: from sketch to configurator

Kura (蔵, Japanese for storehouse) is an oak bench with storage under the seat, meant to keep toys out of sight in the living room. It started on paper.

  1. Pen drawing of the Kura bench in exploded view, with dimensions in centimetres and the note “4 hinges”.
    01 15.11.2025 Exploded view. The first sketch: four hinges, six cross beams, and a backrest at 14°.
  2. Two pen drawings of the bench profile: from the front at an angle, and from the side.
    02 15.11.2025 Profile. Side and front views. The profile has barely changed since.
  3. Yellow CadQuery render of a single side panel with an angled backrest.
    03 19.11.2025 First render. The first part in CadQuery: a single side panel, built up from planks.
  4. Yellow CadQuery render of the frame: two side panels, a centre support and the floor.
    04 23.11.2025 The frame. Side panels, centre support and floor. Every dimension follows from a handful of parameters.
Sketch listing every plank per part, with “Total 16 planks” circled at the bottom.

The cutting plan

By hand, the count came to 16 planks, circled. At its default size the configurator arrives at 18, using 82.3% of the wood. The optimizer fits the parts, angled ones and saw kerf included, onto the planks as tightly as it can.

16 18

How it runs today

Sliders for width, seat height and backrest angle. One click on Generate and a CadQuery service recalculates the model in about twenty seconds, returning three things: a cutting plan per plank, a building plan with steps and assembly drawings, and a downloadable 3D model.

Screenshot of the configurator on nanosmid.nl, with sliders for the dimensions and a 3D preview of the bench.

Under the hood

  • Astro 5
  • React + Three.js
  • Drupal 11 (headless)
  • Python + CadQuery
  • FastAPI
  • nginx

Design your own Kura at nanosmid.nl →