Alternatives
Products that do what Topical – Elixir library for synchronising state to web clients does
Hi HN. I've been working on an Elixir library for synchronising state, maintained by the server, to connected web clients. I found this was something I kept implementing for side-projects, so I've extracted it into a library. It solves a similar problem to Phoenix LiveView, but aimed at a different level of abstraction: rather than synchronising HTML and UI events, this just synchronises (JSON-serialisable) state. Topics can be shared between connected users, and each client can subscribe to multiple topics. The library takes care of starting topic instances (GenServer processes) as needed,…
- 1

Copy and sync components with Class Sync Chrome Extension
2024
- 2

- 3

- 4PA
2021 · prestigemad.com
- 5IR
Sharing an internal tool that accelerated my development work 10-fold, especially with API debugging. Thought fellow developers here might find it useful. As a developer, I often have trouble reproducing errors at the client end. https://intercept.rest lets me debug and monitor API requests and responses. It is similar to the Network tab in Chrome Developer Tools but works for any API: mobile apps, webhooks, frontend etc. After I shared it with a close circle of friends, they found it incredibly useful and even found new use cases, I never imagined. Been a long time lurker here and…
2018
- 6IB
Hey everyone! Some time ago I was analyzing why React apps are so hard to optimize, and came to a conclusion that the lack of atomic updates is the culprit. I made an experimental library which basically updates everything in place directly in HTML. At some point I became aware that Solidjs exists, which is a very similar idea, but at the end of the day I realized my approach to API is quite different and warrants the existence of my library (my state primitive allows selector subscriptions, array iterators return a state primitive with the element, allowing to never re-render the whole…
2024 · github.com
- 7H2
2017 · github.com
- 8

- 9SM
2015 · github.com
- 10LC
2021 · github.com
- 11SA
2015 · github.com
- 12EO
2017 · github.com
- 13HA
2017 · statuspal.io
- 14ET
Hey Hacker News community! I'm thrilled to introduce Excessibility, a library that I've developed to address a crucial aspect of web development - accessibility testing. With Excessibility, you can effortlessly test your Elixir/Phoenix applications for a11y issues and ensure compliance with WCAG (Web Content Accessibility Guidelines). Accessibility is a fundamental principle that should be at the core of every web application. It ensures that people with disabilities can access and use your website or application without any barriers. However, testing for accessibility issues can be a…
2023 · github.com
- 15TC
2019 · github.com
- 16AP
Hello! I wanted A2A support for an Elixir project and thought about how I wanted to use it in my app, and less about the protocol. This became a GenServer-like protocol for an agent. The package has basic support and complies to the A2A TCK suite. Most of the project is LLM-coded, but with detailed planning and review at each step. Less than a week from initial idea to first hex.pm release - all coded on the side of other work. Interesting times where such a thing is possible. Just after publishing I did find an existing Elixir package implementing A2A (not sure how I could miss it at…
Mar 2026 · github.com
- 17

- 18R2
2012 · objectfabric.org
- 19RD
Hi everyone, I've been working on this thing for a while. It transpiles Haml into Ruby, and then it streams patches to the browser which update the DOM. There is a memory leak in s.rb, which I'm not really sure how to solve. Seems like objects stay alive for longer than they should because of circular references or something but I'm not sure what's going on to be honest. I think this approach has potential though.
2023 · github.com
- 20RT
Dynajot (http://www.dynajot.com) aims to be an extremely low friction way to create real-time collaborative applications. With a single javascript include, the library syncs DOM nodes for multiple users across browsers. You can view the code on Github here: https://github.com/rabidsnail/dynajot-sync
2013
- 21WA
2018 · moboudra.com
- 22MA
2018 · github.com
- 23LP
live-paint (https://paint.liveviews.cc/) is a demonstration of ts-liveview v2-rc3. The server converts JSX expression into plain HTML response. The UI is then updated via websocket. As opposite to React.js. The DOM updates are fired from server, and instructed with query selector (no virtual DOM). Hence, the amount of javascript downloaded and executed by client are minimal (or even optional for static web pages).
2021
- 24EA
2014 · elixirdose.com
Ranked by how close each launch is in meaning, then by votes. Refine with a description →