Something went wrong. Try again.
Monorepo for Tangled forked from tangled.org/core
Something went wrong. Try again.
README.md
Knot 2 #
In Tangled, a "knot" is simply a git server that does its auth layer over the AT Protocol. Essentially:
- Atproto users declare their public SSH key for themselves, in their PDS.
- A knot admin (defined by atproto DID in the knot config) makes a request to the knot to allow membership to a given atproto user.
- Said user can now create/update/delete a git repo on the knot, and do normal git things to that git repo over SSH.
- Said user makes a request to the knot to allow more atproto users as collaborators on their specific git repo.
- It has no database, or should I say, git is the only database, along with a secret-key-file.
- It aims to be small, fast, and modern - for example: http3/quic support, SHA256 by default, and no need for unix
gituser, to name a couple of features.
Running a knot #
The operator documentation: the docs:
- Run a knot - a knot on NixOS or in a container.
- Self-hosting a knot - more detail: ports, systemd, TLS, members, LFS, backups.
- Knot configuration - list of keys, defaults, and
KNOT_*env vars. - Knot - what a knot does and how it talks to the rest of Tangled.
- If running the old golang knot and want this instead: Migrate with
knot-migratetool - afterwards the knot will serve the same hostname with the same repos, owners, members and collaborators.
Happy knotting!