FluidCAD – Parametric CAD with JavaScript

Hello HN users,This is a CAD by code project I have been working on on my free time for more than year now.I built it with 3 goals in mind:- It should be familiar to CAD designers who have used other programs. Same workflow, same terminology.- Reduce the mental effort required to create models as much as possible. This is achieved by: - Provide live rendering and visual guidance as you type. - Allow the user to reference existing edges/faces on the scene instead of having to calculate everything. - Provide interactive mouse helpers for features that are hard to write by code: Only 3 interactive modes for now: Edge trimming, Sketch region extrude, Bezier curve drawing. - Implicit coding whenever possible: e.g: There are sensible defaults for most parameters. The program will automatically fuse intersecting objects together so you do not have to worry about what object needs to be fused with what. - It should be reasonably fast: The scene objects are cached and only the updated objects are re-computed.I think I have achieved these goals to a good extent. The program is still in early stages and there are many features I want to add, rewrite but I think it is already usable for simple models.Update to add more details: This is based on Opencascade.js WASM binding. So you get all the good things that come with any brep kernel. Fillets, chamfers, step import and export...The scene is webview but the editing is in your local file. You use your own editor and the environment you are familiar with.One important feature that I think make this stand out among other code based cad software is the ability to transform features not just shapes. More here: https://fluidcad.io/docs/guides/patterns You can see it in action in the lantern example: https://fluidcad.io/docs/tutorials/lantern

Hacker NewsToolAISource
0Sign in to voteCopy link

FL score

78

out of 100

Verdict

BUILD

medium confidence

Competition

6

competitors found, emerging market

Trend

No signal yet

A parametric CAD tool leveraging JavaScript for developers, offering an intuitive, interactive workflow that bridges the gap between traditional CAD and code-based design.

The pain

Users of existing 'CAD by code' tools like OpenSCAD, FreeCAD, and JSCAD suffer from cumbersome UIs, lack of interactivity, instability, limited features (e.g., mesh vs. B-Rep), and difficult learning curves, resulting in frustration and lost productivity.

The gap

There is a significant gap for a 'CAD by code' tool that combines the power of parametric coding (JS, B-Rep via OpenCascade) with the familiarity and intuitiveness of traditional CAD (live rendering, visual guidance, interactive helpers, implicit coding, feature transformations). Current alternatives are mostly free/open-source but fall short on UX and advanced features.

Build angle

Develop FluidCAD as an interactive, JavaScript-based parametric CAD tool that focuses on reducing mental effort for CAD designers through live rendering, visual guidance, direct referencing of geometry, and interactive mouse helpers, while providing robust B-Rep modeling capabilities.

Strengths

  • Addresses very specific and severe pain points with existing code-CAD solutions.
  • Clear competitive differentiation with a unique blend of code-first and visual/interactive CAD features.
  • Market is emerging and growing, with no funded competitors, providing a strong opportunity for a niche player.
  • The creator demonstrates deep domain knowledge and commitment with a year-long MVP development.
  • Built on OpenCascade.js, offering powerful B-Rep capabilities.

Risks

  • High build complexity and ongoing maintenance for a solo builder, potentially impacting feature velocity and stability.
  • Monetization challenge in a market dominated by free and open-source alternatives; requires compelling value to convert users to a paid model.
  • While the niche is growing, it is still relatively small compared to traditional CAD, limiting initial market size.
  • User acquisition strategy needs to be highly targeted to reach the specific developer/engineer audience.
  • Risk of users perceiving it as 'just another CAD-by-code tool' without understanding its unique value propositions.

Next steps

  1. Conduct in-depth user interviews with frustrated OpenSCAD/JSCAD/FreeCAD users to precisely pinpoint the features they would pay for.
  2. Experiment with different pricing models (e.g., freemium with advanced features, commercial licenses, one-time purchase for specific modules) to gauge willingness to pay.
  3. Focus MVP development on the 'narrowest wedge' – the absolute minimum features that solve a critical problem for a specific sub-segment and justify payment.
  4. Document a clear roadmap for features that address professional use cases where time savings translate directly to ROI.

Questions about this idea?

FlyBot reads the scoring and gives you a second opinion on “FluidCAD – Parametric CAD with JavaScript”.

Open FlyBot