The Athens project epitomizes several longstanding threads in Urbit's vision of a social Internet. Athens lays the groundwork for a transition from a set of centralized apps to a fully decentralized Urbit peer-to-peer network. Communities will be able to start in a captive state and roll over to become fully decentralized as they mature.
Athens therefore begins by defining a field of “captive” apps, or apps that are brokered through a centralized server. It implements the groundwork for the dotpoast vision by identifying security modalities and presenting a single access layout to the various modal apps. It includes a roadmap for transitioning all or part of the network to utilize not only Azimuth but also Arvo.
The initial release of Athens for the general public will include a number of integrated services. “Integration” means that links or references between apps are legible; for instance, an arcade game result can be trivially dropped into a feed, or an anonymized imageboard link can be dropped into the forum. These should be produced by a team of about four software developers, at least two of whom are dedicated front-end devs (the other two being full-stack devs).
- Forum: a Reddit/Hacker News-style voting forum
- Hermes: blogging/longform publishing, like Blogger and Tumblr
- Denarius: a wallet app (noncustodial until secure); all transactions route through this app
- Midas: crypto accounting/bookkeeping
- Sphinx: anonymous imageboard
- Pallas: notetaking, like Obsidian
- Discus: minigame arcade
- Argus: torrenting and media
- Styx: doomscrolling feed, like X/Twitter and Farcaster
These illustrate a variety of applied products that should work seamlessly together, but are afforded by such different providers today as to be practically incompatible. (Hookmark, for instance, is an attempt to bridge this abyss.)
What is missing? These would be moderately straight to pull in:
- Email client
- Project/task management
- APIs to various Web 2.0 services to unify the experience
- Voice and video chat integrated into Forum
Athens should feel unified across a wide variety of interfaces. In practice, this means defining a design language like Microsoft's Metro or Google's Material Design.
In a nod to synthwave and cyberpunk influences, neon and classical influences should be retained. To produce a usable interface, however, the elements should be flatter and linear, with strong color contrasts and a preference for dark mode. (That is, rather than sculpture draw from red-figure kraters and Wedgewood jasperware.)
Altho color should be employed in flat patches (e.g. under a Greek geometric border), avoid Corporate Memphis design language. With respect to the current Other Means design language utilized on urbit.org
, the Urbit Sans font and linear elements can be retained for continuity. The color palette seems broadly compatible.
- The Daedalus Question: How can Azimuth act as One Wallet To Rule Them All? How can broadly useful keys (PGP, ETH, &c.) be derived from an Urbit HD wallet?
- The Charon Question: What does it look like to bridge a world of free peers and a world of captive users?
- The Elysium Question: What does it mean to decentralize a centralized app?
Athens thus requires an embeddable representation of content. Let's call this a pseudo-namespace, in that it should be broadly compatible with the successor bound namespace using Arvo, but like current Gall is a hack implementation. This ends up looking like a poor man's Shrubbery implemented with persistent resource links (at least simulated scry-at-latest, call it
%sein
) rendered as subsidiary frames (simplyiframe
s?).This means that the central app system needs to register each “instance” with a persistent resource locator. There needs to be a permissions system affiliated with access, altho not embedded in the PRL. These need to be broadcast and available on-demand (fast cache) for rendering from other servers.
Xanadu Did Nothing Wrong.