+23
-25
docs/DOCS.md
+23
-25
docs/DOCS.md
···
2
2
title: Tangled docs
3
3
author: The Tangled Contributors
4
4
date: 21 Sun, Dec 2025
5
-
---
6
-
7
-
# Introduction
8
-
9
-
Tangled is a decentralized code hosting and collaboration
10
-
platform. Every component of Tangled is open-source and
11
-
self-hostable. [tangled.org](https://tangled.org) also
12
-
provides hosting and CI services that are free to use.
5
+
abstract: |
6
+
Tangled is a decentralized code hosting and collaboration
7
+
platform. Every component of Tangled is open-source and
8
+
self-hostable. [tangled.org](https://tangled.org) also
9
+
provides hosting and CI services that are free to use.
13
10
14
-
There are several models for decentralized code
15
-
collaboration platforms, ranging from ActivityPub’s
16
-
(Forgejo) federated model, to Radicle’s entirely P2P model.
17
-
Our approach attempts to be the best of both worlds by
18
-
adopting the AT Protocol—a protocol for building decentralized
19
-
social applications with a central identity
11
+
There are several models for decentralized code
12
+
collaboration platforms, ranging from ActivityPub’s
13
+
(Forgejo) federated model, to Radicle’s entirely P2P model.
14
+
Our approach attempts to be the best of both worlds by
15
+
adopting the AT Protocol—a protocol for building decentralized
16
+
social applications with a central identity
20
17
21
-
Our approach to this is the idea of “knots”. Knots are
22
-
lightweight, headless servers that enable users to host Git
23
-
repositories with ease. Knots are designed for either single
24
-
or multi-tenant use which is perfect for self-hosting on a
25
-
Raspberry Pi at home, or larger “community” servers. By
26
-
default, Tangled provides managed knots where you can host
27
-
your repositories for free.
18
+
Our approach to this is the idea of “knots”. Knots are
19
+
lightweight, headless servers that enable users to host Git
20
+
repositories with ease. Knots are designed for either single
21
+
or multi-tenant use which is perfect for self-hosting on a
22
+
Raspberry Pi at home, or larger “community” servers. By
23
+
default, Tangled provides managed knots where you can host
24
+
your repositories for free.
28
25
29
-
The appview at tangled.org acts as a consolidated "view"
30
-
into the whole network, allowing users to access, clone and
31
-
contribute to repositories hosted across different knots
32
-
seamlessly.
26
+
The appview at tangled.org acts as a consolidated "view"
27
+
into the whole network, allowing users to access, clone and
28
+
contribute to repositories hosted across different knots
29
+
seamlessly.
30
+
---
33
31
34
32
# Quick start guide
35
33
+22
-21
docs/template.html
+22
-21
docs/template.html
···
90
90
p-4 z-50 overflow-y-auto">
91
91
<div class="flex-1">
92
92
$if(toc-title)$
93
-
<h2 id="$idprefix$toc-title" class="text-lg font-semibold mb-4 text-gray-900">$toc-title$</h2>
93
+
<h2 id="$idprefix$toc-title" class="text-lg font-semibold mb-4 text-gray-900">$toc-title$</h2>
94
94
$endif$
95
95
${ table-of-contents:toc.html() }
96
96
</div>
···
101
101
<div class="$if(toc)$md:ml-80$endif$ flex-1 flex flex-col">
102
102
<main class="max-w-4xl w-full mx-auto p-6 flex-1">
103
103
$if(top)$
104
-
$-- only print title block if this is NOT the top page
104
+
$-- only print title block if this is NOT the top page
105
105
$else$
106
106
$if(title)$
107
-
<header id="title-block-header" class="mb-8 pb-8 border-b border-gray-200 dark:border-gray-700">
108
-
<h1 class="text-4xl font-bold mb-2 text-black dark:text-white">$title$</h1>
109
-
$if(subtitle)$
110
-
<p class="text-xl text-gray-500 dark:text-gray-400 mb-2">$subtitle$</p>
111
-
$endif$
112
-
$for(author)$
113
-
<p class="text-sm text-gray-500 dark:text-gray-400">$author$</p>
114
-
$endfor$
115
-
$if(date)$
116
-
<p class="text-sm text-gray-500 dark:text-gray-400">Updated on $date$</p>
117
-
$endif$
118
-
$if(abstract)$
119
-
<div class="mt-6 p-4 bg-gray-50 rounded-lg">
120
-
<div class="text-sm font-semibold text-gray-700 uppercase mb-2">$abstract-title$</div>
121
-
<div class="text-gray-700">$abstract$</div>
122
-
</div>
123
-
$endif$
124
-
$endif$
125
-
</header>
107
+
<header id="title-block-header" class="mb-8 pb-8 border-b border-gray-200 dark:border-gray-700">
108
+
<h1 class="text-4xl font-bold mb-2 text-black dark:text-white">$title$</h1>
109
+
$if(subtitle)$
110
+
<p class="text-xl text-gray-500 dark:text-gray-400 mb-2">$subtitle$</p>
111
+
$endif$
112
+
$for(author)$
113
+
<p class="text-sm text-gray-500 dark:text-gray-400">$author$</p>
114
+
$endfor$
115
+
$if(date)$
116
+
<p class="text-sm text-gray-500 dark:text-gray-400">Updated on $date$</p>
117
+
$endif$
118
+
$endif$
119
+
</header>
120
+
$endif$
121
+
122
+
$if(abstract)$
123
+
<article class="prose dark:prose-invert max-w-none">
124
+
$abstract$
125
+
</article>
126
126
$endif$
127
+
127
128
<article class="prose dark:prose-invert max-w-none">
128
129
$body$
129
130
</article>