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

133 lines
4.6 KiB
Markdown

---
title: Fli.so
created: 2026-06-08
updated: 2026-06-08
type: app
tags: [catalogue, url-shortener, self-hosted]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=42, https://github.com/thisuxhq/fli.so]
---
# 🔗 Fli.so
> **Fli.so** est un raccourcisseur d'URL moderne écrit par l'équipe thisuxhq, avec une interface épurée, des QR codes intégrés et un déploiement cloud-first.
## 📋 Informations Générales
| Métadonnée | Valeur |
| :--- | :--- |
| **Site web** | https://fli.so |
| **GitHub** | https://github.com/thisuxhq/fli.so |
| **License** | AGPL-3.0 |
| **Langage principal** | TypeScript |
| **Étoiles GitHub** | 505 |
| **Dernière MAJ** | 2025-05-06 |
| **Catégorie** | [[cat-url-shortener]] |
## 📝 Description
Fli.so est un raccourcisseur d'URL moderne construit par thisuxhq, équipe qui a popularisé plusieurs outils SvelteKit. Le projet mise sur la **vitesse d'exécution** (chargement quasi-instantané) et une **interface utilisateur épurée**, sans la lourdeur des plateformes marketing comme Dub.
L'application supporte les slugs personnalisés, les domaines personnalisés, les liens protégés par mot de passe, l'expiration programmée, et génère automatiquement un **QR code stylisé** pour chaque lien. L'UI web est en SvelteKit, ce qui en fait un client léger côté navigateur, et le backend Node.js peut être déployé sur Vercel, Fly.io, ou un VPS classique via Docker.
L'écosystème est plus jeune que Shlink ou Kutt, et la documentation est succincte. Le projet est cependant un bon choix pour ceux qui veulent une UI moderne et réactive sans dépendre d'un service commercial, et qui maîtrisent SvelteKit / Node.js pour la customisation.
## 🚀 Installation
### Docker Compose (recommandé)
```yaml
services:
fliso:
image: ghcr.io/thisuxhq/fliso:latest
container_name: fliso
restart: unless-stopped
networks:
- web
- internal
environment:
- DATABASE_URL=postgresql://fliso:***@db:5432/fliso
- NEXTAUTH_URL=https://go.example.com
- NEXTAUTH_SECRET=${NEXT...T}
- DEFAULT_DOMAIN=go.example.com
labels:
- "traefik.enable=true"
- "traefik.http.routers.fliso.rule=Host(`go.example.com`)"
- "traefik.http.routers.fliso.tls.certresolver=letsencrypt"
- "traefik.http.services.fliso.loadbalancer.server.port=3000"
depends_on:
- db
db:
image: postgres:16-alpine
restart: unless-stopped
networks:
- internal
environment:
- POSTGRES_USER=fliso
- POSTGRES_PASSWORD=*** - POSTGRES_DB=fliso
volumes:
- fliso-db:/var/lib/postgresql/data
networks:
web:
external: true
internal:
volumes:
fliso-db:
```
### Installation manuelle (Vercel/Fly)
1. `git clone https://github.com/thisuxhq/fli.so.git`
2. Prérequis : Node.js 20+, PostgreSQL 13+ (Supabase, Neon, RDS acceptés).
3. Copier `.env.example` vers `.env` et configurer.
4. Lancer les migrations Prisma puis `npm run dev` (ou `vercel deploy`).
## ⚙️ Configuration
- `NEXTAUTH_SECRET` : chaîne aléatoire pour signer les sessions.
- `DEFAULT_DOMAIN` : le domaine servant les liens courts.
- Configurer OAuth (Google, GitHub) pour l'inscription.
- Brancher un SMTP pour la récupération de mot de passe.
- Activer le rate-limiting (middleware SvelteKit ou reverse proxy).
## 🔄 Alternatives
### Open Source
- [[app-kutt]] — autre TypeScript plus mature, UI équivalente.
- [[app-shlink]] — PHP mature, REST API complète.
- [[app-sink]] — Rust, edge-ready, no-tracking.
- [[app-dub]] — plateforme marketing complète, plus riche.
### Propriétaires (ce que cette app remplace)
- **bit.ly** — leader freemium.
- **cutt.ly** — custom domain, freemium.
- **short.io** — orienté marque blanche.
- **ow.ly** (Hootsuite) — orienté social media.
## 🔐 Sécurité
- **NEXTAUTH_SECRET** : chaîne aléatoire longue, jamais commitée.
- **HTTPS strict** : service exposé, ne jamais servir en HTTP.
- **OAuth providers** : limiter les providers autorisés en production.
- **Rate limit** : activer sur l'API de création pour bloquer les abus.
- **Backups DB** : la base de liens doit être sauvegardée quotidiennement.
## 📚 Ressources
- Site officiel : https://fli.so
- Code source : https://github.com/thisuxhq/fli.so
- Documentation : https://github.com/thisuxhq/fli.so#readme
- Démo : https://fli.so
- Communauté : https://github.com/thisuxhq/fli.so/discussions
## Pages Liées
- [[cat-url-shortener|URL Shortener]] — Catégorie complète
- [[app-kutt]] — Voisin TypeScript plus mature
- [[app-shlink]] — Alternative PHP robuste
- [[recettes-docker-compose]] — Templates Docker