Happy #HoloMonday everyone! If you’re not familiar with Holo Monday, it’s an initiative our community has created to celebrate our devs — both people working on hApps and Holo team members — on the first Monday of each month.
In that spirit, I want to share updates from a number of projects building on Holochain, as well as dev tools reaching new stages of maturity and even a new project I’d never heard of! Let’s see what’s fresh.
Holochain Launcher 0.3.8
Launcher, the user-friendly Holochain runtime and hApp runner, has been updated for Windows, macOS, and Linux to include Holochain 0.0.124. The previous Launcher version included Holochain 0.0.119, and the HDK and network protocol have changed since then, so applications built for newer versions should direct their users to update their Launcher version.
Flux, the flagship communities app from Junto Foundation, is progressing nicely. This is the first time I’ve reported on this application, so there’s a lot to talk about.
Flux is the newest iteration of Junto’s vision of healthy online social spaces. Long-time followers will know that Junto were one of the first projects to commit to building on Holochain. A few years ago, they produced a proof-of-concept app for mobile phones and learned a lot in the process. Their newest iteration, Flux, embodies their core insight: focus on community creation rather than a new social media platform, because close-knit communities are what create healthy online social spaces.
To me this feels like this takes the best parts of early Web2 — the community cohesion of old-fashioned forums and blog networks — and brings them into the hyperconnected Web3 world. Right now, Flux just gives your community a multi-channel chat server, but they plan on adding more features, like blogs, knowledge bases, DAO-style governance, and cryptocurrencies.
This is early days for Flux, and you may notice a few bugs and speed issues, but I’m very impressed by what they’ve already accomplished. It feels like a professionally-designed, well-thought-out app.
Download Flux and create a community!
Acorn, the collaborative goal-planning whiteboard, has gotten a cool new feature in its newest version: presence indicators! Built on Holochain’s signals feature, it shows you which cards your colleagues are currently working on, giving you the comforting feeling of working in the same room as them. As the release notes point out, it’s also good for keeping you from stepping on each other’s toes!
Download Acorn and try it out with your colleagues!
Electron template for hApps
Sprillow, the dev shop behind Acorn, have created a super useful template repo for anyone who wants to bundle their hApp, UI, and Holochain itself into a single cross-platform executable. I understand they’ve done a huge amount of work getting it usable, from taking care of cross-platform build issues to dealing with the tricky bits of getting the app trusted on macOS. If you’re planning on releasing your hApp as a standalone, you ought to check it out.
Clone the electron-holochain-template repo.
Clutter lives again!
Well, a small team of developers, headed by Moritz (a former colleague), is rebuilding Clutter for the new Holochain SDK. The project has gained attention from a number of developers (including some who weren’t previously involved in building hApps!) who are working on it ‘hackalong’-style. This means arranging regular times where they can all work on it together over a video call. This is a side project for most of them, and this format doesn’t demand much from them (and working together is more fun), so this appears to be a great format for getting things done.
If you’d like to get involved in Clutter development, head over to the new dev.hc Discord server and look for the ‘clutter’ channel!
New Discord server for hApp developers
I think the aforementioned Discord deserves a mention of its own: There already are a few Discord servers for developers, and they seem to be where the action is right now rather than the forum. Most of them have membership criteria, though. So if that feels intimidating to you, the dev.hc server is wide open to all developers!
It seems that the chat format serves a lot of developers well, especially for building community around the work they’re doing. Recently the Clutter working group is using it to coordinate meetings, share information, and generally get to know each other better.
Koru: a mutual credit module for your hApp
Recently I learned about a project called Koru, which claims that it’s building software that lets any group spin up their own customised mutual credit currency. If you’ve been following this blog for a while, you’ll know I am pretty excited about mutual credit. I don’t think it’s the perfect design, a currency to end all other currencies, but I think it comes pretty darn close. So I was doubly excited when I discovered this project — not only did it feel like my dreams were coming true, but it turns out they’re already prototyping on Holochain!
I get the impression that it’s still early days for this project, but their lead dev is very active in our ecosystem and it seems like it has a lot of promise — in terms of development activity, plus usefulness for your own hApp and of course value to real humans. Wishing Koru lots of success!
When I discover a project like this, it makes me wonder, what other projects are building on Holochain that I know nothing about? If you know of any, please share them with me on Twitter!
Reusable Modules mini-site
Recently I came across this mini-site called Reusable Modules, created by the Holochain Open Dev group. It captures a design philosophy that appears to be very popular among Holochain devs (and really, should be popular among all devs): composability. It describes how the community feels about how to architect hApps: as collections of small, single-purpose, customisable, open-source components. It addresses both the front-end and back-end aspects this design philosophy, and is really worth reading.
Holochain 0.0.124: no-op
This release brings some compilation fixes and some documentation updates (note: we’ll be giving renewed focus to documentation in the coming months). The HDK has seen a version bump to 0.0.120, but there are no breaking changes. Read the full changelog.
Holochain 0.0.125: DHT arc resizing stability
This release brings some of the gossip improvements the core dev team has been working on, and finally turns on sharding by default! It’s not the end of our improvements, though; a future release will have a lot of big improvements to both the stability of arc (AKA shard) resizing and the efficiency of syncing between nodes. Read the full changelog.
What’s on the horizon for Holochain?
That’s a good question. As we approach beta, what sorts of things should application developers expect? When will we see new features, how much churn will we have to refactor through? We intend to produce a more solid Holochain roadmap soon, but here are the most important things to know for now. (Keep in mind that most of these things are still subject to change; I just want to give you a heads-up so you can plan for contingencies.)
- Stabilisation of the HDK, so you can develop against a more slow-moving target. We’re currently taking a fresh look at how validation works, and there ought to be some changes soon which will make it easier for you to keep your hApp more stable. In short, we may create two separate HDKs, one with validation callbacks and one without. The idea is that your DNA will be made up of ‘integrity’ zomes which contain data type definitions (including validation callbacks) and rarely change, and ‘coordination’ zomes which contain your app’s controller logic, don’t affect the DNA hash, and can hence be changed more often.
- Stabilisation of the gossip protocol — including a new DHT arc resizing algorithm and syncing algorithm. The reduced network and CPU load should make the user experience much nicer, and it should make it less necessary for you to keep recompiling your hApp for the newest and greatest Holochain.
- New HDK and DHT features, including ‘baseless’ links, saving you from requiring every user to test for the existence of a base anchor at app startup; links that can have headers as their base or target; ephemeral (off-chain) storage; a pub/sub model for signals to replace the current everybody-gets-everything model; ‘true’ deletes via two new DHT operations: ‘purge’ and ‘withdraw’; and validated rate limiting to prevent DHT spamming and other time-based abuses.
- More core hApps that are useful to all devs, including DeepKey for distributed key management, Verifiable Credentials for people to make signed claims about others, Compository for managing shared source code and distributing binaries, Personas and Profiles for managing and syncing personal information across all your devices, and Source Chain Backup for easy recovery of lost agency.
- Security and resilience features, including warrants and defensive action for warrantable offenses, plus a top-to-bottom security review of the codebase.
FOSDEM 2022 recap
I didn’t attend FOSDEM myself this year, but it looks like a lot of great projects presented their work. A few colleagues mentioned that it was good to hear about what others are doing, partly because it’s always valuable to learn new things, but also because there seems to be an agent-centric trend among P2P projects that validates Holochain’s approach.
Here are three of the four Holochain-related presentations. I have to say, I’m personally thrilled about all of them; I think they will be important projects in the growing Holochain ecosystem.
Check out all the other talks in the Web3 Infrastructure room.
Well, I think that’s plenty for this Holo Monday! See you next time!
Cover photo by Sticker Mule on Unsplash