105 lines
3.7 KiB
Markdown
105 lines
3.7 KiB
Markdown
---
|
|
title: Peppermint
|
|
created: 2026-06-08
|
|
updated: 2026-06-08
|
|
type: app
|
|
tags: [catalogue, support-ticketing, app-marathon-batch-rattrapage-1]
|
|
confidence: medium
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Support&app=peppermint]
|
|
---
|
|
|
|
# 🎧 Peppermint
|
|
|
|
> **Helpdesk moderne et léger en TypeScript** — alternative self-hosted jeune et minimaliste à Zendesk, conçue pour les petites équipes qui veulent un support@ fonctionnel en 5 minutes.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [peppermint.sh](https://peppermint.sh) |
|
|
| **GitHub** | [peppermint-app/peppermint](https://github.com/peppermint-app/peppermint) |
|
|
| **License** | MIT |
|
|
| **Langage** | TypeScript (Next.js + Prisma) |
|
|
| **Étoiles GitHub** | ~1.5k ⭐ |
|
|
| **Catégorie** | [[cat-support-ticketing\|Support / Ticketing]] |
|
|
|
|
## 📝 Description
|
|
|
|
**Peppermint** est une application de **helpdesk** moderne et légère, écrite en TypeScript (Next.js + Prisma + PostgreSQL). C'est un projet jeune (2022+) qui vise à offrir une **alternative simple à Zendesk** pour les petites équipes : gestion de tickets, base de connaissances, multi-tenant, API REST, UI React/Next.js fluide. Différence vs **FreeScout** : Peppermint est plus jeune, écrit en TypeScript (pas PHP), et a une UX plus « startup-style » (très épurée), mais son écosystème de modules est bien plus petit et l'email piping est moins éprouvé. Pour qui: startups et devs qui veulent un helpdesk moderne auto-hébergé, et qui maîtrisent l'écosystème Node.js.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Docker Compose (recommandé)
|
|
|
|
```yaml
|
|
version: '3.8'
|
|
services:
|
|
peppermint:
|
|
image: peppermintapp/peppermint:latest
|
|
container_name: peppermint
|
|
restart: unless-stopped
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
- DATABASE_URL=postgresql://peppermint:***@postgres:5432/peppermint
|
|
- NEXTAUTH_URL=https://support.example.com
|
|
- NEXTAUTH_SECRET=***
|
|
- SMTP_HOST=mail.example.com
|
|
- SMTP_PORT=587
|
|
- SMTP_USER=support@example.com
|
|
- SMTP_PASSWORD=***
|
|
depends_on:
|
|
- postgres
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.peppermint.rule=Host(`support.example.com`)"
|
|
- "traefik.http.routers.peppermint.entrypoints=websecure"
|
|
- "traefik.http.routers.peppermint.tls.certresolver=letsencrypt"
|
|
|
|
postgres:
|
|
image: postgres:16-alpine
|
|
container_name: peppermint-db
|
|
restart: unless-stopped
|
|
environment:
|
|
- POSTGRES_USER=peppermint
|
|
- POSTGRES_PASSWORD=***
|
|
- POSTGRES_DB=peppermint
|
|
volumes:
|
|
- peppermint-db:/var/lib/postgresql/data
|
|
|
|
volumes:
|
|
peppermint-db:
|
|
```
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
- [[app-freescout]] — Concurrent PHP, plus mature
|
|
- [[app-osticket]] — Concurrent PHP historique
|
|
- [[app-zammad]] — Concurrent omnicanal
|
|
- [[app-helprealm]] — Concurrent direct, plus récent
|
|
- [[app-libredesk]] — Concurrent direct
|
|
|
|
### Propriétaires
|
|
- **Zendesk** — Leader mondial
|
|
- **Help Scout** — PME, Help Scout-like
|
|
- **Plain** — Concurrent moderne SaaS
|
|
|
|
## 🔐 Sécurité
|
|
- **Auth** : NextAuth.js (email + magic link, OAuth).
|
|
- **2FA** : non activée par défaut, à configurer manuellement.
|
|
- **CSRF** : protection native Next.js.
|
|
- **HTTPS** : obligatoire (Traefik + Let's Encrypt).
|
|
- **Multi-tenant** : attention à l'isolation des données si hébergement partagé.
|
|
|
|
## 📚 Ressources
|
|
- [Site officiel](https://peppermint.sh)
|
|
- [GitHub Peppermint](https://github.com/peppermint-app/peppermint)
|
|
|
|
## Pages Liées
|
|
- [[cat-support-ticketing]] — Catégorie Support / Ticketing
|
|
- [[app-freescout]] — Concurrent mature
|
|
- [[app-zammad]] — Concurrent omnicanal
|
|
- [[recettes-docker-compose]] — Templates Docker
|