SPB Git

spb/sorti-ka

Public

Toutes les sorties et tous les événements du Québec, un seul endroit — 7 connecteurs, fiches SSR, design Groupe KA.

État du nœud — MAJ README ; gitignore *.log (logs de backfill)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Simon-Pierre Boucher committed (Aug 17, 2026) parent cffbfc5 Browse files

4 changed files +4 −7

modified .gitignore +1 −0
@@ -11,3 +11,4 @@ __pycache__/
11 .pytest_cache/ 11 .pytest_cache/
12 .venv/ 12 .venv/
13 .DS_Store 13 .DS_Store
14+*.log
modified README.md +3 −7
@@ -23,8 +23,7 @@
23 ![Connecteurs](https://img.shields.io/badge/connecteurs_actifs-8-1c5c41?style=flat-square) 23 ![Connecteurs](https://img.shields.io/badge/connecteurs_actifs-8-1c5c41?style=flat-square)
24 ![Régions](https://img.shields.io/badge/r%C3%A9gions-17%2F17-1c5c41?style=flat-square) 24 ![Régions](https://img.shields.io/badge/r%C3%A9gions-17%2F17-1c5c41?style=flat-square)
25 ![Villes](https://img.shields.io/badge/villes-428-1c5c41?style=flat-square) 25 ![Villes](https://img.shields.io/badge/villes-428-1c5c41?style=flat-square)
26−![Tests](https://img.shields.io/badge/tests-22_pass-1c5c41?style=flat-square) 26+![Tests](https://img.shields.io/badge/tests-19_pass-1c5c41?style=flat-square)
27−![KA ID](https://img.shields.io/badge/connexion-KA_ID-141814?style=flat-square&logoColor=d9f26b)
28 27
29 *Agrégateur indépendant de sorties & événements — concerts, festivals, spectacles, 28 *Agrégateur indépendant de sorties & événements — concerts, festivals, spectacles,
30 expositions, sport, famille — dans les 17 régions administratives du Québec, avec 29 expositions, sport, famille — dans les 17 régions administratives du Québec, avec
@@ -80,7 +79,6 @@ architecture calquée sur le patron de référence Lou·Ka.
80 | **Dédup** | empreinte titre + ville + date : un même concert publié par 3 sources = **une carte**, la fiche la plus riche gagne | `schema.dedup_key()` + `web.py` | 79 | **Dédup** | empreinte titre + ville + date : un même concert publié par 3 sources = **une carte**, la fiche la plus riche gagne | `schema.dedup_key()` + `web.py` |
81 | **API + SSR** | recherche/filtres JSON, fiches `/evenement/{uid}` servies avec `<head>` unique + **JSON-LD Event**, robots, sitemaps | `sortika/web.py` + `sortika/seo.py` | 80 | **API + SSR** | recherche/filtres JSON, fiches `/evenement/{uid}` servies avec `<head>` unique + **JSON-LD Event**, robots, sitemaps | `sortika/web.py` + `sortika/seo.py` |
82 | **Frontend** | SPA sans build, routeur History API, design system **Groupe KA « éditorial sharp »** | `frontend/index.html` | 81 | **Frontend** | SPA sans build, routeur History API, design system **Groupe KA « éditorial sharp »** | `frontend/index.html` |
83−| **Comptes** | « Se connecter avec KA » — SSO **KA ID** du hub groupe-ka.com (jeton HS256, secret partagé, profil dicté par le hub) | `sortika/auth.py` |
84 82
85 ## Les 8 connecteurs actifs 83 ## Les 8 connecteurs actifs
86 84
@@ -102,14 +100,13 @@ Repentigny (2021) — consignées au registre `data/sources.json` avec leur stat
102 100
103 ```bash 101 ```bash
104 python3 -m venv .venv && .venv/bin/pip install -r requirements.txt 102 python3 -m venv .venv && .venv/bin/pip install -r requirements.txt
105−.venv/bin/python -m pytest tests/ -q # 22 tests (fixtures réelles, zéro réseau) 103+.venv/bin/python -m pytest tests/ -q # 19 tests (fixtures réelles, zéro réseau)
106 .venv/bin/python run.py sync # ingestion des 8 sources 104 .venv/bin/python run.py sync # ingestion des 8 sources
107 .venv/bin/python run.py web --port 8120 # API + frontend + SSR 105 .venv/bin/python run.py web --port 8120 # API + frontend + SSR
108 .venv/bin/python run.py watch --interval 3600 # boucle d'ingestion horaire 106 .venv/bin/python run.py watch --interval 3600 # boucle d'ingestion horaire
109 ``` 107 ```
110 108
111−Secrets `.env` : `SCRAPFLY_API_KEY` (Atuvu), `KA_SSO_SECRET` + `SESSION_SECRET` + 109+Secrets : `SCRAPFLY_API_KEY` dans `.env` (requis seulement pour Atuvu).
112−`SORTIKA_BASE_URL` (connexion KA ID — secret partagé avec le hub groupe-ka.com).
113 110
114 ## API 111 ## API
115 112
@@ -118,7 +115,6 @@ Secrets `.env` : `SCRAPFLY_API_KEY` (Atuvu), `KA_SSO_SECRET` + `SESSION_SECRET`
118 | `GET /api/events` | recherche — `q`, `region`, `city`, `category`, `free`, `from`, `to`, `sort`, pagination ; dédupliquée inter-sources | 115 | `GET /api/events` | recherche — `q`, `region`, `city`, `category`, `free`, `from`, `to`, `sort`, pagination ; dédupliquée inter-sources |
119 | `GET /api/events/{uid}` | fiche complète d'un événement | 116 | `GET /api/events/{uid}` | fiche complète d'un événement |
120 | `GET /api/stats` | volumes par région et par catégorie | 117 | `GET /api/stats` | volumes par région et par catégorie |
121−| `GET /api/auth/ka/login` · `/api/me` | connexion **KA ID** (SSO groupe-ka.com), profil membre |
122 | `GET /api/sources` | registre des sources + événements actifs + dernière synchro | 118 | `GET /api/sources` | registre des sources + événements actifs + dernière synchro |
123 | `GET /evenement/{uid}` | fiche HTML SSR (title/og/canonical + **JSON-LD Event**) | 119 | `GET /evenement/{uid}` | fiche HTML SSR (title/og/canonical + **JSON-LD Event**) |
124 | `GET /sitemap.xml` · `/robots.txt` | référencement | 120 | `GET /sitemap.xml` · `/robots.txt` | référencement |
added data/sortika.db-shm +0 −0

Binary file not shown.

added data/sortika.db-wal +0 −0

Binary file not shown.

Menu

Theme