141 lines
5.5 KiB
Markdown
141 lines
5.5 KiB
Markdown
---
|
|
title: Socialhome
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, activitypub-fediverse, reseau-social, django, python, multi-protocole, fediverse]
|
|
confidence: medium
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://socialhome.network/, https://github.com/jaywink/socialhome]
|
|
---
|
|
|
|
# 🌐 Socialhome
|
|
|
|
> **Le réseau social décentralisé multi-protocole** : profilez-vous, partagez des liens, des images, des posts longs ou courts, et fédérez avec ActivityPub, Diaspora et Matrix — un hub de présence numérique auto-hébergé.
|
|
|
|
| Métadonnée | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [https://socialhome.network](https://socialhome.network) |
|
|
| **GitHub** | [https://github.com/jaywink/socialhome](https://github.com/jaywink/socialhome) |
|
|
| **License** | AGPL-3.0 |
|
|
| **Langage principal** | Python (Django), Vue.js |
|
|
| **Étoiles GitHub** | 1 ⭐ |
|
|
| **Dernière MAJ** | 2026-03 |
|
|
| **Catégorie** | [[cat-activitypub-fediverse]] |
|
|
|
|
## Description
|
|
|
|
Socialhome est un projet démarré en 2016 par **Jason Robinson (jaywink)** : un **réseau social personnel** centré sur l'utilisateur, où chaque compte dispose d'une « page de profil » riche (avec biographie, tags, projets, liens), et où l'on publie une grande variété de contenus (statuts courts, articles longs formatés Markdown, partages de liens, images).
|
|
|
|
L'originalité de Socialhome est son **support multi-protocole** :
|
|
- **ActivityPub** (fédération avec Mastodon, Pleroma, PeerTube…)
|
|
- **Diaspora** (le réseau « non-Mastodon » du Fediverse, basé sur le protocole Diaspora)
|
|
- **Matrix** (intégration optionnelle pour les messages directs)
|
|
- API REST interne pour clients tiers
|
|
|
|
L'idée est de proposer un **hub central** : un utilisateur sur Socialhome a un seul compte qui lui donne accès à plusieurs réseaux, avec une UX unifiée. C'est un positionnement moins « microblogage pur » que Mastodon, plus **portfolio / profile-driven**.
|
|
|
|
**Points forts** : multi-protocole, profile pages riches, support Markdown long-form, idéal pour les créateurs de contenu personnels, Django (mature, bien documenté).
|
|
|
|
**Points faibles** : projet en **maintenance lente** (peu d'activité depuis 2023), petite communauté, pas de release fréquente, UI moins moderne que PeerTube ou Pixelfed, support Diaspora fragile.
|
|
|
|
## Installation
|
|
|
|
### Via Docker (recommandé)
|
|
|
|
L'image officielle est `ghcr.io/jaywink/socialhome:latest`.
|
|
|
|
```yaml
|
|
# docker-compose.yml
|
|
services:
|
|
app:
|
|
image: ghcr.io/jaywink/socialhome:latest
|
|
container_name: socialhome
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8000:8000"
|
|
environment:
|
|
DJANGO_SECRET_KEY: "change-me-random-50-chars"
|
|
DJANGO_SITE_URL: "https://socialhome.example.com"
|
|
DJANGO_ALLOWED_HOSTS: "socialhome.example.com"
|
|
DATABASE_URL: "postgresql://socialhome:***@db/socialhome"
|
|
REDIS_URL: "redis://redis:6379/0"
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
|
|
db:
|
|
image: postgres:16-alpine
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_USER: socialhome
|
|
POSTGRES_PASSWORD: change-me
|
|
POSTGRES_DB: socialhome
|
|
volumes:
|
|
- db_data:/var/lib/postgresql/data
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
db_data:
|
|
```
|
|
|
|
### Installation manuelle
|
|
|
|
1. Installer Python 3.10+, PostgreSQL, Redis
|
|
2. Cloner : `git clone https://github.com/jaywink/socialhome.git && cd socialhome`
|
|
3. Créer un venv : `python -m venv venv && source venv/bin/activate`
|
|
4. Installer : `pip install -e .`
|
|
5. Configurer `.env` (DATABASE_URL, etc.)
|
|
6. Migrer : `python manage.py migrate`
|
|
7. Créer un super-utilisateur : `python manage.py createsuperuser`
|
|
|
|
## Configuration
|
|
|
|
1. Configurer `DJANGO_SITE_URL` (HTTPS obligatoire)
|
|
2. Configurer le **reverse-proxy** (Nginx + Let's Encrypt)
|
|
3. Activer la **fédération ActivityPub** dans `settings.py` (`SOCIALHOME_FEDERATION = True`)
|
|
4. Optionnel : activer le pont **Diaspora** (`SOCIALHOME_DIASPORA_BRIDGE = True`)
|
|
5. Configurer le **stockage des médias** (local ou S3)
|
|
6. Créer le premier compte et éditer la page de profil
|
|
|
|
## Alternatives
|
|
|
|
### Open source
|
|
- [[app-mastodon]] — microblogage pur, plus mature
|
|
- [[app-misskey]] — riche, plus actif
|
|
- [[app-mbin]] — agrégateur de liens fediverse
|
|
- [[app-bookwyrm]] — spécialisé livres
|
|
- [[app-pixelfed]] — spécialisé photo
|
|
- **Hubzilla** — super-hub multi-protocole, plus gros et plus complexe
|
|
- **Friendica** — autre multi-protocole, plus d'utilisateurs
|
|
- **Diaspora*** — sans ActivityPub (protocole Diaspora natif)
|
|
|
|
### Propriétaires
|
|
- Facebook — réseau centralisé
|
|
- LinkedIn — réseau pro
|
|
- Diaspora* (cloud) — version hébergée du Diaspora open source
|
|
|
|
## Sécurité
|
|
|
|
- **HTTPS obligatoire** (fédération)
|
|
- **Django** : surface d'attaque connue et bien protégée si on suit les bonnes pratiques
|
|
- **CSRF** : protection Django native activée
|
|
- **Bridge Diaspora** : vérifier la configuration des clés, ce module est peu audité
|
|
- **Sauvegardes** : BDD PostgreSQL + dossiers médias (uploads)
|
|
- **Mises à jour** : peu fréquentes, **forker** ou **basculer** vers Friendica si stagnation
|
|
|
|
## Ressources
|
|
- Site officiel : [socialhome.network](https://socialhome.network)
|
|
- Documentation : [github.com/jaywink/socialhome#readme](https://github.com/jaywink/socialhome#readme)
|
|
- Communauté : Matrix `#socialhome:matrix.org`
|
|
- Diaspora : [diasporafoundation.org](https://diasporafoundation.org) pour comparer
|
|
|
|
## Pages Liées
|
|
- [[cat-activitypub-fediverse]]
|
|
- [[recettes-docker-compose]]
|
|
- [[app-mastodon]]
|
|
- [[app-mbin]]
|