announcements

Roman Liutikov 2025-12-15T10:21:50.507609Z

uix.css — fast css-in-cljs library v0.4.0 is out com.github.roman01la/uix.css {:mvn/version "0.4.0"} https://github.com/roman01la/uix.css • new: Added support for SSR on JVM (see docs https://github.com/roman01la/uix.css?tab=readme-ov-file#server-side-rendering)

4
🆒 1
🙏 1
🎉 4
Robin 2025-12-15T14:57:59.687299Z

I'm excited to share the initial release of my first Clojure library: https://github.com/robinlahtinen/clj-artnet v0.1.0 — a pure-Clojure implementation of the Art-Net 4 protocol, designed to provide a high-performance, data-driven API for building lighting control applications on the JVM. Highlights: - Pure Clojure: High-performance, zero-copy architecture running on the JVM. - Modern stack: core.async.flow running on Java Virtual Threads to drive NIO DatagramChannel. - Compliance: Full Art-Net 4 protocol support. - Data-driven: An API designed specifically for creative coding and real-time apps. This is my first Clojure library release! To foster collaboration, I have created the #lighting channel. Whether you are working with DMX, integrating Philips Hue, or just curious about controlling lights with Clojure, you are welcome to join.

💡 8
🆒 1
🎉 8
telekid 2025-12-16T14:50:27.148959Z

Funny, I was just looking up the status of artnet on the JVM two weeks ago! This will be very helpful for a project I've been noodling on in the background.

p-himik 2025-12-15T16:22:23.497239Z

Oh, sweet! Just a week or two ago, I got exposed to Art-Net - tried controlling hand-made Christmas lights via TouchDesigner. It did work, but I think I have significantly more lights that the designated TouchDesigner node can handle, at least when it comes to WLED (that, or I couldn't figure it out, dunno). Ended up writing a custom Python script for TouchDesigner that talks to a WLED controller via DDP.

Robin 2025-12-15T17:17:41.397959Z

That sounds like a fun project! I actually got started trying to control Philips Hue lights programmatically. I first tried the C++ Hue SDK, but it was a bit heavy for quick experimentation. Then I found a Go-based Art-Net server that turns Hue lights into generic RGB fixtures for lighting controllers like grandMA 3 and QLC+. The issue for me was that those lighting control apps felt bloated and not very friendly for quick, precise experimenting, which is something a REPL-driven workflow in Clojure can offer. I looked into https://github.com/Deep-Symmetry/afterglow, but it doesn't support Windows, which I use, so I ended up building my own Art-Net implementation in Clojure, starting with just sending DMX data. Over time, it grew into a full protocol implementation, partly because I wanted to contribute something back to the Clojure community. I'm really excited about the possibilities Clojure can offer for creative, real-time lighting control! The REPL-driven development works exceptionally well with DMX and lighting setups, letting you experiment and adjust things live without interrupting the flow.

p-himik 2025-12-15T17:20:05.588259Z

What do you use as a controller?

Robin 2025-12-15T17:28:06.600819Z

I have a personal setup with six Philips Hue lights, including a lightstrip that counts as three separate RGB fixtures. I use an https://github.com/Techwolf12/artnet-to-hue bridge (with few fixes) to control them via Art-Net DMX. For a controller, I've used QLC+ and MagicQ PC (with some help from a friend). Since few weeks ago, I mostly use my own clj-artnet library along with a personal Clojure lighting toolkit I'm building to create cool lighting setups at home. It works great for everything from parties to cozy moods and anything in between.

Robin 2025-12-15T17:29:32.931149Z

I'm planning to design a time-coded EDM light show using Clojure 🕺

p-himik 2025-12-15T17:30:33.713889Z

Heh, awesome! Thanks for sharing. Can't wait to finally be done with renovation and also play around with LEDs that will be installed.

🚥 1
Steven Lombardi 2025-12-15T18:25:47.001139Z

I'm no expert in the space but can this also be used for stage lights or is that a separate protocol?

Robin 2025-12-16T05:25:58.116209Z

Yes, absolutely. Art-Net is widely used for stage lighting. It is essentially DMX512 transported over Ethernet, so most professional stage lights that support DMX can be controlled via Art-Net using an Art-Net node or interface. From the lighting fixture's point of view, it is still just receiving DMX. So the same setup can control stage lights, architectural lighting, LED strips, or even smart lights, as long as there is a DMX or Art-Net path in between.

Robin 2025-12-16T05:40:05.653909Z

This is a conceptual diagram of a stage lighting system using clj-artnet and DMX.

Niki 2025-12-15T16:23:49.023579Z

New library: simple web statistics for Clojure web servers Blog post: https://tonsky.me/blog/clj-simple-stats/ Github: https://github.com/tonsky/clj-simple-stats

📈 3
4
🆒 5
🦾 4
❄️ 8
🎉 24
teodorlu 2025-12-15T17:15:11.779769Z

oh, this is amazing, thank you for making this! I've looked at alternatives, but there's so much stuff. Ring middleware to the rescue! 🙏 gratitude ❤️

❤️ 1
teodorlu 2025-12-15T17:34:08.117249Z

https://mikrobloggeriet.no/stats | Ridiculously easy to use. Thanks again! 😊

🔥 1
jerger_at_dda 2025-12-15T18:21:20.952079Z

Sneak Preview for clj-threats - we have released the first version. https://repo.prod.meissa.de/meissa/clj-threats clj-threats is devops style tool for continuous threat analysis. The system definition is compatible with threagile, but we added attack trees. We will enhance the attack tree library while using this tool for the threat analysis for federated forgejo. #clojure #forgejo #threat-modelling #attack-tree

👀 3
🎉 8