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

122 lines
4.6 KiB
Markdown

---
title: StencilBox
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, static-site, yaml, homepage, dashboard, stencilbox, templates, self-hosting]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Static-Site, https://jamesread.github.io/StencilBox/, https://github.com/jamesread/StencilBox]
---
# 🧱 StencilBox
> **Le générateur statique orienté YAML** pour construire rapidement des pages simples, rapides et data-driven, notamment des homepages de liens ou des petits sites utilitaires auto-hébergés.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | [jamesread.github.io/StencilBox](https://jamesread.github.io/StencilBox/) |
| **GitHub** | [jamesread/StencilBox](https://github.com/jamesread/StencilBox) |
| **Licence** | AGPL-3.0 |
| **Langage** | Non précisé clairement dans les sources consultées |
| **Étoiles GitHub** | 68 ⭐ |
| **Dernière MAJ** | 2026-05-12 |
| **Catégorie** | [[cat-static-site|Static Site]] |
## 📝 Description
**StencilBox** est un **générateur de site statique** centré sur la transformation de **données YAML** en pages web simples et rapides. La documentation le rapproche de Hugo dans l'idée générale, tout en expliquant que son focus est davantage le **self-hosting**, les **pages de liens**, les sidebars et les petits sites utilitaires pilotés par données.
Le dépôt insiste sur plusieurs différences par rapport aux dashboards dynamiques type Heimdall/Homepage :
- génération **statique** plutôt que rendu dynamique ;
- possibilité de **générer plusieurs sites** depuis une même instance ;
- orientation **données YAML** plus que contenu éditorial Markdown.
La documentation précise aussi que **Markdown n'est pas encore supporté** comme format principal : StencilBox vise d'abord les usages **data-first**.
Cas d'usage typiques :
- homepages personnelles ou familiales ;
- portails internes de liens ;
- petites pages d'information construites depuis YAML ;
- génération de plusieurs variantes de site à partir de configurations séparées.
## 🚀 Installation
### Option recommandée : Docker Compose
La documentation officielle recommande explicitement **Docker Compose**.
```yaml
services:
stencilbox:
container_name: StencilBox
image: ghcr.io/jamesread/stencilbox:latest
volumes:
- stencilbox-config:/config
restart: unless-stopped
ports:
- "4337:8080"
volumes:
stencilbox-config:
name: stencilbox-config
external: false
```
Puis :
```bash
docker compose up -d
```
## ⚙️ Configuration Initiale
1. **Créer le `docker-compose.yml`** recommandé.
2. **Démarrer StencilBox** avec `docker compose up -d`.
3. **Accéder à l'interface** pour vérifier que le service répond.
4. **Préparer vos fichiers YAML** dans le volume `/config`.
5. **Choisir un template** intégré ou adapter le rendu à votre usage.
6. **Construire un ou plusieurs sites** selon vos fichiers de configuration.
StencilBox est particulièrement pertinent si vous préférez **piloter un site par données YAML** plutôt que maintenir une stack de contenu complète.
## 🔄 Alternatives
### Open Source
- **Homepage** — Dashboard auto-hébergé dynamique pour services personnels
- **Heimdall** — Portail d'applications plus traditionnel
- **Hugo** — Générateur statique polyvalent
- **Jekyll** — Générateur statique classique
- **tinyfeed** — Génération statique focalisée sur les flux
### Propriétaires
- **start.me**
- **Netlify** (pour la publication, pas l'édition)
- **Carrd**
## 🔐 Sécurité
- ✅ Le résultat final est **statique**, donc très simple à exposer
- ✅ Le projet revendique l'absence de télémétrie et le fonctionnement sans Internet requis
- ⚠️ Vérifiez le contenu YAML publié si vous y placez des URLs internes, identifiants de service ou métadonnées sensibles
- ✅ Montez le volume `/config` avec des permissions appropriées
- ✅ Exposez le service derrière un reverse proxy HTTPS si nécessaire
- ✅ Sauvegardez le volume de configuration avant mise à jour de conteneur
## 📚 Ressources
- [Documentation officielle](https://jamesread.github.io/StencilBox/)
- [Installation via Docker Compose](https://jamesread.github.io/StencilBox/install/docker-compose.html)
- [GitHub jamesread/StencilBox](https://github.com/jamesread/StencilBox)
- [Guide de démarrage](https://jamesread.github.io/StencilBox/getting-started.html)
## Pages Liées
- [[cat-static-site]] — Vue d'ensemble de la catégorie Static Site
- [[app-tinyfeed]] — Générateur statique minimaliste
- [[app-zaneops]] — Pour publier ensuite les sites générés