Hacker Newsnew | past | comments | ask | show | jobs | submit | jamauro's commentslogin

Bart Blast shows how to build local-first applications in pure Elixir using Hologram.

I think he’s created something truly special here. I’ve been playing around with it and the DX is unmatched imo. Looking forward to the official release.


It was a nice place pre-LLMs. One of the better communities imo.


I think so, though I didn't spend any near that amount of time on other language forums, though I guess that's saying something. It's cool having José, Chris, and other big community leaders participate often. Same goes for frequent participating from the Erlang core team, in fact I think it got to the point where we'd hear from them even more often!

But ya, was a fun place. I loved reading it, I love helping on it and the more general chats. I even made some friends and found a job through it!


What makes it better than Conductor?


> You're absolutely right

Claude, is that you? :)


It can handle file uploads. What issue are you running into?


Last time I tried it (quite some time ago) it didn't have anything built-in for file uploads: https://github.com/bartblast/hologram/issues/228

I've tried to keep an eye on its development, but I don't think file uploads were mentioned yet (and there's nothing about them in the docs).


There's no easy out-of-the-box way yet. But you can do it today with JS interop as a workaround. For small files: read the file and send the bytes directly in a Hologram command payload. For big files: fetch-POST the file to your own Phoenix endpoint, or directly to S3 with a presigned URL (no extra endpoint needed, since presigning can happen in a regular Hologram command or in the page's initial state), then pass the returned reference to a command for processing.

A proper Hologram-way file upload is planned as part of a high-level forms abstraction, which comes after Local-First support lands.


> directly to S3 with a presigned URL

yep, this is what I'm doing except with cloudflare's R2 :)


Hologram is a joy to work with. Local first support will take it to the next level. Bart is cooking.


Local-first is simmering! :)


Taking a peek at the repo and the local first data layer issue (https://github.com/bartblast/hologram/issues/940) I get the sense that you aren't (and not planning to) using any off-the-shelf CRDT or the like, am I right in that assumption?

How will conflict resolution be handled? Or is it a last-write-wins type setup? It would be amazing to have this build on top of automerge or something like that! It could compile to and use the automerge js libs in the browser, and deal with automerge through a NIF server side? Ok, not knowing your implementation and plans, I have to confess I am talking a bit out of my arse here...


I don't think CRDTs are needed and they come with some significant downsides. Bart's plan has the right idea using server reconciliation.


Is this Gen AI or did you write it?


Don’t insult me.


Haha I genuinely couldn't tell. I liked it which made me think that it was actually created by a human but had me a bit concerned that my detector is losing calibration.


I understand. :) Sorry about the sour response.


If we're not speculating, what are we even doing here?


this might be of interest to you https://popcorn.swmansion.com


I like this framing. Nice typography btw, a pleasure to read.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: