Skip to content
/ vere Public

An implementation of the Urbit runtime

License

Notifications You must be signed in to change notification settings

urbit/vere

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6ad7a1d · Oct 20, 2023
Sep 29, 2023
Jul 18, 2023
Apr 25, 2023
Apr 10, 2023
Oct 20, 2023
Jun 27, 2023
Jun 21, 2023
Jun 27, 2023
Mar 14, 2023
Jul 3, 2023
Jan 28, 2020
Mar 20, 2023
Jan 11, 2023
May 10, 2023
Sep 18, 2023
Aug 19, 2023
Aug 31, 2023
Mar 1, 2023

Repository files navigation

Urbit Runtime

Urbit is a personal server stack built from scratch. This repository contains Urbit's runtime environment, the lowest layer of the Urbit stack, which includes the Nock virtual machine, I/O drivers, event log, and snapshotting system.

Getting Started

For basic Urbit usage instructions, head over to urbit.org. For a high-level overview of the salient aspects of Urbit's architecture, visit developers.urbit.org. You might also be interested in joining the urbit-dev mailing list.

Packages

Urbit's runtime is broken down into a few separate layers, each of which is defined in its own package:

  • pkg/c3: A set of basic utilities for writing Urbit's style of C.
  • pkg/ent: A cross-platform wrapper for getentropy(2).
  • pkg/urcrypt: A standardized interface for calling various cryptographic functions used in the Urbit runtime.
  • pkg/ur: An implementation of jam and cue, Urbit's bitwise noun serialization and deserialization algorithms, respectively.
  • pkg/noun: The Nock virtual machine and snapshotting system.
  • pkg/vere: The I/O drivers, event log, and main event loop.

Build

See INSTALL.md.

Contributing

Contributions of any form are more than welcome. Please take a look at our contributing guidelines for details on our git practices, coding styles, how we manage issues, and so on.