The Upspin Overview document provides a high-level introduction to Upspin. It is a good place to start to learn about the motivation for the project and overall design. It also has introductions to many of the other topics explored in more detail in the other documents.
The FAQ answers common questions about Upspin.
The Signing up a new user document describes the process for generating keys and registering a user with the Upspin key server.
The Upspin Access Control document describes Upspin’s access control mechanisms. TODO: Break into user-level pieces and implementation details; also linked in Architecture below.
The Upspin Configuration document describes Upspin’s configuration file format and settings.
The upspin command is a command-line tool for creating and administering Upspin files, users, and servers.
upspin
The upspin-ui tool presents a web interface to the Upspin name space, and also provides a facility to sign up an Upspin user and deploy an upspinserver to Google Cloud Platform.
upspin-ui
The cacheserver is a client-side directory and storage cache for Upspin.
cacheserver
The upspinfs command is a FUSE interface for Upspin.
upspinfs
The upspin-audit command provides subcommands for auditing storage consumption.
upspin-audit
The Upspin architecture page has a number of diagrams showing, bottom-up, how the pieces all fit together. TODO: add things like keys, sharing etc. as diagrams there.
The Upspin Access Control document describes Upspin’s access control mechanisms. TODO: Break into user-level pieces and implementation details. TODO: Server-level access control: Writers file etc.
The Upspin Security document describes Upspin’s security model.
The Setting up upspinserver document explains how to set up your own Upspin installation on a Linux server.
upspinserver
TODO: Show how to set up with a reverse proxy.
The upspin package specifies the core interfaces that define the Upspin protocol.
The rpc package includes a semiformal description of the wire protocol used to communicate between clients and servers.
rpc
The client package provides a simple client interface for communicating with Upspin servers.
client
TODO: A worked example (implementer’s guide).