Profile avatar
nikgraf.bsky.social
Founder Serenity • Passionate about Cryptography, Local First, React, CRDTs, skiing & cycling • Organizer of ReactVienna
64 posts 979 followers 193 following
Prolific Poster
Active Commenter

📢 React Vienna Meetup in June: 🗓️ June 3 · 18:30 CEST 📍kununu · Schottenring 2-6,4th floor · 1010 Vienna 💬 Remote Components with RSC by @lazarv.dev 💬 Building real-time fingerspelling recognition in React Native by Elena & Niklas 💬 Automating JSDoc with Github actions by Adrián

🚀 Announcing noble-sodium (has been a while since I open sourced something 😅) a TypeScript Libsodium-compatible API built on Noble packages. - No WebAssembly - fully code-splittable - React Native ready - Drop-in replacement for libsodium-wrappers 👉 github.com/serenity-kit...

📢 React Vienna Meetup in May: 🗓️ May 6 · 18:30 CEST 📍Moonshiner · Donau-City-Straße 1, Tech Gate, 6. OG · 1220 Vienna 💬 User interfaces at your fingertips (The Raycast approach to application interactions) by Michael Bartl & Martin Sedláček 💬 Shaders Demystified @thecurlydev.bsky.social

📢 React Vienna Meetup in April: 🗓️ April 8rd, 18:30 CEST 📍Eversports, Jakov-Lind-Straße 13, 5th Floor, 1020 · Vienna 💬 React.use(Compiler) - Can we finally forget about dependency arrays? by Max Zauner 💬 Building a multi-domain SSO with FusionAuth and NextJs: Challenges and learnings by @cezar.is

LiveStore Office Hours #2 covering: - Another update on the upcoming 0.3.0 release - Devtools improvements & @solidjs.com integration - Discussion about event sourcing and migrations www.youtube.com/watch?v=Menh...

Seph Gentle made a video in which he builds a CRDT for collaborative text editing from scratch www.youtube.com/watch?v=_lQ2...

January Edition of the React Vienna Meetup has started 🎉. First up: Daria Lyubaeva talking about server-side tracking in Next.js using Snowplow 🙌

There is a rumor that an attempt to get Poland to change its position is under way. This would give the pro-ChatControl side a majority and make mass scanning of encrypted private messages the law in Europe.

React v19 is now stable! react.dev/blog/2024/12...

First great talk is underway: Drive Your Content with Astro by @hola-soy-milk.online

I gave a talk at Handmade Seattle last year about why I think software gets complicated (spoiler: it's not laziness). www.youtube.com/watch?v=czzA... This is something I've thought about for years and observed up close both in commercial and research contexts, so I hope you enjoy.

Episode #18 is out. James Arthur (@thruflo.com) on ElectricSQL, read/write-path syncing and PGlite to run Postgres everywhere via WASM. Full episode links and show notes in the comments.

How Bluesky could implement Limited Audiences / Non-Public Content and private, end-to-end encrypted protocol-native DMs using existing cryptography: soatok.blog/2024/11/29/i...

React Vienna Meetup in December: 🗓️ December 3rd, 18:30 PM CET 📍LEAN-CODERS, Hainburger Str. 33, 1030 · Vienna 💬 Server-side tracking in Next.js using Snowplow by Daria Lyubaeva 💬 Beyond Next.js: Exploring Alternative React Server Frameworks by Andreas Heissenberger www.meetup.com/reactvienna/...

React 19 RC1 is out! Compared to RC0 it includes re-adding parallel component rendering inside a Suspense boundary. Amazing to see and great work by the team. Looking forward to the React 19 release github.com/facebook/rea...

Handling timezones in JavaScript apps can feel intimidating, but I recently had to confront it — and had an AHA moment! 🕰️ If you’ve been dodging timezone complexities, this guide is for you: www.nikgraf.com/blog/managin...

@schickling.dev the Livestore landing page should summarise & link this HN comment when pitching Sqlite in the Browser: news.ycombinator.com/item?id=4098... 😄 seriously!

#TIL Dusting your radiators can improve efficiency around 5-10%, potentially saving you hundreds of EUR/USD annually. I cleaned ours today. Don’t let dust burn your budget. Winter is coming 🥶

😂

Recently explained how the Base58 alphabet was designed to avoid reader confusion — a thoughtful trade-off for a slightly larger size. Love the thinking behind it! To make it concise, I wrote a blog post. Check it out: www.nikgraf.com/blog/base58-...

After the long wait, React Navigation 7 is here 😍 📷 Highlights - Static API - Preloading screens - Layout props - useLogger devtools - Searchbar for more navigators - Sidebar and animations in Bottom Tabs - Drawer Layout package And more... Blog post reactnavigation.org/blog/2024/11...

My talk on End-to-end Encryption in Local-first Apps is available 🥳 In the talk I covered four key pillars: - Sync - Key Agreement - Establishing Trust - Identity and for each I explained the why and how with examples and compared local-first frameworks www.youtube.com/live/s2pUguB...

Recording of an Automerge event in which my colleagues shared updates on the big projects we have in progress: radically reducing memory use, a new sync protocol that scales better, and a decentralised end-to-end encryption layer for Automerge. us02web.zoom.us/rec/play/PZP...

🚀 My final "Advanced React" workshop of the year is happening at ReactAdvanced in London on 24th Oct If you're working with React and eager to dive into all the new features in React 19, this workshop is for you. Don’t miss it! reactadvanced.com/workshops reactadvanced.com/checkout

A plea to the cryptography community: let's please all agree to use seeds as ML-KEM keys. Seeds are generally preferable to expanded keys because they are smaller and don't require validation. Having one key format is VASTLY preferable to having two.

Want to build real-time collaborative applications?👩‍💻🔄🧑‍💻 Checkout Automerge Jumpstart! A boilerplate including user authentication & authorization Tech: Automerge, tRPC, Prisma and deployment on @flydotio and @vercel Bonus: includes explanation videos on the website ➡️ www.automerge-jumpstart.com

interesting model for open source

Introducing react-yjs v1.0! 🎊 Seamlessly bind Yjs to React components with the `useY` hook to create real-time collaborative user experiences Introduction video (3:47min): www.youtube.com/watch?v=Fz4t... Repo: github.com/nikgraf/reac...

The local-first conference in Berlin was amazing! Such energy in the community, a diverse set of people bringing their perspectives, and alignment on values. The 200-person venue sold out in a week. So gratifying to see the excitement about local-first and to meet lots of interesting people.

Thought this day will never come. I opened a bug in the Chromium issue tracker 😱😅https://issues.chromium.org/issues/343093076