Cabal 2023 In Review
Published on December 21, 2023 by Alexander Cobleigh
It’s the end of 2023 and we’ve gotten a lot done as a project!
We…
- Onboarded glyph into the project as a lovely new collaborator
- Worked a ton on revising and drafting the cable specification, addressing problems we’ve discovered over the years working on cabal and laying out the mechanisms of how the project will go forward into the future: cable wire protocol specification
- Implemented the spec in nodejs and in rust (the latter funded by everyone in the OC!), check out the following repositories:
- cable.js (message and post parsing & serialization)
- cable-core.js (indexing and core logic)
- cable-client.js (client logic)
- cable-cli.js (a fully featured alpha cli implementation)
- cable.rs (cable rust lib)
- cabin (cable alpha cli client in rust)
- Drafted a handshake specification and released it: handshake.md
- Drafted a moderation specification (not yet released)
- Addressed a critical issue (which arrived unexpectedly) with cabal’s current networking, including putting measures into place to prevent it arising again in the future, and issued updates for cabal-cli and cabal-desktop
2023 also saw community developed implementations of the new spec!
- In erlang https://git.sr.ht/~cryptix/caberl/ (more or less a complete node?!)
- and in elixir https://github.com/mycognosist/cable.ex (parses all post and message types!)
We also had a few opportunities to present Cabal & Cable in different contexts throughout the year:
- Early 2023 presentation on Cable at P2P Basel: https://archive.org/details/p2p-basel-2023-day2/cable-cblgh.mp4
- Interview with Dat Ecosystem on cabal and (some cable details!) https://www.youtube.com/watch?v=0NeCCONtsoM
- Demo Session with Dat Ecosystem showing how cabal’s command-line client works: https://www.youtube.com/watch?v=0NeCCONtsoM
- Friend of the project, Cryptix, gave another look at Cable: https://www.youtube.com/watch?v=y-11UP0ecZc
For 2024 we’re looking forward to a few different things.
Most salient is wrapping up the current nlnet x ngi assure grant, by executing on the following:
- Sourcing feedback from friends and peers on our smol family of protocol specifications
- implementing the handshake in node and rust,
- writing docs,
- and launching the new moderation work
Placing the gaze slightly more towards the horizon we’re excited to:
- Give the project website a good scrub and some new layers of paint
- Explore discovery / network / connectivity solutions for cable’s multi-client and multi-language future
- Hanging out more and having good times
If you’re excited about cabal entering a new chapter—for the project being implementable in any programming language, for finally having delete as a native capability, and possibly existing in the web and on mobile—consider spreading the good word to help us increase the amount of work we can accomplish in a year.
Thanks from us of the cabal club!