Files
2026-06-09 18:40:21 +02:00

119 lines
4.5 KiB
Markdown

---
title: Shared Moments
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, photos, sharing, ephemeral, self-hosted, web]
confidence: medium
contested: false
sources: [https://selfh.st/apps/?tag=Photos, https://github.com/shared-moments/shared-moments]
---
# 📸 Shared Moments
> **Partage d'albums éphémères** : créez un album pour un événement, partagez le lien, et tout disparaît automatiquement après la date d'expiration. Pour les souvenirs qui ne restent pas éternellement.
## 📋 Informations Générales
| Attribut | Valeur |
|----------|--------|
| **Nom** | Shared Moments |
| **Slug** | app-shared-moments |
| **Description** | Partage d'albums photos avec expiration automatique |
| **Site officiel** | [sharedmoments.app](https://sharedmoments.app) |
| **Repository** | [shared-moments/shared-moments](https://github.com/shared-moments/shared-moments) |
| **Stars** | 99 ⭐ |
| **Licence** | MIT |
| **Langage principal** | Python, FastAPI |
| **Catégorie** | Photos |
| **Tags** | [catalogue, photos, sharing, ephemeral, self-hosted, web] |
## 📝 Description
⚠️ **Fiche confiance basse** : Shared Moments est un petit projet (~100 étoiles), à utiliser en connaissance de cause, et possiblement à forker si vous avez un vrai besoin.
**Shared Moments** propose un workflow très simple : vous voulez **partager des photos d'un événement** (mariage, soirée, weekend entre amis) **sans qu'elles restent indéfiniment accessibles**. Créez un album, définissez une **date d'expiration**, partagez le lien, et tout s'autodétruit après.
Philosophie : à l'opposé d'un Google Photos qui **conserve tout indéfiniment**, Shared Moments assume que **certains souvenirs ont une durée de vie naturelle**. C'est aussi un **cadeau de respect de la vie privée** : les invités du mariage n'auront pas leurs photos partagées sur Internet pour l'éternité.
Fonctionnalités : **albums avec expiration** (1 jour à 1 an), **upload invité** (sans compte), **upload par mail** (mails acceptés sur l'album), **galerie en lecture seule** après expiration, **notifications par mail** (nouvelle photo uploadée), **téléchargement groupé** pour les invités, **pas d'inscription requise** pour consulter, **auto-destruction** des fichiers après expiration, **bandeau "ephemeral"** clair pour les visiteurs.
Cas d'usage : **mariage** (album partagé aux invités, expire après 1 an), **événement pro** (conférence, meetup), **vacances entre amis**, **soirée** (photos partagées 24h).
## 🚀 Installation
### Via Docker
```yaml
# docker-compose.yml
services:
shared-moments:
image: ghcr.io/shared-moments/shared-moments:latest
container_name: shared-moments
restart: unless-stopped
environment:
- DATABASE_URL=postgresql://sm:***@db:5432/sm
- SECRET_KEY=*** volumes:
- /mnt/moments:/app/storage
ports:
- 8093:8000
depends_on:
- db
db:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_PASSWORD: ***
POSTGRES_USER: sm
POSTGRES_DB: sm
volumes:
- sm-db:/var/lib/postgresql/data
volumes:
sm-db:
```
### Installation manuelle
```bash
git clone https://github.com/shared-moments/shared-moments.git
cd shared-moments
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8000
```
## ⚙️ Configuration
- **Database Postgres** : pour métadonnées (albums, uploads, expirations).
- **Storage** : volume pour les photos (avec cron d'auto-destruction).
- **SMTP** : configurer pour notifications mail (optionnel).
- **Cron** : vérifier que le job d'expiration tourne (sinon rien ne disparaît).
## 🔗 Alternatives
- **[[app-circled-me]]** — Approche "cercles restreints" permanents
- **[[app-piwigo]]** — Galerie mature avec permissions granulaires
- **[[app-immich]]** — Albums partagés sans expiration auto
## 🔒 Sécurité
- **HTTPS obligatoire** : pas le choix, on partage des photos par lien.
- **Liens signés** : les URLs d'album doivent être imprévisibles (tokens longs).
- **Auto-destruction** : vérifier que le job cron tourne et supprime vraiment.
- **Pas d'auth sur consultation** : les invités n'ont pas de compte, c'est par design.
## 📚 Ressources
- [Site officiel](https://sharedmoments.app)
- [Repository GitHub](https://github.com/shared-moments/shared-moments)
- [Documentation](https://github.com/shared-moments/shared-moments/blob/main/README.md)
## 🔗 Pages Liées
- [[cat-photos]]
- [[app-circled-me]]
- [[app-piwigo]]
- [[app-traefik]]
- [[recettes-docker-compose]]
- [[securisation-home-lab]]