---
title: Linkwarden
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, bookmarks, collaboration, archival, wayback, typescript, nextjs, postgresql]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Bookmarks, https://linkwarden.app, https://github.com/linkwarden/linkwarden]
---

# 🔗 Linkwarden

> **Le书签 collaboratif qui ne perd jamais un lien** : capture, archivage Wayback Machine, organisation par collections partagées et préservation contre les pages 404.

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | [linkwarden.app](https://linkwarden.app) |
| **GitHub** | [linkwarden/linkwarden](https://github.com/linkwarden/linkwarden) |
| **Licence** | AGPL-3.0 |
| **Langage** | TypeScript (Next.js), PostgreSQL |
| **Étoiles GitHub** | 7.8k ⭐ |
| **Dernière MAJ** | 2026-05-28 |
| **Catégorie** | [[cat-bookmarks\|Bookmarks]] |

## 📝 Description

**Linkwarden** est une application de **gestion de bookmarks collaborative** dont l'idée centrale est de **préserver le contenu** des pages sauvegardées, pas seulement leur URL. À chaque ajout, Linkwarden capture un **snapshot** de la page (rendu HTML, screenshot, PDF, assets) et l'archive également via la **Wayback Machine** pour garantir la pérennité.

C'est le choix naturel pour les **équipes, associations, labs de veille** ou les familles qui veulent partager une bibliothèque de liens sans dépendre d'un service centralisé. Les **collections partagées** permettent une organisation thématique (Recherche, Veille, Documentation interne, Projets…), avec permissions granulaires par utilisateur.

L'UI, en **Next.js + Tailwind**, est moderne, rapide, et propose **recherche plein texte**, filtres avancés, **étiquettes colorées**, et une fonction de **détection des doublons** (via hash de l'URL). Les **extensions navigateur** (Chrome, Firefox) et l'**API REST** complète facilitent l'intégration.

Idéal pour :
- 🏢 **Veille collaborative** en équipe ou association
- 🔬 **Chercheurs** qui veulent garder une trace du web à un instant t
- 📚 **Bibliothèques thématiques** partagées
- ⚠️ Attention : un screenshot + assets = volume disque qui grandit vite

## 🚀 Installation

### Option 1 : Docker Compose (recommandé)

```yaml
# docker-compose.yml
services:
  linkwarden:
    image: ghcr.io/linkwarden/linkwarden:latest
    container_name: linkwarden
    restart: unless-stopped
    ports:
      - "3000:3000"
    environment:
      - DATABASE_URL=postgresql://linkwarden:linkwarden@db:5432/linkwarden
      - NEXTAUTH_SECRET=changez-ce-secret-32-chars
      - NEXTAUTH_URL=http://localhost:3000
      - NEXT_PUBLIC_BACKEND_URL=http://localhost:3000/api/v1
      - STORAGE_FOLDER=/data/linkwarden
      - AUTOSCRAPE=true
      - AUTOSCROLL=true
      - DISABLE_TELEMETRY=true
    volumes:
      - linkwarden-data:/data/linkwarden
    depends_on:
      - db

  db:
    image: postgres:16-alpine
    container_name: linkwarden-db
    restart: unless-stopped
    environment:
      - POSTGRES_USER=linkwarden
      - POSTGRES_PASSWORD=***      - POSTGRES_DB=linkwarden
    volumes:
      - linkwarden-db:/var/lib/postgresql/data

volumes:
  linkwarden-data:
  linkwarden-db:
```

### Option 2 : Sans Docker

```bash
git clone https://github.com/linkwarden/linkwarden.git
cd linkwarden
pnpm install
cp .env.sample .env
# éditer DATABASE_URL, NEXTAUTH_SECRET
pnpm run db:migrate
pnpm build && pnpm start
```

## ⚙️ Configuration Initiale

1. **Créer le compte admin** au premier lancement, désactiver l'inscription publique.
2. **Configurer `NEXTAUTH_SECRET`** long et aléatoire.
3. **Brancher un reverse proxy HTTPS** pour les extensions navigateur.
4. **Activer la Wayback Machine** par lien (`AUTOSCRAPE=true`).
5. **Définir des collections** partagées et leurs permissions (lecture/écriture).
6. **Importer** depuis Netscape bookmarks, Pocket, ou via l'API.

## 🔄 Alternatives

### Open Source
- [[app-karakeep]] — Plus moderne, IA, mais single-user-first
- [[app-wallabag]] — Vétéran PHP, plus mature, moins collaboratif
- [[app-linkding]] — Django, single-user, ultra léger
- [[app-linkace]] — Laravel, plus simple
- [[app-shaarli]] — PHP, single-file, à l'ancienne

### Propriétaires (ce que Linkwarden remplace)
- **Pocket** — Sunset 2025
- **Raindrop.io** — Freemium, pas d'archive locale
- **Diigo** — Payant, collaboration limitée
- **Pinboard** — Solo, pas collaboratif
- **Are.na** — Visuel, pas d'archivage Wayback

## 🔐 Sécurité

- **2FA TOTP** supporté, OAuth2/OIDC via NextAuth
- Permissions par **collection** (owner, contributor, viewer)
- **CSRF + Trusted hosts** activés
- Chiffrement des mots de passe (bcrypt)
- **HTTPS obligatoire** si exposition publique
- Sauvegarder `linkwarden-db` **et** `linkwarden-data` (snapshots = or)

## 📚 Ressources

- [Site officiel](https://linkwarden.app)
- [Documentation](https://docs.linkwarden.app)
- [Dépôt GitHub](https://github.com/linkwarden/linkwarden)
- [selfh.st — Bookmarks](https://selfh.st/apps/?tag=Bookmarks)

## Pages Liées
- [[cat-bookmarks]] — Vue d'ensemble de la catégorie Bookmarks
- [[app-karakeep]] — Concurrent single-user moderne
- [[app-wallabag]] — Vétéran PHP complémentaire
- [[recettes-docker-compose]] — Bonnes pratiques Docker Compose
