Skip to content

cdrclbrs/livequish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Live Tracker – "You've been Quished!"

test de Cloudflare Worker avec Durable Object qui affiche un QR code interactif et des statistiques temps réel sur les visiteurs (FAI, OS, navigateurs, total des accès).

Ce projet illustre comment utiliser les Workers Cloudflare pour collecter et diffuser des données dynamiques sans serveur externe. Il montre, en direct, ce qui se passe quand on scanne un QR code ou clique sur un lien inconnu.

Objectif : faire ressentir concrètement que derrière un simple geste, on expose déjà beaucoup d’informations — adresse IP, FAI, système, navigateur…

Une démonstration simple, visuelle et marquante pour rappeler qu’en cybersécurité, la curiosité est parfois le premier vecteur de risque.

Demo Screenshot


Features

  • Affichage central d’un QR code vers https://quish.securitydomains.cloud/
  • Compteurs en temps réel (WebSocket + Durable Object)
  • Total des accès
  • Top 4 FAI / ISP
  • Top 4 OS
  • Top 4 Navigateurs
  • Vue des OS & navigateurs à partir du User-Agent
  • ajout de fonction **Reset ** via /reset?code=SECRET

Mode de fonctionnement

Navigateur ──GET /────────────┐
            └─WS /ws──────────┼─ Worker (edge) ─► Durable Object (StatsRoom)
                                │       ▲
            └─XHR /stats───────┘       │ persistance + agrégation
                                        │
                                stockage Durable Object ("stats")

La partie XHR est un mecanisme (ajax) pour permettre a la page web de continuer de communiquer avec le serveur sans refresh de la page


Prérequis

  • Node.js
  • Wrangler
  • Un domaine sur votre instance Cloudflare
  • Un accès au tableau de bord Cloudflare avec Workers & Durable Objects activés

Install

# Cloner le dépôt
git clone https://github.com/cdrclbrs/livequish.git
cd livequish

# Installer wrangler 
npm install -g wrangler
wrangler login

Configuration sur Cloudflare

wrangler.toml

name = "<projectname>"
main = "worker.mjs"
compatibility_date = "2025-08-01"
[[routes]]
pattern = "quish.securitydomains.cloud/*"
zone_name = "securitydomains.cloud"

[durable_objects]
bindings = [
  { name = "STATS_ROOM", class_name = "StatsRoom" }
]

[[migrations]]
tag = "v1"
new_sqlite_classes = ["StatsRoom"]

Variables & Secrets

Ajoutez le secret pour le reset sécurisé :

wrangler secret put RESET_CODE
# → entrez votre code (ex : 76636636363643432)

Déploiement sur CF

wrangler deploy

Acces :

👉 https://quish.securitydomains.cloud/


📊 Endpoints

Méthode Chemin Description
GET /reset?code=XXXX Réinitialise les stats

Licence

Projet librement réutilisable à des fins d’apprentissage et de démonstration Cloudflare Workers.


démonstrations CF / cybersécurité.

About

Show en direct,de ce qui se passe quand on scanne un QR code

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published