4.4 KiB
title: Keeper created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, calendar, tasks, notes, typescript, react, productivity] confidence: high contested: false sources: [https://selfh.st/apps/?tag=calendar, https://github.com/keepersuite/keep-er]
Keeper 🗝️
Application TypeScript tout-en-un : calendrier, tâches, notes et rappels, avec interface React moderne et synchronisation multi-device.
| Métadonnée | Valeur |
|---|---|
| Site web | https://keeperapp.dev |
| GitHub | https://github.com/keepersuite/keep-er |
| License | MIT |
| Langage | TypeScript (React + Express) |
| Étoiles | 34 ⭐ |
| Dernière MAJ | 2024 |
| Catégorie | cat-calendar |
Description
Keeper est un « productivity hub » auto-hébergeable qui combine quatre piliers classiques de l'organisation personnelle — calendrier, tâches, notes et rappels — dans une interface unique, réactive, et bien intégrée. L'ambition est de proposer une alternative crédible à des offres comme Google Keep + Google Calendar + Google Tasks, mais en gardant le contrôle total des données.
L'interface est en React avec un système de « workspaces » où chaque espace peut contenir ses propres calendriers, listes de tâches, et notes. Les éléments sont inter-reliés : un événement peut contenir une note attachée, une tâche peut avoir un rappel, une note peut référencer un événement. Le moteur de recherche unifié permet de retrouver n'importe quoi par mot-clé.
Côté technique, l'app utilise Node.js/Express côté backend, PostgreSQL ou SQLite pour la persistance, et une PWA côté frontend (installable comme une « appli » sur mobile). La synchronisation temps réel entre onglets se fait via WebSocket.
Installation
Docker Compose (recommandé)
services:
keeper:
image: ghcr.io/keepersuite/keep-er:latest
container_name: keeper
restart: unless-stopped
environment:
- DATABASE_URL=postgresql://keeper:***@db:5432/keeper
- JWT_SECRET=*** - APP_URL=https:....com
depends_on:
- db
ports:
- "8092:3000"
volumes:
- keeper-uploads:/app/uploads
db:
image: postgres:16-alpine
container_name: keeper-db
restart: unless-stopped
environment:
- POSTGRES_USER=keeper
- POSTGRES_PASSWORD=*** - POSTGRES_DB=keeper
volumes:
- keeper-db:/var/lib/postgresql/data
volumes:
keeper-db:
keeper-uploads:
Manuelle (Node.js)
git clone https://github.com/keepersuite/keep-er.git
cd keep-er
npm install
cp .env.example .env
npm run build
npm start
Configuration
- Créer le compte admin au premier lancement.
- Configurer le fuseau horaire et la langue.
- Activer/désactiver l'inscription publique.
- Connecter un compte SMTP pour les rappels par email.
- Optionnel : configurer un reverse-proxy (Caddy/Traefik) avec HTTPS obligatoire.
Alternatives
- Open Source : app-manage-my-damn-life (philosophie proche, plus fonctionnel), AppFlowy (Notion-like, plus large), Logseq (PKM, plus axé notes), HedgeDoc (collab notes, pas de calendrier)
- Mobile-first : Joplin (notes), Tasks.org (tâches), Etar (calendrier open source Android)
- Propriétaire : Notion, Google Workspace (Calendar + Tasks + Keep), Microsoft Loop
- Payant self-host : Anytype (clients uniquement, pas de serveur self-host)
Sécurité
- JWT_SECRET : obligatoire, générer avec
openssl rand -hex 64. - HTTPS : indispensable, les cookies d'auth et les notes transitent en clair sinon.
- PWA : attention au cache local des notes sensibles, peut être désactivé.
- Base : sauvegardes régulières Postgres + dossier
uploads(pièces jointes). - Multi-utilisateurs : bien définir les rôles (admin, member) et tester l'isolation des workspaces.
Ressources
Pages Liées
- cat-calendar
- recettes-docker-compose
- app-manage-my-damn-life — concurrent direct
- app-fluidcalendar — UI plus design