Hello, Dynaboard
dynaboard.com
dynaboard.com
Multiplayer: We used the YJS project (https://github.com/yjs/yjs) as the baseline for our multiplayer system. We created a thin harness around the client and ended up implementing our own server-side architecture to handle relaying between the various WebSocket servers. More on how we do this soon.
WebAssembly: Rather than running your custom code in an iframe, we run it inside a wasm-based sandbox, a compiled version of the QuickJS VM (yes, it's JS-in-JS). This approach gives you synchronous access to most of the DOM APIs without sacrificing safety. We do some fancy ES6 Proxy management to implement the FRP-like data binding system inside the VM. In production, the browser runs the project's precompiled bytecode. In the future, we plan to support other languages with a similar architecture (Python via Pyodide, Rust, Go, etc.).
Code editing: We use Monaco, the same editor that VS Code uses. We've had to create a handful of custom extensions, including a few custom language servers, to get it to be aware of the VM environment. I'm a vim-er so we will definitely have a vim mode.
[1] https://dynaboard.com/images/screenshots/DynaHacker_News.png
I'm curious about why. Is sychronicity the only reason? (And is it really worth it? `await` makes asynchronous code paths pretty unobtrusive.) Mirrors[1][2] are pretty interesting.
(Not sure that I agree that compile-to-WASM makes for JS-in-JS. WASM isn't JS. Why do people keep conflating them?[3])
1. <https://bracha.org/mirrors.pdf>
https://www.figma.com/blog/how-we-built-the-figma-plugin-sys...
Sure, that much is clear. But we're discussing it in contrast with other security-preserving approaches. "For security" only really makes sense we were asking, "Why do any of these things at all?", but we're past that. What we're asking is "Why this thing specifically?"—especially where that thing is expensive.
> Figma has a good overview of the different approaches they considered for their JavaScript plugin system, and JS-in-JS was one of them
First: to reiterate, JS-in-WASM is not JS-in-JS.
Secondly: Mirrors, notably, are not among the approaches they evaluated. I advocated for an evaluation of a similar Mirrors-based approach in the HN thread at the time that the Figma post was published:
I end up having to writeoff/ignore the product because I don't have the mental space to remember it without pricing. and these days ill never sign up for someone's newsletter if I can help it!
We're looking to make Dynaboard really affordable, especially for smaller teams, and entirely usage-based (no per-seat cost). Our goal is to price it more like a cloud infrastructure product and not charge for things that do not cost us money. We don't want to post something and promise something that we can't deliver on, and so we decided to table announcing the prices until we figure it out over the next 2 months. You can find the approximate structure of the pricing on the pricing page.
b) bad products: it’s an extortion play and they will get what they can.
solution:
a) if you need their product buy it, and plan how to migrate away from it
b)buy their stock and hope that not much people plan how to migrate away.
Seeing "coming soon" and "enterprise" on the pricing page is a guaranteed pass from me (but not a permanent one).
Interesting tool, but it seems like it doesn't have a clear audience in mind. The end user seems to be "everybody" and that's a hard sale to make.
We're building for early-stage technical teams and independent developers that want to reduce the iteration time on prototype -> production apps.
One note: we have some lightweight persistent data stores built-in for convenience, like a key/value store. However, you're always able to build on top of your own database / API and most of our early users do.
Why would a person use this over salesforce, Wordpress, or the dozen other CMS systems out there? I watched the 5 minute demo, it is doing nothing complex. How many one off sites we all seen that are written by a tool that ended up not able to handle the complexity. Tools like this need a huge "never" been done before hook, and this one does not readily have it.
I'm curious how this compares to AppGyver (https://www.appgyver.com) which was recently acquired by SAP. (I am not affiliated).
Thanks!
Nice landing page. Looks like you're missing a polyfill for ResizeObserver.
I can't use dark themes comfortably because of vision limitations.
How realistic hosting on-premise / in a private cloud without breaking the bank is? The price is "contact us" right now. I sometimes need to develop applications where privacy and GDPR is critical.
The current pricing per developer/user is not announced and I see that as a risk for me. I have been priced out of Retool, they wanted more money than two good full-stack senior developers, so I would like to know if your product is going to make sense for me before I invest time and resources in it. I'm currently using AppSmith.
We will not be pricing per developer or per user, but rather usage-based. We aim to be affordable for applications at scale, because we believe the cost of an internal app should not increase linearly with your headcount.
We’ve designed the system for a few deployment configurations, with independent single-tenant and multi-tenant support on the control plane and data plane. The goal is flexible on-prem deployments that balance customer convenience with regulatory / privacy requirements. At the moment though, we’re focused on our multi-tenant cloud environment and making that as top-notch as possible.
You’ll also be able to eject your app out of Dynaboard. The code is yours, we aim to have the best editor available and convenient serverless hosting so that’s why you’ll stick with us.