> ## Documentation Index
> Fetch the complete documentation index at: https://help.xitter.space/llms.txt
> Use this file to discover all available pages before exploring further.

# Join the instance list

> Set up a federating instance and add it to instances.json.

## Make an instance

**1. Get a server and domain**

You need a server and a domain name that serves HTTPS.

**2. Install Xitter**

Follow the [Quickstart](/quickstart) or [Docker Compose](/self-hosting/docker), with `PUBLIC_ORIGIN` set to your address, for example `https://xit.example.org`. Federation is on by default.

**3. Back up data/**

The `data/` folder holds your instance's federation key. Other instances stop trusting you if you lose it.

## Requirements

* A recent Xitter version with federation on, over HTTPS, with nothing behind a paywall.
* Active moderation, and a way for the project's moderators to reach you. Join the [Xitter Discord](https://discord.gg/KU2APSwXXr) and put your Discord username in your pull request.
* Public rules, written in the admin panel under Settings and shown at `/rules`, that ban:
  * sexual content of any kind, including pornography and non-consensual intimate media (AI-generated or deepfake included);
  * gore, including graphic images or videos of death, mutilation, serious injury or cruelty to people or animals;
  * harassment, doxxing, threats, incitement to violence, glorifying violent attacks and promoting terrorist or violent extremist groups;
  * attacking or demeaning people for their race, ethnicity, nationality, religion, sex, gender identity, sexual orientation, disability or age, including slurs, misgendering and deadnaming;
  * encouraging or instructing suicide, self-harm or eating disorders (supportive and recovery discussion is allowed);
  * spam, scams and manipulation;
  * misleading impersonation of a person, brand or organization;
  * anything illegal under Portuguese law or applicable EU law;
  * ban evasion.

> [!WARNING]
>
> An instance that doesn't enforce these rules can be suspended or blocked on the list for a time or for good. The list's maintainers can refuse any pull request and remove any instance.

## Open the pull request

**1. Copy your entry**

Sign in as an admin and open the admin panel, then **Federation**. It shows the entry for your instance.

**2. Add it to instances.json**

Fork [Xittered/xitter](https://github.com/Xittered/xitter) and add the entry to `instances.json`. Keep the list sorted by `id`, and raise `sequence` at the top by one.

**3. Update INSTANCES.md**

```bash theme={null}
bun scripts/check-instances.ts --write-md
```

**4. Open the pull request**

Include your Discord username. A check confirms your instance is online, serves the key you listed and has rules at `/rules`.

Once it is merged, every instance picks up the new list within 5 minutes and starts syncing with yours.

## Leaving

Set `FEDERATION=off` to stop federating, and open a pull request that removes your entry from `instances.json`. Turning federation off also stops superadmins from signing in to your instance.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.