# The most hackable forge

> Guides and reference for Tangled, your code forge for the next decade.

Tangled is a social code-collaboration platform built on an open protocol. It is designed to be self-hostable, hackable and extensible.

- [Quick start](/docs/quick-start/)
- [What is Tangled?](/docs/introduction/)

import ButtonCard from "$lib/components/ui/ButtonCard.svelte";
import Rocket from "~icons/lucide/rocket";
import GitCompareArrows from "~icons/lucide/git-compare-arrows";
import Github from "~icons/lucide/github";
import HardDrive from "~icons/lucide/hard-drive";
import Braces from "~icons/lucide/braces";
import FileJson from "~icons/lucide/file-json";
import MapIcon from "~icons/lucide/map";
import Plug from "~icons/lucide/plug";
import Hammer from "~icons/lucide/hammer";
import BookA from "~icons/lucide/book-a";

<div class="feature-grid not-content">
  <ButtonCard
    class="h-full w-full"
    href="/docs/quick-start/"
    icon={Rocket}
    title="Quick start"
    description="Sign in, add an SSH key, and push your first repository."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/comparison-with-github/"
    icon={GitCompareArrows}
    title="Comparison with GitHub"
    description="How GitHub concepts map onto Tangled, and where the models differ."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/migrating-from-github/"
    icon={Github}
    title="Migrating from GitHub"
    description="Copy a repository from GitHub with the importer, then configure the Git remotes."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/self-hosting/"
    icon={HardDrive}
    title="Self-hosting"
    description="Run your own knot, your own spindle, or all of Tangled."
  />
</div>

## Hacking

<div class="feature-grid not-content">
  <ButtonCard
    class="h-full w-full"
    href="/docs/api/bobbin/"
    icon={Braces}
    title="XRPC methods"
    description="The API surface of bobbin, knots and spindles, the interfaces you can build against."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/reference/records/"
    icon={FileJson}
    title="Records"
    description="Every org.tangled record, where it is stored, and what it means."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/reference/identifiers/"
    icon={MapIcon}
    title="Identifiers and Git URLs"
    description="DIDs, handles, AT URIs, record keys, clone URLs and push options."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/why-atproto/"
    icon={Plug}
    title="Why AT Protocol"
    description="What building on an open protocol gives you over a centralized forge."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/contributing/hacking/"
    icon={Hammer}
    title="Local development"
    description="Run the whole stack locally and work on any part of it."
  />
  <ButtonCard
    class="h-full w-full"
    href="/docs/contributing/guide/"
    icon={BookA}
    title="Contributing"
    description="Commit guidelines, code formatting, proposals, and DCO."
  />
</div>