aper
plane
Our great sponsors
aper | plane | |
---|---|---|
8 | 23 | |
292 | 1,579 | |
1.4% | 9.3% | |
0.0 | 9.4 | |
about 1 year ago | 5 days ago | |
JavaScript | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
aper
- Aper: a Rust library for data synchronization using state machines.
-
You might not need a CRDT (Conflict-free Replicated Data Type)
The relevance here is that this post mentions their new Rust library Aper (https://aper.dev/). In addition, CRDTs are a favorite topic of Raph Levien, AKA the Rust GUI guy, and featured in the Xi editor, his first major Rust project (retrospective here: https://raphlinus.github.io/xi/2020/06/27/xi-retrospective.html).
-
You might not need a CRDT
It's also super refreshing to see the work on Aper [1] [2] (a Rust library implementing state machine synchronization across a trusted network). Looking forward next series of articles here!
[1]: https://aper.dev/
[2]: https://github.com/drifting-in-space/aper
-
CRDTs make multiplayer text editing part of Zed's DNA
Our Aper (https://aper.dev) implements a number of similar concepts (state machine replication with optimistic local transitions + rollback). I 100% agree that it’s an easier model to reason about.
Your approach with cursors is clever, that part I haven’t seen elsewhere.
-
Ask HN: Who is hiring? (June 2022)
Drifting in Space | Full-time | NYC | https://driftingin.space
We make Jamsocket (https://jamsocket.com/), which allows application developers to spin up and connect to server-side compute. This allows browser-based applications to do computationally-intensive things that are otherwise impossible in the browser.
We went through YC and just raised a seed round and are looking to build up our team. We are based in NYC but are open to remote for experience candidates.
Our tech stack includes Rust, NATS, Docker, Postgres, TypeScript.
We have lots of fun technical problems that get into the nitty-gritty of networking and operating systems, plus fun open-source stuff like Aper (https://aper.dev/). We are excited to build a diverse team and encourage non-traditional candidates to apply.
Email [email protected] or see more details here: https://www.ycombinator.com/companies/drifting-in-space/jobs...
plane
- Plane: A distributed system for running WebSocket services at scale
-
Pingora: HTTP Server and Proxy Library, in Rust, by Cloudflare, Released
One reason I'm excited about this is that it appears to let you write arbitrary routing logic into a layer 7 proxy. This is something we had to build for https://plane.dev and it would have been nicer to use something like this, but we couldn't find anything like it at the time.
- Plane: A distributed system for running stateful WebSocket services at scale
-
"VMWare rewritten in Rust
Of course, as a user, I would prefer as much as possible to be under MIT or Apache. See for instance https://plane.dev/ for a similar project which is MIT licensed and https://jamsocket.com/ for the commercial version.
- Session back end orchestrator for ambitious browser-based apps
- Plane – open-source Jira alternative
- Plane: A container orchestrator for ambitious browser-based applications
-
The growing pains of database architecture
From an earlier blog post[1], the system for synchronizing file/document state lives independently for their database. As I understand it, their database is for metadata rather than actual document content.
> It’s worth noting that we only use multiplayer for syncing changes to Figma documents. We also sync changes to a lot of other data (comments, users, teams, projects, etc.) but that is stored in Postgres, not our multiplayer system, and is synced with clients using a completely separate system that won’t be discussed in this article. Although these two systems are similar, they have separate implementations because of different tradeoffs around certain properties such as performance, offline availability, and security.
This post[2] goes into more detail on how they spin up backend processes to serve as the source of truth while documents are open (we took heavy inspiration from it when building https://plane.dev, which aims to be an open-source implementation of that architecture.)
[1] https://www.figma.com/blog/how-figmas-multiplayer-technology...
-
Show HN: Accelerated Docker builds on your local machine with Depot (YC W23)
We have been happily using Depot for months now to build https://plane.dev. Prior to finding Depot, we basically gave up on building an M1 image from a GitHub action.
(btw, I always get suspicious when a Show HN post has a lot of praise in the comments, but I swear the Depot folks did not ask me to post anything and I only saw the post because I was checking HN)
-
Launch HN: Depot (YC W23) – Fast Docker Images in the Cloud
Congrats on the launch!
We've been using Depot with Plane (https://plane.dev/). Prior to depot, I had to disable arm64 builds because they slowed the build down so much (30m+) on GitHub's machines. With Depot, we get arm64 and amd64 images in ~2m.
What are some alternatives?
plane - 🔥 🔥 🔥 Open Source JIRA, Linear and Asana Alternative. Plane helps you track your issues, epics, and product roadmaps in the simplest way possible.
Centrifugo - Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.
google-search-results-nodejs - SerpApi client library for Node.js. Previously: Google Search Results Node.js.
NATS - High-Performance server for NATS.io, the cloud and edge native messaging system.
wg-best-practices-os-developers - The Best Practices for OSS Developers working group is dedicated to raising awareness and education of secure code best practices for open source developers.
pingora - A library for building fast, reliable and evolvable network services.
Plausible Analytics - Simple, open source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics.
nix2container - An archive-less dockerTools.buildImage implementation
Mattermost - Mattermost is an open source platform for secure collaboration across the entire software development lifecycle..
cli - 🖥️ Depot CLI, build your Docker images in the cloud
peritext - A CRDT for asynchronous rich-text collaboration, where authors can work independently and then merge their changes.
statebox_riak - Convenience library that makes it easier to use statebox with riak, extracted from best practices in our production code at Mochi Media.