149 lines
5.0 KiB
Markdown
149 lines
5.0 KiB
Markdown
---
|
|
title: LinkAce
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, bookmarks, php, laravel, mysql, lists, tags, watchlist, dead-link-checker]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Bookmarks, https://www.linkace.org, https://github.com/Kovah/LinkAce]
|
|
---
|
|
|
|
# 🗂️ LinkAce
|
|
|
|
> **Le bookmarks manager Laravel pour les amoureux des bases organisées** : listes imbriquées, étiquettes, watchlists, vérificateur de liens morts et historique complet de chaque URL.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [linkace.org](https://www.linkace.org) |
|
|
| **GitHub** | [Kovah/LinkAce](https://github.com/Kovah/LinkAce) |
|
|
| **Licence** | AGPL-3.0 |
|
|
| **Langage** | PHP (Laravel) |
|
|
| **Étoiles GitHub** | 2.0k ⭐ |
|
|
| **Dernière MAJ** | 2026-04-15 |
|
|
| **Catégorie** | [[cat-bookmarks\|Bookmarks]] |
|
|
|
|
## 📝 Description
|
|
|
|
**LinkAce** est un gestionnaire de bookmarks open-source construit sur **Laravel** (PHP). C'est l'alternative idéale pour ceux qui veulent **plus de structure** que Linkding ou Shiori, sans tomber dans la complexité collaborative de Linkwarden. Le projet est allemand, régulier, et conçu pour qu'un **seul utilisateur** gère une bibliothèque de liens qui grossit sur des années.
|
|
|
|
Le point fort de LinkAce, c'est son **modèle de données hiérarchique** :
|
|
- 📚 **Listes** (lists) imbriquées à volonté (arborescence)
|
|
- 🏷️ **Étiquettes** (tags) colorées
|
|
- 👁️ **Watchlists** (listes surveillées, vérifiées régulièrement)
|
|
- 📜 **Historique** : un lien déjà supprimé garde son titre, sa description, son snapshot
|
|
|
|
Les autres points marquants :
|
|
- ✅ **Background link check** : détecte les liens morts (404/500) automatiquement
|
|
- ✅ **Screenshot automatique** des liens via wkhtmltoimage ou headless Chrome
|
|
- ✅ **Full-text search** via Laravel Scout + Meilisearch
|
|
- ✅ **Import** : Netscape HTML, Pocket, Pinboard, Linkwarden
|
|
- ✅ **API REST** + **bookmarklet** + extension navigateur
|
|
- ⚠️ Nécessite MySQL/MariaDB (pas de SQLite natif)
|
|
|
|
## 🚀 Installation
|
|
|
|
### Option 1 : Docker Compose (recommandé)
|
|
|
|
```yaml
|
|
# docker-compose.yml
|
|
services:
|
|
linkace:
|
|
image: linkace/linkace:latest
|
|
container_name: linkace
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8755:80"
|
|
environment:
|
|
- APP_URL=http://localhost:8755
|
|
- DB_CONNECTION=mysql
|
|
- DB_HOST=db
|
|
- DB_PORT=3306
|
|
- DB_DATABASE=linkace
|
|
- DB_USERNAME=linkace
|
|
- DB_PASSWORD=*** - CACHE_DRIVER=file
|
|
- SESSION_DRIVER=file
|
|
- QUEUE_CONNECTION=database
|
|
- MAIL_MAILER=log
|
|
volumes:
|
|
- linkace-data:/app/storage
|
|
depends_on:
|
|
- db
|
|
|
|
db:
|
|
image: mariadb:10.11
|
|
container_name: linkace-db
|
|
restart: unless-stopped
|
|
environment:
|
|
- MARIADB_DATABASE=linkace
|
|
- MARIADB_USER=linkace
|
|
- MARIADB_PASSWORD=*** - MARIADB_RANDOM_ROOT_PASSWORD=*** volumes:
|
|
- linkace-db:/var/lib/mysql
|
|
|
|
volumes:
|
|
linkace-data:
|
|
linkace-db:
|
|
```
|
|
|
|
### Option 2 : LAMP classique
|
|
|
|
```bash
|
|
git clone https://github.com/Kovah/LinkAce.git
|
|
cd LinkAce
|
|
composer install
|
|
cp .env.example .env
|
|
php artisan key:generate
|
|
php artisan migrate --seed
|
|
php artisan storage:link
|
|
```
|
|
|
|
## ⚙️ Configuration Initiale
|
|
|
|
1. **Créer le premier utilisateur** via l'UI (signup ouvert au premier lancement).
|
|
2. **Désactiver l'inscription publique** depuis l'admin.
|
|
3. **Configurer SMTP** pour les notifications de liens morts.
|
|
4. **Lancer le worker de queue** : `php artisan queue:work` (important pour les backgrounds jobs).
|
|
5. **Activer la Wayback Machine** dans les options (`archive.org`).
|
|
6. **Brancher un reverse proxy HTTPS** (Caddy/Traefik).
|
|
7. **Importer** depuis un dump Pocket/Pinboard/HTML.
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
- [[app-linkwarden]] — Plus collaboratif, snapshots Wayback
|
|
- [[app-karakeep]] — Plus moderne, IA
|
|
- [[app-wallabag]] — Plus mature, plus lourd
|
|
- [[app-linkding]] — Django, single-user, plus simple
|
|
- [[app-shiori]] — Go, binaire unique
|
|
|
|
### Propriétaires (ce que LinkAce remplace)
|
|
- **Pocket** — Sunset 2025
|
|
- **Pinboard** — 25$/an
|
|
- **Del.icio.us** — Défunt
|
|
- **Raindrop.io** — Freemium
|
|
- **Linkstash** — Windows-only, abandonné
|
|
|
|
## 🔐 Sécurité
|
|
|
|
- Authentification Laravel (bcrypt) + **2FA TOTP** depuis l'admin
|
|
- **OAuth/OIDC** supporté (Google, GitHub, generic)
|
|
- **CSRF, XSS, SQL injection** couverts par Laravel
|
|
- HTTPS obligatoire pour les extensions
|
|
- Ne pas exposer MySQL publiquement
|
|
- Sauvegarder **DB** + `linkace-data` (storage)
|
|
|
|
## 📚 Ressources
|
|
|
|
- [Site officiel](https://www.linkace.org)
|
|
- [Documentation](https://www.linkace.org/docs)
|
|
- [Dépôt GitHub](https://github.com/Kovah/LinkAce)
|
|
- [selfh.st — Bookmarks](https://selfh.st/apps/?tag=Bookmarks)
|
|
|
|
## Pages Liées
|
|
- [[cat-bookmarks]] — Vue d'ensemble de la catégorie Bookmarks
|
|
- [[app-linkwarden]] — Concurrent avec collaboration
|
|
- [[app-linkding]] — Concurrent single-user plus minimaliste
|
|
- [[recettes-docker-compose]] — Bonnes pratiques Docker Compose
|