exhibitor
plane
exhibitor | plane | |
---|---|---|
6 | 23 | |
8 | 1,590 | |
- | 2.7% | |
6.8 | 9.4 | |
about 1 year ago | 5 days ago | |
TypeScript | 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.
exhibitor
-
Ask HN: Most interesting tech you built for just yourself?
TL;DR: A React front-end component workshop, a simple version of Storybook.
So around 5 months ago, I needed a tool to preview front-end (React) components whilst I create them for a personal project of mine. There were two options: Storybook or Ladle.
Storybook is the tool everybody knows. I've used it before quite a lot. It's very big, full-fat, supports loads of use-cases, etc.
Ladle comes out of Uber. It's very small, lean, and doesn't support that much. After trying it out for a while, it just gives me a feeling like it's a 20% project to learn some new tech.
So I realised that I wanted something kind of in the middle. Something that's a bit more customizable than Ladle, but something much simpler and less intrusive than Storybook.
This led me to create Exhibitor (https://github.com/samhuk/exhibitor) (https://demo.exhibitor.dev).
I worked on it on-and-off for a couple months, and it ended up being something that I'm quite proud of. It's not perfect, and supports only a fraction of what Storybook does, however for a tool made by 1 engineer vs the 20+ for Storybook, I'm quite happy about it!
-
Show HN: Exhibitor – Snappy and delightful React component workshop
Exhibitor, a snappy & delightful React component workshop, is GA. My aim is for Exhibitor to be an extremely fast, easy to use, and delightful tool for creating front-end component libraries.
It's been around 2 months since my last mention and quite a tonne has changed.
Wiki: https://github.com/samhuk/exhibitor/wiki
-
Show HN: DriftDB is an open source WebSocket back end for real-time apps
Looks interesting. Coincidentally, I've just completed the bulk of work on a distributed Websocket network system to synchronize certain bits of state between multiple clients for my own kind of Storybook tool [0]. How interesting!
This kind of tool is exactly what I would have needed, instead of the approach I've taken which is a bit kludgy, grass-roots, novice-like, etc.
Good work :)
[0] https://github.com/samhuk/exhibitor/pull/22
-
Ask HN: What have you created that deserves a second chance on HN?
I was a bit deflated when my submission about https://github.com/samhuk/exhibitor fell through the HN floor-boards.
Think Storybook but simpler, faster, better Typescript support, and uses esbuild by default.
...Is the aim. I'm the sole lead dev working on it at the moment up against the ~10-20 strong team who built most of Storybook, so it's a long road ahead, but it's growing into something I'm quite proud of and happy about.
- Show HN: Exhibitor – Snappy, no-fuss, delightful React component workshop
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?
epub2tts - Turn an epub or text file into an audiobook
Centrifugo - Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.
MLVPN - Multi-link VPN (ADSL/SDSL/xDSL/Network aggregation / bonding)
NATS - High-Performance server for NATS.io, the cloud and edge native messaging system.
scheme-for-max - Max/MSP external for scripting and live coding Max with s7 Scheme Lisp
pingora - A library for building fast, reliable and evolvable network services.
mqtt-to-kafka-bridge - Move your messages from MQTT to Apache Kafka in real-time :rocket:
aper - A Rust data structure library built on state machines.
brethap
nix2container - An archive-less dockerTools.buildImage implementation
ratarmount - Access large archives as a filesystem efficiently, e.g., TAR, RAR, ZIP, GZ, BZ2, XZ, ZSTD archives
cli - 🖥️ Depot CLI, build your Docker images in the cloud