Description
Astroluma se positionne comme un dashboard « tout-en-un » qui dépasse la simple grille de liens. Il combine plusieurs modules dans une seule web-app au design soigné :
- 📑 Bookmarks : signets groupés en catégories, avec icônes auto via favicon
- 📰 Flux RSS : agrégateur intégré, lecture in-app
- 📂 Projects : tâches/kanban simplifié pour suivre ses homelab-projects
- 🛰️ Services : tuiles de liens vers les services (le classique du dashboard)
- 🏠 Multi-pages : plusieurs pages d'accueil au sein d'un même déploiement (ex. une page
Perso, unePro, uneHomelab) - 🎨 Thèmes : clair/sombre, accent customisable, fond d'écran
Points forts :
- 🆕 Très jeune : projet récent, esthétique actuelle (glassmorphism, typographie soignée)
- 🧩 Modules activables à la carte : on n'utilise que ce dont on a besoin
- 👥 Multi-users ready : comptes, partage de pages
- 🔌 API REST documentée
- 📱 Responsive : utilisable sur tablette / phone comme page d'accueil
Différence avec [[app-dashy]] : Dashy est plus mature et riche en widgets, mais Astroluma mise sur une UX plus moderne et l'agrégation de contenus (RSS, tasks).
Différence avec [[app-homepage]] : Homepage est centré sur la grille d'apps ; Astroluma intègre nativement du contenu (RSS, signets enrichis).
Installation
Via Docker (recommandé)
# docker-compose.yml
services:
astroluma:
image: shushantk/astroluma:latest
container_name: astroluma
restart: unless-stopped
ports:
- "3333:3333"
volumes:
- ./data:/app/data
- ./config:/app/config
environment:
- NEXTAUTH_SECRET=change-me-long-random
- NEXTAUTH_URL=https://astroluma.example.com
labels:
- "traefik.enable=true"
- "traefik.http.routers.astroluma.rule=Host(`astroluma.example.com`)"
- "traefik.http.routers.astroluma.entrypoints=websecure"
- "traefik.http.routers.astroluma.tls.certresolver=letsencrypt"
Installation manuelle
git clone https://github.com/S呼呼呼oshan/astroluma.git cd astroluma npm install npm run build npm start
Prérequis : Node.js 18+, SQLite embarqué (pas de base externe requise).
Configuration
- Créer le compte admin au premier lancement (
/setup). - Définir les pages : noms, ordre, page par défaut au login.
- Activer les modules : Bookmarks, RSS, Projects, Services.
- Importer des signets depuis un export HTML (Chrome, Firefox, Raindrop, Linkwarden).
- Configurer un proxy (Traefik/Nginx/Caddy) pour le HTTPS — l'app ne gère pas le TLS elle-même.
Alternatives
- [[app-dashy]] — Plus mature, plus de widgets, communauté large
- [[app-homepage]] — Référence moderne, très bonne UX, moins de modules
- [[app-glance]] — Lecture rapide, widgets read-only
- [[app-fenrus]] — Single-user, smart home, voir fiche dédiée
- [[app-dashwise]] — Concurrent jeune (Dashy-like), voir fiche dédiée
Sécurité
- 🔐 Changer
NEXTAUTH_SECRETdès l'installation (long token aléatoire). - 👤 Multi-users = SSO recommandé : brancher un OIDC (Authentik, Authelia) si exposition publique.
- 📦 Sauvegarder
./dataet./config: base SQLite + uploads. - 🌐 Pas d'exposition directe : passer par [[app-traefik]] avec auth middleware.
Ressources
- GitHub — S呼呼呼oshan/astroluma
- selfh.st — Apps Dashboard
- Démo en ligne (selon disponibilité)
