En résumé
La méthode la plus légère : Node.js seul, ni backend, ni base de données, ni comptes. Tout tourne dans le navigateur. En contrepartie, pas d’entrepôt distant, pas de versioning Git et pas de partage entre utilisateurs. C’est le bon choix pour découvrir Linkr, travailler seul·e sur des fichiers locaux, ou publier une instance en site statique.
Prérequis
- Node.js 20+ et npm (nodejs.org).
- Git.
- Environ 1 Go d’espace disque.
Installation
Les commandes sont les mêmes sur macOS, Linux et Windows.
Cloner le dépôt
git clone https://framagit.org/interhop/linkr/linkr.git
cd linkrInstaller les dépendances
Comptez de quelques dizaines de secondes à 2 minutes.
npm installLancer Linkr
Ouvrez ensuite http://localhost:3000.
npm run dev:web C'est installé
Linkr tourne dans votre navigateur. Les sections suivantes sont à consulter au besoin : données de démonstration, publication en site statique, dépannage.
Récupérer les données de démonstration
Le jeu de démonstration (la base MIMIC-IV demo et les projets d’exemple) n’est pas dans le dépôt, et npm run dev:web ne le télécharge pas, pour ne pas exiger de connexion réseau. Lancez cette commande une fois pour l’ajouter à votre instance locale :
npm run data:fetch
Ce que le mode client-only permet, et ce qu’il ne permet pas, est détaillé dans Modes de déploiement.
Publier en site statique
Cette commande compile l’application en un ensemble de fichiers statiques prêts à déployer :
cd apps/web
npm run build
Le résultat se trouve dans apps/web/dist/. Vous pouvez l’envoyer tel quel sur :
- GitLab Pages : via
.gitlab-ci.yml(un exemple est fourni dans le dépôt). - GitHub Pages : push du contenu de
dist/sur une branchegh-pages. - Netlify / Vercel / Cloudflare Pages : connecter le dépôt et pointer la sortie vers
apps/web/dist. - Serveur web classique (nginx, Apache) : copier
dist/dans le dossier servi.
Pour vérifier le résultat avant de l’envoyer, npm run preview (toujours dans apps/web) sert le build localement.
Servir en HTTPS
DuckDB-WASM et certaines API modernes (File System Access) nécessitent un contexte sécurisé : HTTPS, ou HTTP uniquement sur localhost. Si vous hébergez Linkr sur un domaine, activez HTTPS.
Dépannage
npm install échoue. Vérifiez que vous utilisez bien Node.js 20+ (node -v). Si vous avez plusieurs versions de Node.js, utilisez nvm use 20.
Port 3000 déjà pris. Le script de dev vous propose automatiquement un autre port, ou fermez le processus qui l’occupe (lsof -i :3000 sur macOS/Linux).
L’application affiche une page de connexion. C’est que VITE_API_URL est défini, généralement dans apps/web/.env.local (créé par l’installation manuelle). Videz-le, ou lancez npm run dev:client, qui force le mode client-only.
Le build est très lourd. C’est normal en client-only : les runtimes DuckDB-WASM, Pyodide et webR pèsent plusieurs Mo chacun. Ils sont chargés à la demande par le navigateur, pas tous d’un coup.
Pour aller plus loin
- Passer au mode serveur, avec comptes et entrepôt : Installer avec Docker.
- Créer votre premier projet : Votre premier projet.