Show HN: Make 3D art in your browser using Lisp and math

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • commands

    Collection of editing commands for the CodeMirror code editor

  • It's CodeMirror! All I had to do was write a Janet grammar for it -- very easy to do. CodeMirror is pretty amazing -- I was able to implement the "edit values with your mouse" by just asking CodeMirror for the syntax node under the cursor, checking if it parsed as a number, and if so replacing it with a different string.

    https://codemirror.net/

    https://github.com/ianthehenry/codemirror-lang-janet

    I went with CodeMirror after reading this post that compares a few different editor components: https://blog.replit.com/codemirror and I've been super happy with it.

  • glicol

    Graph-oriented live coding language and music/audio DSP library written in Rust

  • For IDE, you can use the combo (Vite.js, Sevelte.js, and Windi CSS) I choose for building Glicol (https://glicol.org).

    I had a blog post about the combo before:

    https://dev.to/chaosprint/use-vitejs-seveltejs-and-windi-css...

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • codemirror-lang-janet

    Janet support for CodeMirror 6

  • It's CodeMirror! All I had to do was write a Janet grammar for it -- very easy to do. CodeMirror is pretty amazing -- I was able to implement the "edit values with your mouse" by just asking CodeMirror for the syntax node under the cursor, checking if it parsed as a number, and if so replacing it with a different string.

    https://codemirror.net/

    https://github.com/ianthehenry/codemirror-lang-janet

    I went with CodeMirror after reading this post that compares a few different editor components: https://blog.replit.com/codemirror and I've been super happy with it.

  • libfive

    Infrastructure for solid modeling

  • No; Bauble doesn't know how to "rasterize" SDFs into meshes; it only knows how to raymarch them. It's theoretically possible, but it's a pretty complex problem that would take me much too long to figure out and implement. So Bauble is relegated to just making pretty pictures for now. If you want to produce meshes using SDFs, check out https://libfive.com/

  • retrace.gl

    Create, ray trace & export programatically defined Signed Distance Function CSG geometries with an API suited for generative art - in your browser! 🎉

  • I've written a tool somewhat similar that can export meshes of sdf's created using a javascript api, check it out: https://github.com/stasilo/retrace.gl

  • colorchord

    Chromatic Sound to Light Conversion System

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • implicit

    A math-inspired CAD program in haskell. CSG, bevels, and shells; 2D & 3D geometry; 2D gcode generation...

  • There's also ImplicitCAD (https://github.com/Haskell-Things/ImplicitCAD) which produces STLs, as it is designed for CAD. It uses implicit functions, which I believe are similar to SDFs (I believe the idea is not to necessarily correspond to the distance function).

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts