Files
wiki/Catalogue-Self-Hosted/apps/app-iso.md
T
2026-06-09 18:40:21 +02:00

105 lines
4.1 KiB
Markdown

---
title: Iso
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, dashboard, react, moderne, self-hosted]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Dashboard, https://github.com/servisofts/iso]
---
# 📊 Iso
> Dashboard **React moderne** et design épuré pour centraliser les services self-hosted : tuiles, statuts temps réel, ergonomie soignée.
## 📋 Informations Générales
| Attribut | Valeur |
|----------|--------|
| **Nom** | Iso |
| **Slug** | iso |
| **Description** | Dashboard React moderne, UI soignée, statut des services en temps réel, organisation par catégories |
| **Site officiel** | https://github.com/servisofts/iso |
| **Repository** | https://github.com/servisofts/iso |
| **Stars** | 161 ⭐ |
| **Licence** | MIT |
| **Langage principal** | TypeScript (React) |
| **Catégorie** | Dashboard |
| **Tags** | [catalogue, dashboard, react, moderne, self-hosted] |
## 📝 Description
Iso est un dashboard **construit en React** avec une approche moderne et un design clairement orienté UX. Là où Homer mise sur le statique YAML et où Glance mise sur la performance, Iso mise sur **l'interface utilisateur** : animations subtiles, typographie soignée, layout responsive, états de chargement propres.
Le projet se distingue par :
- **Stack React + TypeScript** : composants réutilisables, typage fort, code maintenable.
- **UI fluide** : transitions, états de hover, gestion fine des statuts (online / degraded / offline).
- **Configuration JSON** : un fichier central pour déclarer les groupes de services et leurs URLs ; pas d'admin web.
- **Mode clair / sombre** natif,跟随 le système ou forcé.
- **Health checks** : ping optionnel des services pour afficher leur disponibilité.
- **Responsive** : grille adaptative desktop / tablette / mobile.
C'est une option de choix pour qui veut **l'esthétique d'un produit SaaS** sans renoncer au self-hosted. L'inconvénient : consomme davantage de ressources qu'un Homer statique (bundle React + hydratation), donc à éviter sur un Pi Zero.
## 🚀 Installation
### Via Docker (recommandé)
```yaml
# docker-compose.yml
services:
iso:
image: ghcr.io/servisofts/iso:latest
container_name: iso
restart: unless-stopped
environment:
- NODE_ENV=production
- PORT=3000
volumes:
- ./config.json:/app/config.json:ro
ports:
- "3000:3000"
```
### Installation manuelle
Node.js 20+, cloner, `pnpm install && pnpm build && pnpm start`. Le build produit un bundle servi par `serve` ou nginx.
## ⚙️ Configuration
- **Fichier `config.json`** : déclare les groupes et les services (label, URL, icône, type, endpoint de health check).
- **Health check** : endpoint optionnel (URL `/health`, `/api/status`…) ; Iso affiche l'icône en couleur selon le code HTTP.
- **Icônes** : nom de l'app résolu via une bibliothèque interne (Heroicons, Simple Icons) ou URL d'image custom.
- **Thème** : `light` / `dark` / `auto`.
- **Pas d'auth native** : à protéger via reverse proxy.
## 🔗 Alternatives
- **Glance** — moderne aussi, plus de widgets dynamiques, Go à l'arrière-plan.
- **Homepage** — YAML, intégrations natives, plus populaire.
- **Homarr** — le standard de fait, intégration *arr poussée.
- **Homer** — minimaliste statique, l'opposé philosophie d'Iso.
## 🔒 Sécurité
- **Pas d'auth embarquée** : derrière un reverse proxy avec Authentik/Authelia dès qu'on expose hors LAN.
- **Build Node.js** : mettre à jour régulièrement pour les CVE de la chaîne npm (Dependabot recommandé).
- **HTTPS** : obligatoire, Traefik + Let's Encrypt ou Caddy.
- **Content Security Policy** : le bundle React peut être renforcé via un header CSP strict côté reverse proxy.
## 📚 Ressources
- Repository : https://github.com/servisofts/iso
- Démo : https://github.com/servisofts/iso#demo
## 🔗 Pages Liées
- [[cat-dashboard]]
- [[app-glance]] — concurrent moderne
- [[app-homarr]] — référence *arr
- [[app-traefik]] — reverse proxy + HTTPS
- [[app-authelia]] — couche d'auth
- [[recettes-docker-compose]]
- [[securisation-home-lab]]