Initial vault setup
This commit is contained in:
@@ -0,0 +1,140 @@
|
||||
---
|
||||
title: Pepperminty Wiki
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, wiki, php, single-file, minimaliste, mpl, markdown, modules]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=Wiki, https://github.com/sbrl/Pepperminty-Wiki, https://peppermint.mooncarrot.space/]
|
||||
---
|
||||
|
||||
# 🌿 Pepperminty Wiki
|
||||
|
||||
> **Un wiki dans une boîte** : un moteur wiki PHP complet contenu dans un seul fichier, modulaire, sans base de données, idéal pour un wiki personnel léger ou un projet éducatif.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Champ | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | [peppermint.mooncarrot.space](https://peppermint.mooncarrot.space/) |
|
||||
| **GitHub** | [sbrl/Pepperminty-Wiki](https://github.com/sbrl/Pepperminty-Wiki) |
|
||||
| **Licence** | MPL-2.0 |
|
||||
| **Langage** | PHP |
|
||||
| **Étoiles GitHub** | 205 ⭐ |
|
||||
| **Dernière MAJ** | 2023-02-18 (v0.24) — commits actifs en 2026 |
|
||||
| **Catégorie** | [[cat-wiki]] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**Pepperminty Wiki** est né d'un défi : *"un wiki complet dans un seul fichier PHP"*. Inspiré par [Minty Wiki](https://github.com/am2064/Minty-Wiki) d'am2064, le projet a évolué vers une **architecture modulaire** où le cœur reste compact mais où les fonctionnalités s'ajoutent via des modules chargeables (`feature-recent-changes.php`, `feature-tags.php`, etc.). Cette approche "wiki in a box" rend Pepperminty particulièrement adapté à un hébergement mutualisé bas de gamme, un Pi, ou un usage éducatif.
|
||||
|
||||
L'application est écrite en **PHP 93% pur** (le reste étant CSS et scripts utilitaires), sous licence **MPL-2.0**, ce qui impose de publier les modifications du code source lui-même mais laisse une grande liberté pour le contenu. Les fonctionnalités natives incluent : **upload de fichiers**, **page d'aide dynamique**, **historique de révisions** avec **restauration à une version antérieure**, **tags** sur les pages, **watchlists utilisateur**, **galerie de thèmes** (depuis v0.20) et un système de **modules activables à la demande**. Le Markdown est supporté nativement, et la syntaxe de wiki peut être étendue par modules.
|
||||
|
||||
L'auteur (@sbrl, Starbeamrainbowlabs) est très actif sur les aspects sécurité (un fichier `SECURITY.md` décrit la procédure de divulgation et un canal email dédié `security [at] starbeamrainbowlabs [dot] com`). Le projet a un public de niche — pédagogique, expérimental, et utile pour qui veut un wiki **léger, lisible, modifiable et sans infrastructure**. Il est aussi à l'origine d'un **client Android** en bêta sur Google Play et sert de base à de petits projets communautaires (ex. WikiProject Paranormal). Pour un wiki d'entreprise ou collaboratif moderne, BookStack, Wiki.js ou Outline restent des choix plus appropriés ; Pepperminty brille dans le **niche "wiki personnel minimaliste et pédagogique"**.
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Option recommandée : PHP + serveur web
|
||||
|
||||
Pepperminty Wiki se déploie sur n'importe quel serveur PHP, sans base de données.
|
||||
|
||||
```bash
|
||||
# Cloner le dépôt
|
||||
git clone https://github.com/sbrl/Pepperminty-Wiki.git
|
||||
cd Pepperminty-Wiki
|
||||
|
||||
# Builder le wiki (combine les modules + le core en un fichier index.php)
|
||||
php build.php
|
||||
# Ou : make build
|
||||
```
|
||||
|
||||
L'image Docker est aussi disponible :
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
pepperminty:
|
||||
image: sqlatenwiki/peppermintywiki:latest
|
||||
container_name: pepperminty
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- ./data:/wiki-data
|
||||
```
|
||||
|
||||
> L'image est **expérimentale** mais fonctionnelle. Pour la prod, le déploiement sur un **PHP-FPM + Nginx** classique est recommandé.
|
||||
|
||||
### Option 2 : Hébergement mutualisé
|
||||
|
||||
Pepperminty fonctionne sur un simple **LAMP** ou même un mutualisé OVH/Infomaniak avec PHP 7.4+ :
|
||||
|
||||
```bash
|
||||
# Sur le serveur
|
||||
git clone https://github.com/sbrl/Pepperminty-Wiki.git wiki/
|
||||
cd wiki
|
||||
php build.php
|
||||
# Pointer le vhost sur le dossier racine du wiki
|
||||
```
|
||||
|
||||
### Configuration
|
||||
|
||||
Le fichier `peppermint-config-info.php` documente toutes les options. La configuration se fait principalement via le panneau admin une fois le wiki démarré.
|
||||
|
||||
## ⚙️ Configuration
|
||||
|
||||
- **`peppermint-config-info.php`** : documentation des options de config.
|
||||
- **`peppermint.guiconfig.json`** : configuration GUI au format JSON.
|
||||
- **Modules** : situés dans `modules/`, activables depuis l'admin. Chaque module ajoute une fonctionnalité (recent changes, tags, watchlists, etc.).
|
||||
- **Thèmes** : situés dans `themes/`, sélectionnables depuis l'admin (galerie de thèmes depuis v0.20).
|
||||
- **Build** : `build.php` ou `build.sh` combinent core + modules en un `index.php` unique.
|
||||
- **Sauvegardes** : un `tar` du dossier suffit (fichiers `.md` + pièces jointes + config).
|
||||
- **Pas de base de données** : tout est en fichiers plats.
|
||||
|
||||
## 🔄 Alternatives
|
||||
|
||||
### Open Source
|
||||
- [[app-dokuwiki]] — Wiki PHP flat-file historique, plus mature
|
||||
- [[app-wikidocs]] — Wiki PHP flat-file moderne WYSIWYG
|
||||
- [[app-otter-wiki]] — Wiki Python/Git plus moderne
|
||||
- [[app-leafwiki]] — Wiki Go single-binary minimaliste
|
||||
- [[app-wiki-go]] — Wiki Go plus riche avec Kanban
|
||||
- **DokuWiki** — Référence des wikis PHP flat-file
|
||||
- **TiddlyWiki** — Wiki JavaScript single-file dans le navigateur
|
||||
|
||||
### Propriétaires
|
||||
- **Notion** — Workspace moderne
|
||||
- **Confluence** — Wiki d'entreprise
|
||||
- **Evernote** — Notes et wiki personnel
|
||||
- **Apple Notes** — Notes iCloud (fermé)
|
||||
|
||||
## 🔐 Sécurité
|
||||
|
||||
- ✅ **Pas de base de données** : surface d'attaque SQL nulle.
|
||||
- ✅ **MPL-2.0** : licence de fichier copyleft, encourage la divulgation des patches.
|
||||
- ✅ **SECURITY.md** : procédure de divulgation claire, email dédié, **ne pas ouvrir d'issue publique** pour les failles.
|
||||
- ⚠️ **Filtrage upload** : valider les types MIME des fichiers uploadés (modules d'upload fournis, à configurer).
|
||||
- ✅ **HTTPS obligatoire** via reverse proxy.
|
||||
- ✅ **Pas de JS/eval** : le PHP est procédural, peu d'opportunités d'injection complexe.
|
||||
- ⚠️ **Permissions fichiers** : restreindre l'écriture sur le dossier de données.
|
||||
- ✅ **Mises à jour** : suivre les releases, le projet reçoit des commits de sécurité en 2026 (correction unsafe moves sur fichiers attachés, npm audit fix).
|
||||
- ⚠️ **Pas d'auth externe** : pas d'OIDC/LDAP nativement, comptes stockés localement.
|
||||
|
||||
## 📚 Ressources
|
||||
|
||||
- [Dépôt GitHub sbrl/Pepperminty-Wiki](https://github.com/sbrl/Pepperminty-Wiki)
|
||||
- [Site vitrine Mooncarrot Space](https://peppermint.mooncarrot.space/)
|
||||
- [WikiMatrix - Pepperminty Wiki](https://www.wikimatrix.org/show/pepperminty-wiki)
|
||||
- [Image Docker sqlatenwiki/peppermintywiki](https://hub.docker.com/r/sqlatenwiki/peppermintywiki)
|
||||
- [Documentation Getting Started](https://starbeamrainbowlabs.com/labs/peppermint/__nightdocs/04-Getting-Started.html)
|
||||
- [Client Android en bêta](https://play.google.com/apps/testing/com.sbrl.peppermint)
|
||||
|
||||
## Pages Liées
|
||||
|
||||
- [[cat-wiki]] — Vue d'ensemble de la catégorie Wiki
|
||||
- [[app-wikidocs]] — Cousin PHP flat-file plus moderne
|
||||
- [[app-leafwiki]] — Wiki single-binary Go
|
||||
- [[app-otter-wiki]] — Wiki Python/Git
|
||||
- [[recettes-docker-compose]] — Templates Docker
|
||||
- [[securisation-home-lab]] — Bonnes pratiques de sécurité
|
||||
Reference in New Issue
Block a user