A personal server is a virtual computer which stores your data, runs your apps, and manages your connected devices.
Urbit is a new clean-slate system software stack. A nonpreemptive OS (Arvo), written in a strict, typed functional language (Hoon) which compiles itself to a combinator VM (Nock), drives an encrypted packet network (Ames) and defines a global version-control system (Clay). Including basic apps, the whole stack is about 30,000 lines of Hoon.
Urbit is an “operating function”: a general-purpose OS whose entire lifecycle is defined as a pure, frozen, small function on its input stream. The function is an interpreter; it compiles an initial language, which boots an initial kernel. Everything but the lifecycle function can upgrade itself from source code in the input stream.
Security problems are an inevitable consequence of unrigorous and/or complex computing semantics. Rigor and simplicity are hard properties to enforce retrospectively on the classical Unix/IETF/W3C stack. A new stack, designed as a unit, learning from all the mistakes of 20th-century software and repeating none of them, should be simpler and more rigorous than what we use now. Otherwise, why bother?
One example of painful heterogeneity inherited from the current stack: the relationship between a database schema, a MIME type, a network protocol, and a data structure. The same semantics may be reimplemented incompatibly at four layers of this stack. The programmer is constantly hand-translating values. Helpful tools abound (“ORM is the Vietnam of computer science” ), but no tool can fix architectural impedance mismat
Urbit is a “solid-state interpreter”: an interpreter with no transient state. The interpreter is an ACID database; an event is a transaction in a log-checkpoint system. The Urbit interpreter runs on a normal Unix server; it interacts with the Unix user, on the console or via FUSE; with other Urbit nodes, in its own protocol over UDP; with the Internet, as an HTTP client or server.
Urbit is designed to work as a “personal server.”
A frontier to homestead
In Urbit, network identities are cryptographic property, like Bitcoin. If Bitcoin is money and Ethereum is law, Urbit is land.
Urbit is designed to become a digital republic: a network of individually owned nodes with no central point of control. Like a well-planned city, the friendly network is decentralized but connected, safe but free.
A computer that works just for you
Your computer isn't yours unless you can run whatever software you want and switch without losing data. Imagine if you could replace the Facebook UI, or move your Evernotes to Google Docs.
A clean-slate platform
An ordinary person can't manage a Unix server on the Internet. The Unix-Internet platform was a brilliant system, but it's almost 50 years old. Urbit is a new clean-slate, full-stack server. It's implemented on top of the old platform, but it's a sealed sandbox like the browser. Urbit remains young and unstable. Alas, it's not yet ready for end users. But it's feature-complete and ready for public development.
|Round||Token Price||Bonus||Min / Max Purchase||Soft Cap||Hard Cap|
Public sale —
28 Jun 00:00 UTC