HNHacker News
TopNewBestAskShowJobs

maouida

317 karma · joined December 1, 2013

submissionscomments
maouida··on Is Claude 20x actually 20x?
20x is only for the session limit not the weekly limit.
maouida··on FreeCAD in the Browser
Online here: https://freecad.virtastic.app/
maouida··on Cartesian – AI 3D Modeling for Design
From my experience trying to build parametric CAD modeling using FluidCAD [1] using its MCP, the biggest breakthrough is ASTRA. It seems to work well actually with any CAD if it has ways to verify its output. No otjer models was able to match its accuracy even Fable.

[1] https://fluidcad.io

maouida··on Ask HN: What are you working on? (September 2026)
I published a big update to my open source project FluidCAD adding support for sketch constraint solver and assemblies.

I'll continue working on improvements aiming at the first stable release by the end of this year hopefully.

maouida··on Benchmark: CadQuery vs. OpenSCAD for agentic CAD work
I'm going to test this with FluidCAD later. Will post the result here.
maouida··on Ask HN: Who wants to be hired? (August 2026)
Location: Tunisia

Remote: Yes

Willing to relocate: No

Technologies: .NET, C#, Node.js, Postgres, Angular,... Any tech/framework.

Résumé/CV: https://cv.marwan.dev/marwan-aouida-cv.pdf

Github: https://github.com/marwndev

Email: contact@marwan.dev

maouida··on Ask HN: What are you working on? (August 2026)
I continue working on FluidCAD, a hybrid CAD by code (JS) + mouse based modeling. I'm focusing on improving the 2D sketcher this week.

https://github.com/Fluid-CAD/FluidCAD

maouida··on Ask HN: What apps are you building?
I work on FluidCAD on my free time. I published v0.0.40 last weekend with some big updates.

https://github.com/Fluid-CAD/FluidCAD

maouida··on CadQuery is an open-source Python library for building 3D CAD models
Replicad is designed primarily to be used as a library with the web editor as a helper. FluidCAD is designed to be used as full CAD package code + UI. I've outlined some of my motives in recent post: https://news.ycombinator.com/item?id=47721997
maouida··on CadQuery is an open-source Python library for building 3D CAD models
Only step import at the moment. I'll add svg next.
maouida··on CadQuery is an open-source Python library for building 3D CAD models
+1 for what adrian_b answered above. All the promotion are for free open source projects and none of them is profitable. I think this is totally fine, people like to know about alternatives and all these tools are for the purpose of learning and making parametric CAD more approachable to users. They have same goal with different implementation.
maouida··on CadQuery is an open-source Python library for building 3D CAD models
CadQuery was an inspiration when I built FluidCAD. I wanted the workflow to be as close to traditional CAD as possible with more interactive UI.

https://fluidcad.io

maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
I have added a caching mechanism; objects are computed only when their parameters change. When an object change, all objects after it will recompute. This will probably need to be revised in future with more efficient algorithm to find what objects are affected by the change and recompute only those.
maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
Yep, topological naming solving is a hard problem to solve. It took FreeCAD many years to get it to work correctly. That's why I went with indices for this version. You can also use filters like extrusion.endFaces(face().arc()) to get only arc edges.

Regarding the picking; that's exactly the region picking feature in this screenshot: https://fluidcad.io/img/region-extrude.gif

When the user click on a region we insert a 2D point, then the extrude feature will find the nearest face. I have experimented with adding this picking logic to selections too select().pick() which will probably be merged in future releases.

maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
The interactive region extrude feature is designed specifically for fast modeling at the expense of making the model "not so parametric". When user pick a region, the raycasted point is inserted/hardcoded in the code. e.g extrude(100).pick([100, 100]) So if the sketch dimensions change, there is a chance the point will fall outside the region boundaries which will break it. It is preferred to use proper boolean operations in sketch mode to define regions while keeping it parametric.

The interactive region extrude is there for when you want fast modeling/prototyping.

maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
The constraints solving took a good amount of thinking while designing FluidCAD. At first I tried to make it all declarative where user just create unconstrained geometries then define constraints, something like: const l1 = line(); const c1 = circle(); // define constraint l1.length(100).position(x, y).tangentTo(c1) ...

Then I decided against this idea because it results in too much typing + the constraint solver implementation is not trivial and there is not much web based open source solvers. I went with a mixed approach instead between declarative and imperative. https://fluidcad.io/docs/guides/sketching/constrained-geomet...

maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
It seems from what you are describing your software is more like (replicad)[https://github.com/sgenoud/replicad]

The user can create planes with plane() command e.g plane("xy") or plane("xy", { offset: 10 }); but I have added some shortcuts for common planes (https://fluidcad.io/docs/guides/sketching/introduction#sketc...)

you can also sketch on faces sketch(extrusion.endFace(), ...) which will extract the plane from face and put the starting point on the center for convinience.

maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
Most of the CAD operations are supported, some are just basic implementations which will be improved soon. https://fluidcad.io/docs/category/3d-operations

Assemblies will come but not anytime soon. I did some research and tests and it is going to be a challenge. You can still add multiple parts in one scene but no actual joints implementation.

maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
Yes, PRs will be open on v0.1.0 I just want to finalize some design decisions and create a roadmap first.
maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
You are welcome.

There is a guide section and one tutorial: https://fluidcad.io/docs/guides/

This week will be all for documentation.

It is only a subset of features focused on solid modeling. Surface modeling will come in future versions

maouida··on Show HN: FluidCAD – Parametric CAD with JavaScript
Based on opencascade wasm. Features in the docs. Api coming soon. No it was not, I started this before I even started using coding agents. It took many iterations and rewrites before settling on the current shape. After building the core features I started using claude to add more features, improve test coverage and generte docs.
maouida··on Build123d: A Python CAD programming library
I'm working on one with features you mentioned, with the main goal to make the workflow similar to mainstream CAD. Will release the first dev version in less than a month.
maouida··on Ask HN: When will LLMs generate professional-level CAD models?
I'm working on a parametric, feature based CAD by code software which should be released next month. LLMs are good at generating code. It should be able to handle any complex task given a good documentation. I'm planning to write an mcp for providing feedback to the LLM but that will come at a later stage.

The code is based on js and opencascade with a feature rich vscode extension.

I'll post it here on release day.

maouida··on Ask HN: Why do AI code editors suck at closing tags?
Never encountered this issue until I tested GLM and Kimi K2 models. Opus and Sonnet seems to be good at handling this, even when giving them a code with open tags, they'll know where to put the closing tag quickly.
maouida··on Ask HN: What open source projects are you grateful for?
nvim, yt-dlp, gnome I'm sure there are many more I don't recall right now
maouida··on 6 weeks of Claude Code
I use neovim so claude code makes more sense to me. I think having the code agent independent from the code editor is a plus.
maouida··on Void: Open-source Cursor alternative
What we need is not an editor. We need a coding agent server which we can use from any editor we want.
maouida··on Augment.vim: AI Chat and completion in Vim and Neovim
Github copilot supports neovim
maouida··on Lahja – A generic event bus implementation written in Python
"lahja" in Arabic means dialect
maouida··on United Nations Expert Arrested in Tunisia for Using an RTL-SDR
Thanks. I'll do some research on that.
Page 1 of 3Next →