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

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