Présentation du logiciel
Sink est un logiciel open-source qui permet de raccourcire une URL longue et embétante à retenir en une url courte et customisable, il permet aussi de garder un oeil sur les statistiques. Ce raccourcisseur d’URL est entièrement déployable sur Cloudflare, pas besoin de s’embêter à gérer des serveurs.
Fonctionnalités principales
Raccourcissement d’URL
Transformez les URL longues et illisibles en liens propres et mémorisables.
Supposons vous ayez une URL longue comme:
|
|
En utilisant un raccourcisseur d’URL, vous pourriez la transformer en quelque chose de plus court comme:
|
|
Personnalisation des slugs
Un slug c’est une partie de l’URL qui identifie une page spécifique de manière lisible par l’utilisateur
Prenons comme exemple https://sink.cool/long
:
https://sink.cool
est le nom de domaine/long
est le slug
Grace à cette fonctionnalité vous êtes libre de nommer comme vous le souhaitez le slug de votre URL, vous verrez dans la suite de l’article qu’il est aussi possible de modifier le nom de domaine mais celui-ci restera fixe.
A noter qu’il est aussi possible d’ajouter un délais d’éxpiration pour le lien que vous créé.
Analytiques avancées
Sink pourrait très bien fonctionner à lui seul mais, son créateur à décidier d’ajouter une fonctionnalité qui fait la force de sink, la possibilité d’avoir des statisques sur les URL.
C’est Cloudflare qui s’occupe d’analyser le trafic des liens ci-dessous ce qu’il est possible d’en resortir:
- Le nombre exacte de personne ayant cliqué sur les URL
- Le pays d’où proviennent ces personnes
- Si ils étaient sur un Ordinateur ou un téléphone portable
Si vous êtes curieux je vous laisse cliquer ici, vous aurez un appercu global de ce qu’il est capable de faire.
Technologies utilisées
Cloudflare c’est avant tout une entreprise qui fournit des services de performance et de sécurité pour les sites web.
Nous allons utiliser deux fonctionnalité de Cloudflare:
- Les pages
- Cloudflare Analytics
Déploiement de Sink
Dans une premmier temps il vous faudra créer un compte sur :
- GitHub, est une plateforme de développement collaboratif qui permet de stocker, gérer et partager du code source.
- Cloudflare, est une société qui fournit des services de sécurité, de performance et d’infrastructure web.
Forkez le Dépôt
- Rendez-vous sur la page GitHub de Sink.
- Cliquez sur le bouton
Fork
en haut à droite pour forker le dépôt dans votre propre compte GitHub.
Forker sur Github, c’est créer une copie d’un dépôt existant dans votre propre compte pour pouvoir y apporter des modifications indépendamment du dépôt original.
Créez un Projet Cloudflare Pages
- Accédez à Cloudflare Pages.
- Cliquez sur « Create a project ».
- Sélectionnez le dépôt « Sink » forké précédemment.
- Choisissez le preset « Nuxt.js ».
Cloudflare Pages est une plateforme d’hébergement de sites web statiques qui offre des déploiements rapides
Configurez les Variables d’Environnement
Ajoutez les variables environnementales suivantes :
- NUXT_SITE_TOKEN : configurez un token de site supérieur à 8 caractères.
- NUXT_CF_ACCOUNT_ID : trouvez votre Cloudflare Account ID ici.
- NUXT_CF_API_TOKEN : générez un token d’API Cloudflare avec les permissions nécessaires en suivant ce guide.
Déploiement Initial
Cliquez sur « Save and deploy ». Si le déploiement échoue, annulez-le et passez à l’étape suivante.
Configurez les Fonctionnalités
- Allez dans Settings -> Functions dans Cloudflare Pages.
- KV namespace bindings : Associez KV à une namespace KV existante ou nouvelle.
- Workers AI Bindings (optionnel) : Associez AI au catalogue Workers AI.
- Analytics Engine Binding : Associez ANALYTICS au dataset sink et activez le Cloudflare Analytics Engine Beta pour votre compte.
Noms des variables | Valeur |
---|---|
NUXT_CF_ACCOUNT_ID | Votre ID cloudflare |
NUXT_CF_API_TOKEN | Votre ID API |
NUXT_SITE_TOKEN | Mot de passe pour accèder à sink |
Redéployez le Projet
Il ne vous reste plus qu’à accéder à votre tableau de bord déployé, raccourcir un lien via l’interface, le personnaliser avec un slug, le diffuser, puis consulter les analyses pour suivre les clics et l’engagement.