7 ms·
Cloudflare acquires PartyKit to allow developers to build real-time multi-user
- bennyp101 3y agoThe PartyKit website is wild, random cursors from other people! Quite fun to be chasing them around the screen! (Which does seem to show off the lack of lag and responsiveness)
- SushiHippie 3y agoReminds me of someone's personal site: https://dimden.dev/ https://dimden.dev/. Not many people are currently on there, but you can just open another tab and see for yourself. Also has a little live chat which gets a bridge to their discord server, where you can chat with others that are currently on the page.
- dorian-graph 3y agoAnd this other personal site, with real-time multiple cursors: https://j-e-s-s-e.com https://j-e-s-s-e.com
- rpastuszak 3y agoI love PartyKit! I used it to make a multiplayer version of sit: https://untested.sonnet.io/Sit.%2C+(together)+devlog+002+%E2%80%93+Space+Kalimba https://untested.sonnet.io/Sit.%2C+(together)+devlog+002+%E2...
- eddd-ddde 3y agoI love using Cloudflare for my projects, but something about Durable Objects just scares me so much. I feel like an application like collaborative editing would send so much requests that billing would have to be insane, right? Even for my hobby size projects which I would like to publish for fun, terrify me with possible usage costs. Their hibernation web socket thingy is great, but the real thing that scares me is the overall web socket message cost.
- kentonv 3y agoFWIW yesterday we announced that WebSocket messages are now billed at 1/20 of a request, rather than a full request. It was kind of buried in this omnibus blog: https://blog.cloudflare.com/workers-production-safety https://blog.cloudflare.com/workers-production-safety
- ftigis 3y agoIs this the better pricing y'all are figuring out that's been dangled since the launch of Durable Objects + WebSocket on Workers? Oh and somehow I missed the Hibernation API announcement. Paying for idle but connected time is what made me nope out of trying it out.
- eddd-ddde 3y agoOh I totally missed that, thanks for making me aware of it. Edit: Oh wow, I totally missed the rate limiter thing as well. Just last week I was implementing my own using DO. It's great to see this developments.
- Sai_ 3y agoYour clients control the number of messages they exchange with each other via the DO. You still have to protect the DO through some sort of auth and/or rate limits. Don’t see how any of these issues are unique to DOs.
- jaflo 3y agoWhen I took a look at using DO last time I decided against using them because you had to pay for the duration your clients are connected to them when using WebSockets. As far as I understood it’s not execution duration but flat out how long your clients are connected. You’ll burn through seconds quickly that way. I decided to go with a polling mechanism instead.
- ec109685 3y agoThey have hibernating durable objects now that don’t charge unless there is a request through them: https://developers.cloudflare.com/durable-objects/api/websockets/ https://developers.cloudflare.com/durable-objects/api/websoc...
- deleted 3y ago[deleted]
- halfjoking 3y ago[flagged]
- endisneigh 3y agoOther than games, anyone have good examples of real time multi user apps? Even with things like docs and sheets, though the capability is there, I find myself rarely editing in real time with others.
- ketzo 3y agoI frequently do this in Notion, especially in more brainstorm-y meetings. Also good for notetaking; I might be writing most of the notes, but then start talking more, and see someone jump in to take my place in the notes.
- selvan 3y agoChat, Audio/Video Conferencing apps are other examples.
- fritzo 3y agoRemote pair coding, then jumping to a shared whiteboard, then a shared diagramming tool, then back to a shared IDE
- latchkey 3y agoI use the realtime editing features all the time with my coworkers.
- badwolf 3y agoFigma is pretty great at this.
- kimar 3y agoObvious plug but my company[1] is building a multi-user real-time 3d engine. Think Figma meets Unity. There are lots of fun use cases around working collaboratively on subparts of a larger 3d system without having to break it apart: - architects working on different parts of a building - engineers working on different pieces of a CAD model - game designers working on different levels, etc [1] 3dverse.com
- inopinatus 3y agoms.inopinatus and I often do event and travel planning through shared realtime notes you could also build a 2-person permissive action link for nuclear weapons launches or a stock exchange
- ptrwis 3y agoDurable Objects have a bit weird programming model for me, I hope this one will be easier.
- rasengan 3y ago> The acquisition of PartyKit by Cloudflare isn't just a milestone for our two teams; it's a leap forward for developers everywhere. This press release was written by ChatGPT.
- willsmith72 3y agohahahah so i thought the same and decided to try and recreate it model = gpt4 prompt=write a press release for this announcement from cloudflare. Cloudflare acquires PartyKit to allow developers to build real-time multi-user applications and guess what was halfway through... "The acquisition of PartyKit by Cloudflare is more than just the merging of two technology companies; it is a significant leap forward in reducing the complexity and barriers to entry for developers aiming to build the next wave of interactive web applications. " too good to be true https://chat.openai.com/share/02976d40-f771-42ce-ae1e-738ba9dbd5f1 https://chat.openai.com/share/02976d40-f771-42ce-ae1e-738ba9...
- pluto_modadic 3y agohow do you get that from just that sentence?
- sdwr 3y agoChatGPT has a naive optimism. It reaches for airy, meaningless, slightly metaphorical statements right away (when asked to support something, not when explaining). It also uses simple, but very clean grammar, and has a bit of a thesaurus feel where it has no attachment to any particular word. I've seen lots of people get it wrong, claiming that something is ChatGPT when it isn't. To my understanding, this is because they are negative matching - "this sounds weird, so it must be AI", or "this is wrong, so it must be AI", and not positive matching on ChatGPTs exact tone.
- ethbr1 3y agoGuess they incorporated a lot of HN training data. :)
- 3y ago
- wrongcarwhy 3y agoPartykit confused me. They hired two people, then laid them off (https://twitter.com/threepointone/status/1724159621382754738 https://twitter.com/threepointone/status/1724159621382754738) after raising 2.5 million, with nothing but a vague message about "the tech landscape is moving changing incredibly fast". That seems kind of callous?
- cj 3y agoTrying to improve EBITDA (profitability) in advance of an acquisition perhaps? Or the company knew the deal was going forward and Cloudflare was unlikely to retain new employees?
- ensignavenger 3y agoA lot of folks on here complain about companies making long layoff announcements shrouded in "nice" speech. Finding the right balance seems to be hard for a lot of PR folks.
- progbits 3y agoProblem is the layoff, not the PR balance.
- kentonv 3y agoI don't know anything about what happened here, but I know Sunil is a good person and wouldn't have done this on a whim. Sometimes there are internal problems forcing painful decisions but you just can't go and tweet the details.
- dont_dox_me_bro 3y ago[flagged]
- ensignavenger 3y agoGood people make mistakes. Maybe the fired employees got really good severance packages? Maybe they were given introductions that led to immediate employment offers? I have no idea, but judging some one based on a tweet where they announced they had made a mistake that may have hurt two individuals is hardly fair.
- trevor-e 3y agoI was looking at partykit a while back since I have some multiplayer game ideas I finally want to prototype. The pricing confused me -- why is it per developer when they claim to take care of the infrastructure hosting? Shouldn't it be usage based? Instead I've been learning Elixir + Phoenix framework which has been fun.
- Gr4phTh3ory 3y agoThere's both a per-developer and per-usage component into their "pro" plan.
- trevor-e 3y agoOh I totally missed they snuck that in as a line item. Still, they require you to call them so who knows what that could end up being.
- spxneo 3y agohow does this compare to Supabases realtime features? I been generally confused about cloudflare pricing and its wide array of products (unsure which to use and when).
- w10-1 3y ago"The future of serverless is stateful" I'm a big fan of Cloudflare's openness, e.g., in supporting wasm in workers. But I wonder if building lock-in is really in their customers' interests - or theirs, if people lose faith in them. One of the value propositions for javascript+databases, and java before it, is that it was a programming model built in the open, and sometimes to standards that multiple vendors could supply. The openness of SQL has powered the industry, notwithstanding the manifold limitations and variants. A PartyKit integration is not particularly concerning if it's just niche gaming, but if real-time collaboration really does become trivial to implement at the same time AI spreads into all corners of content, it could become the dominant programming model for emerging tech at scale. AI seems to have ample competition, but I see little competition and many barriers to entry for this kind of programming model.
- ayuhito 3y ago> But I wonder if building lock-in is really in their customers' interests - or theirs, if people lose faith in them. People happily (or sometimes unhappily) lock themselves in with AWS since it’s convenient and useful. And that’s what Cloudflare is aiming to be in the serverless landscape even if it isn’t ideal.
- RowanH 3y agoI guess there's degrees of lock-in. I.e. using some parts of AWS you know push comes to shove you could write a different alternative/use a different library. It's a bunch of building blocks. There's various alternatives out there for components. Without reading too much of Partykit + Cloudflare, if you base your whole architecture on the way one company works and perhaps the pricing is too good to be true, you're setting yourself up for a rude shock in future. Everytime I've looked at Cloudflare's pricing I've gone "that's bonkers cheap" for what you're getting, which sets off alarm bells that once a PE company gets their hands on it, it's not going to be that cheap any more.
- kentonv 3y agoStandards bodies only standardize things after they've been proven to work. You can't standardize a new idea before offering it to the market. It's hard enough to get just one vendor to experiment with an idea (it literally took me years to convince everyone inside Cloudflare that we should build Durable Objects). Getting N competing vendors to agree on it -- before anything has been proven in the market -- is simply not possible. But the Durable Objects API is not complicated and there's nothing stopping competing platforms from building a compatible product if they want. Much of the implementation is open source, even. In fact, if you build an app on DO but decide you don't want to host it on Cloudflare, you can self-host it on workerd: https://github.com/cloudflare/workerd https://github.com/cloudflare/workerd
- neom 3y agoMia Wang big brain at work. Good stuff!! (https://x.com/miawang__ https://x.com/miawang__)
- ensignavenger 3y agoIs it possible to use PartyKit without Cloudflare? Such as hosting your own workerd instance? Is there any documentation anywhere for this?
- ensignavenger 3y agoI should note, I spent quite a bit of time looking at the official docs and couldn't find an answer for sure right away. It seems like Cloudflare is the only officially supported option (either through the PartyKit managed service or direct). While I might consider using Cloudflare, I wouldn't be willing to build an app in such a way as to depend on Cloudflare. If Cloudflare changes pricing, or comes under political pressure to terminate my account, or my business changes such that the Cloudflare offering is no longer suitable, I want a way to quickly migrate. It does seem that the main pieces are there and open source, but would likely require some amount of work to figure out and get into production.
- CharlesW 3y ago> Is there any documentation anywhere for this? PartyKit is open source (https://github.com/partykit/partykit/ https://github.com/partykit/partykit/, MIT), so you could create your own back-end. The Socket.IO folks appear to have done this: https://blog.partykit.io/posts/party-io-a-socket-io-backend-for-partykit/ https://blog.partykit.io/posts/party-io-a-socket-io-backend-...
- ensignavenger 3y agoThanks! I will look into that. I knew it was Open Source and that it would be possible to create my own backend, I was just wondering if it had been actually been done/documented. This link answers my question, and PartyKit will go on my radar for future evaluation and possible use! :)
- lalalalalia 3y agoIf you want to use something similar that’s not owned by a big company now, take a look at cord.com :)
- lalalalalialia 3y agoIf you want to use something similar that’s not owned by a big company now, take a look at cord.com :)
- Benjamin_Dobell 3y agoAccount created 6 hours ago and has just posted this comment. Twice. This ah, probably doesn't come across the way you'd like it to. More than that, isn't this precisely the kind of product that you would want operated by a large cloud infrastructure provider?
- jakegmaths 3y ago"Building experiences with real-time components was previously only accessible to multi-billion dollar companies" ... what a load of nonsense. I've built them in a few hours, spending £5 per month for a server.
- nullzzz 3y agoI think it’s an exaggeration to say ”Building experiences with real-time components was previously only accessible to multi-billion dollar companies”. For instance my hobby project ourboard.io provides realtime collaboration and it costs like 20$ to host with current moderate load of users. It utilizes Y.js for collab text editing. Y.js is dedinitely a great tech and has a low entry barrier.
- CharlesW 3y agoIf you consider it from the Cloudflare author's POV, it's likely an implied "at scale" in that statement.
- nullzzz 3y agoSure, but doing anything at a grand scale is expensive - realtime collab is no exception IMO, not that we already have things like Y.js. And don’t get me wrong, I’m not playing Cloudflare’s efforts down, just saying that particular claim is false.
- toddmorey 3y agoYeah I agree with it being an exaggeration. They are certainly riding the admittedly dated perception that realtime is so hard it's only available to the Googles and Figmas. But there's now some amazing open source solutions available like Y.js and ElectricSQL[1]. The barrier has certainly come down. [1] https://github.com/electric-sql/electric https://github.com/electric-sql/electric
- matlin 3y agoThere's a whole host of similar solution in the local-first realm of software[1]. I'm biased but you should definitely try Triplit[2] if you want a super easy way to make real-time collaborative software that works seamlessly even when offline or on unreliable networks (like on mobile). [1] https://localfirstweb.dev/ https://localfirstweb.dev/ [2] https://triplit.dev https://triplit.dev
- YousefED 3y agoCongrats! I used PartyKit since the early beta; for the open source React rich text editor I'm working on (https://www.blocknotejs.org https://www.blocknotejs.org, the homepage runs on Partykit), and PartyKit was a breeze to integrate (ofc, big part because we both build on Yjs). Looking forward to seeing where Cloudflare wants to take this further!
- stevenfabre 3y agoGenuinely happy for Sunil who built a great community and moved the space forward! Liveblocks also runs partly on Cloudflare Workers, it’s been great for stateful real-time servers.