projects › main
CardiganBay
A wiki-notebook engine built with Clojure.
Cardigan Bay is clearly aimed at the #toolsforthought #digitalgarden space. But it's not entirely like other tools in this area.
Why is that? A quick overview of some of the design goals for Cardigan Bay, which explain why it is like it is
1) Cardigan Bay comes out of the Wiki tradition. And its primary use-case is to manage and bring order to ThoughtStorms : an old wiki of 7000+ existing markdown pages which has a lot of outdated stuff, and is in sad need of cleaning up.
Some decisions are about backward compatibility with this existing data. Others, eg. the "one large text box" philosophy stems from the need to restructure existing text, breaking 1 block / card into 2 or bringing 2 back into 1, which is harder in a more "structured" editor such as the Smallest Federated Wiki. In fact part of the design is a reaction against the frustrations I had with the SFW.
2) Other inspirations were Jupyter notebook and Smalltalk.
CB is intended to be a "smart notebook" which can embed live computation and explore simulations etc. It's still embryonic and a long way from where I want to get. But you can embed ClojureScript (thanks to to the Small Clojure Interpreter)
3) Cardigan Bay is intended to be usable on mobile screens.
While the UI is still clunky / unfinished. And certainly not a slick native or mobile first UX. It is technically POSSIBLE to use CB fully on a tablet or phone. I do it all the time. This again explains some of the UI decisions which have focused on keeping it simple. And both the "usable on mobile" commitment and Jupyter analogy have pushed me towards thinking of the UI as a 1D sequence of cards or cells rather than wanting to explore 2D layouts.
CB is militantly 1-dimensional for this reason.
4) Finally, Cardigan Bay should be usable offline, on your own machine. And store all your data locally. So that you have full ownership, control, privacy etc. To publish a wiki you export a flat site.
Now in future there might be more cloud / hosted options (maybe if remoteStorage takes off)
But these will always be optional and secondary to CB being usable offline & locally.
So that's why Cardigan Bay is the way it is. Obviously some of the flaws are just good old fashioned laziness and stupidity too.
But these 4 big design decisions / goals : being wiki, running code, being mobile friendly and under your control, I'm pretty committed to. And they'll shape Cardigan Bay for the foreseeable future.
If this excites you (Wiki + Clojure) then check it out on Github or Gitlab
Everything is fully open source and will remain so forever.
