Confirmed: version numbers really are cheap ๐ท๏ธ #StatorJS 2.5 is out ๐ five minors since 2.0. Each one small, but together they round out what production apps need: real security primitives, first-party middleware, and a CLI that owns the toolchain. statorjs.dev
statorjs.dev
Also along the way: .env loading with zero dependencies, signed cookies for auth handshakes, and live pages that hard-reload when they reconnect to a newer deploy. Every release has its story in the changelog ๐ docs.statorjs.dev/changelog/ ๐ป pnpm create stator my-app
Confirmed: version numbers really are cheap ๐ท๏ธ #StatorJS 2.5 is out ๐ five minors since 2.0. Each one small, but together they round out what production apps need: real security primitives, first-party middleware, and a CLI that owns the toolchain. statorjs.dev
Confirmed: version numbers really are cheap ๐ท๏ธ #StatorJS 2.5 is out ๐ five minors since 2.0. Each one small, but together they round out what production apps need: real security primitives, first-party middleware, and a CLI that owns the toolchain. statorjs.dev
statorjs.dev reposted
working with @frontside.com (@cogentdude.com and @jacobbolda.com) on this rendering engine has been stellar, and i'm thrilled they've joined the @bomb.sh core team. better together! tty is a smaller, faster, more powerful terminal rendering engine, and it's just the start bomb.sh/docs/tty
exciting news! we've partnered with @frontside.com together we're bringing their work on clayterm into the ecosystem as @bomb.sh/tty, a high-performance wasm renderer for terminal apps and we're jointly contributing $400/mo to support maintenance of the underlying clay layout engine
statorjs.dev reposted
๐ถ๏ธ Server components don't have to be hard. It really doesn't have to be a big deal. Client code goes in a <script>. Period. No "use client;" pragma. No "/client" imports. No debating whether to "useServerProps". Browsers know <script>'s. Put client stuff there. @statorjs.dev #webdev #StatorJS
Stator 2.0 is out ๐ ๐ถ๏ธ We removed two-way binding read() is now the only display primitive. Its the same in a server template or a client island - the compiler picks the right mechanism for each. Writes are typed events that machines declares and the compiler checks statorjs.dev #StatorJS #webdev
Stator 2.0 is out ๐ ๐ถ๏ธ We removed two-way binding read() is now the only display primitive. Its the same in a server template or a client island - the compiler picks the right mechanism for each. Writes are typed events that machines declares and the compiler checks statorjs.dev #StatorJS #webdev
Stator 1.7 is out ๐ Stator renders your pages on the server, straight from the state machines that hold your logic. As of today those same machines can serve your JSON API, your RSS feed, and anything else that speaks HTTP. No second data layer, nothing to keep in sync. statorjs.dev
Server-originated events round it out: dispatchToApp now lives on the app object, dev server included, so a payment webhook becomes a route that dispatches one typed event and every live page reading that machine updates. Full release notes: docs.statorjs.dev #buildinpublic #webdev #StatorJS
Stator 1.7 is out ๐ Stator renders your pages on the server, straight from the state machines that hold your logic. As of today those same machines can serve your JSON API, your RSS feed, and anything else that speaks HTTP. No second data layer, nothing to keep in sync. statorjs.dev
statorjs.dev reposted
13 years later and I'm still building pivots, live tiles, and appbars. A Windows Phone-style weather app with flip tiles, a location pivot, the app bar and its drawer, everything rendered by the server, running on @statorjs.dev , the web framework I've been building. #webdev #StatorJS
๐ Stator 1.6 is out Flaky-network resilience, built in: in-flight and connection state as data attributes, event POSTs that retry safely behind idempotency keys, and live pages that resync in place after a dropped connection โ no reload. statorjs.dev #javascript #webdev #StatorJS
๐ Stator 1.6 is out Flaky-network resilience, built in: in-flight and connection state as data attributes, event POSTs that retry safely behind idempotency keys, and live pages that resync in place after a dropped connection โ no reload. statorjs.dev #javascript #webdev #StatorJS
Your data lives in a database on the server. Stator's bet: render the page there too. When data changes the browser gets a tiny note, "change this bit", instead of a whole app asking the server what's true. One program. No glue code to break. statorjs.dev #buildinpublic #webdev #StatorJS
Stator 1.4 is out ๐ Stator keeps your app state on the server โ the browser just gets tiny DOM patches. New: defer() for slow APIs โ fetches run in parallel and the page arrives complete. And live lists that update one field at a time. statorjs.dev #StatorJS #webdev
Demo time: use `npm create stator` to clone our live poll demo and open it in two tabs and vote. The other tab just updates. No websocket code, no client state to sync, no cache invalidation โ the server already knows exactly what changed. Demo and docs: statorjs.dev
Stator 1.4 is out ๐ Stator keeps your app state on the server โ the browser just gets tiny DOM patches. New: defer() for slow APIs โ fetches run in parallel and the page arrives complete. And live lists that update one field at a time. statorjs.dev #StatorJS #webdev
Hello, World. We're building Stator โ fine-grained reactivity that lives on the server. State machines hold your logic. Every event patches just the DOM that changed. No client app state (unless you really need it). Docs and demo are live: statorjs.dev #buildinpublic #webdev #StatorJS
You are up to date.