Tootik è un social network basato su messaggi di testo federato tramite ActivityPub e la sua interfaccia utente è basata su Gemini!
A differenza di altri social network, Tootik non ha un'interfaccia basata su browser o un'app: la sua interfaccia minimalista, basata su testo, viene invece servita tramite Gemini
Gemini ActivityPub (HTTPS)
→ ⇄
┏━━━━━━━━━━━━━━━━━━━━━━━┓ ┏━━━━━━━━━━━━━━━━━┓ ┌─────────────────────────┐
┃ Bob's Gemini client ┣━━━┫ tootik instance ┠─┬─┤ Another tootik instance │
┣━━━━━━━━━━━━━━━━━━━━━━━┫ ┣━━━━━━━━━━━━━━━━━┫ │ └─────────────────────────┘
┃2024-01-01 alice ┃ ┃$ ./tootik ... ┃ │ ┌────────────────┐
┃> Hi @bob and @carol! ┃ ┗━┳━━━━━━━━━━━━━━━┛ ├─┤ Something else │
┃... ┃ ┃ │ └────────────────┘
┗━━━━━━━━━━━━━━━━━━━━━━━┛ ┃ │ ┌───────────────────┐
┏━━━━━━━━━━━━━━━┻━━━━━━━┓ └─┤ Mastodon instance ├─┐
┃ Alice's Gemini client ┃ └───────────────────┘ │
┣━━━━━━━━━━━━━━━━━━━━━━━┫ ┌──────────────────┴────┐
┃2024-01-01 bob ┃ │ Carol's web browser │
┃> Hi @alice! ┃ ├───────────────────────┤
┃... ┃ │╔═╗ alice │
┗━━━━━━━━━━━━━━━━━━━━━━━┛ │╚═╝ 17h ago│
│Hi @bob and @carol! │
│ │
│ ╔═╗ bob │
│ ╚═╝ 16h ago│
│ Hi @alice! │
├───────────────────────┤
│┌────────────┐┌───────┐│
││ Hola ││Publish││
│└────────────┘└───────┘│
└───────────────────────┘Questo rende Tootik leggero, privato e accessibile:
- La sua interfaccia utente è basata su Gemini: c'è un'ampia varietà di client tra cui scegliere e alcuni funzionano benissimo anche su dispositivi meno recenti.
- I contenuti multimediali vengono ridotti a testo semplice e link: si tratta di un'interfaccia utente veloce e a basso consumo di banda, adatta ai lettori di schermo.
- Anonimato: l'autenticazione avviene tramite un certificato client TLS e non è necessario condividere il proprio indirizzo email o il proprio nome reale.
- Nessun contenuto sponsorizzato, tracciamento o analisi: social network con l'atmosfera lenta e non commerciale del piccolo internet.
- Si tratta di un singolo eseguibile statico, il che semplifica la configurazione della propria istanza e il suo successivo aggiornamento.
- Tutti i dati dell'istanza sono memorizzati in un singolo file, un database SQLite di cui è facile eseguire il backup e il ripristino.
- È leggero: un VPS o un SBC da meno di 5$ al mese è più che sufficiente per una piccola istanza.
- Implementa il sottoinsieme di ActivityPub necessario per le sue funzionalità, ma non di più, per rimanere compatto, affidabile e di facile manutenzione.
- È stato scritto da zero (non derivato da un altro progetto) in due linguaggi (Go e SQL), il che rende il codice sorgente adatto a scopi didattici e facile da modificare.
- È distribuito con licenza permissiva.