docs: update README
This commit is contained in:
+150
-37
@@ -1,15 +1,15 @@
|
||||
= 🎬 kaubuntu.re - Plateforme Multimédia
|
||||
= 🎬 FEDIVERSE OKI - ORGANISATION KA INTERNATIONALE
|
||||
:toc: left
|
||||
:toc-title: Sommaire
|
||||
:toclevels: 3
|
||||
|
||||
🌍 *Une plateforme multimédia indépendante au service de la vision panafricaniste et indépendantiste réunionnaise*
|
||||
🌍 *Une plateforme multimédia indépendante*
|
||||
|
||||
== 📖 Description
|
||||
|
||||
kaubuntu.re est une interface web responsive qui permet de consulter et rechercher des vidéos hébergées sur une instance PeerTube. Il est également possible de suivre le fil du réseau social koze.kaubuntu.re (Mastodon). Développée par le mouvement politique *Ka-Ubuntu*, cette plateforme est conçue pour être légère, facilement déployable sur un serveur mutualisé, et optimisée pour les appareils mobiles et desktop.
|
||||
**FEDIVERSE OKI** est une interface web responsive qui permet de consulter et rechercher des vidéos hébergées sur une instance PeerTube. Il est également possible de suivre le fil du réseau social Mastodon. C'est le fork de https://codeberg.org/Ka-Ubuntu/kaubuntu.re[kaubuntu.re], développée par le mouvement politique *https://kaubuntu.com[Ka-Ubuntu]*. Cette plateforme est conçue pour être légère, facilement déployable sur un serveur mutualisé, et optimisée pour les appareils mobiles et desktop.
|
||||
|
||||
🎯 *Mission* : Offrir une alternative libre et décentralisée aux plateformes vidéo traditionnelles, en phase avec les valeurs d'indépendance et de souveraineté numérique défendues par Ka-Ubuntu.
|
||||
🎯 *Mission* : Offrir une alternative libre et décentralisée aux plateformes vidéo traditionnelles.
|
||||
|
||||
== ✨ Fonctionnalités
|
||||
|
||||
@@ -24,7 +24,7 @@ kaubuntu.re est une interface web responsive qui permet de consulter et recherch
|
||||
- 📡 Détection automatique d'état de connexion
|
||||
- 📊 Analytics intégré avec Plausible (respectueux de la vie privée)
|
||||
- 📰 *Intégration WordPress* : Affichage des articles depuis un site WordPress via REST API
|
||||
- 💝 *Système de dons* : Interface PayPal Me configurable pour collecter des dons
|
||||
- 💝 *Système de dons* : Support multi-plateformes (LiberaPay, Ko-fi, Stripe) avec dons ponctuels et récurrents
|
||||
- ⏰ *Système de countdown* : Page de lancement configurable avec compte à rebours multi-fuseaux
|
||||
- 📺 *Annonce du prochain live* : Affichage dynamique avec multi-fuseaux horaires et image personnalisable
|
||||
|
||||
@@ -157,7 +157,7 @@ Par défaut, le site utilise le fuseau horaire `Indian/Reunion`. Vous pouvez le
|
||||
----
|
||||
// Fuseau horaire par défaut pour l'affichage des dates
|
||||
// Liste des fuseaux disponibles : https://www.php.net/manual/fr/timezones.php
|
||||
define('DEFAULT_TIMEZONE', 'Indian/Reunion');
|
||||
define('DEFAULT_TIMEZONE', 'America/Guadeloupe');
|
||||
----
|
||||
|
||||
Cette configuration affecte :
|
||||
@@ -195,7 +195,7 @@ Vous pouvez personnaliser l'apparence de la plateforme en modifiant les fichiers
|
||||
|
||||
== 📝 Personnalisation du sitemap, robots.txt, webmanifest et mentions légales
|
||||
|
||||
Les fichiers `sitemap.xml`, `robots.txt`, `site.webmanifest` et `mentions-legales.php` contiennent des données spécifiques au domaine (`kaubuntu.re`). Pour les adapter à votre domaine :
|
||||
Les fichiers `sitemap.xml`, `robots.txt`, `site.webmanifest` et `mentions-legales.php` contiennent des données spécifiques au domaine (`bokantaj.o-k-i.net`). Pour les adapter à votre domaine :
|
||||
|
||||
. Copiez les fichiers samples pour créer vos propres versions :
|
||||
+
|
||||
@@ -213,21 +213,95 @@ cp mentions-legales.php.sample mentions-legales.php
|
||||
|
||||
Ces fichiers sont listés dans le `.gitignore` afin que vos modifications ne soient pas suivies par Git, ce qui vous permet de personnaliser votre instance sans affecter le code source principal.
|
||||
|
||||
== 📺 Annonce du prochain live
|
||||
== 📺 Section Hero : Direct et Playlists
|
||||
|
||||
kaubuntu.re intègre un système d'annonce configurable qui s'affiche automatiquement lorsqu'il n'y a pas de diffusion en direct en cours.
|
||||
FEDIVERSE OKI propose une section hero flexible et configurable en haut de la page d'accueil, pouvant afficher soit un direct PeerTube, soit une playlist audio/vidéo (PeerTube, Funkwhale, Castopod), soit être masquée complètement.
|
||||
|
||||
=== ✨ Fonctionnalités
|
||||
=== 🎯 Modes disponibles
|
||||
|
||||
La section hero supporte trois modes configurables via `HERO_TYPE` :
|
||||
|
||||
- *`live`* : Affiche le direct PeerTube s'il est actif, sinon affiche l'annonce du prochain live
|
||||
- *`playlist`* : Affiche une playlist embarquée (PeerTube, Funkwhale ou Castopod)
|
||||
- *`none`* : Masque complètement la section hero
|
||||
|
||||
=== ⚙️ Configuration
|
||||
|
||||
Ajoutez dans votre `config.local.php` :
|
||||
|
||||
[source,php]
|
||||
----
|
||||
// Type de contenu à afficher dans la section hero
|
||||
// Options: 'live', 'playlist', 'none'
|
||||
define('HERO_TYPE', 'playlist');
|
||||
|
||||
// === Configuration pour HERO_TYPE = 'live' ===
|
||||
define('LIVE_ACCOUNT_NAME', 'admin');
|
||||
|
||||
// === Configuration pour HERO_TYPE = 'playlist' ===
|
||||
|
||||
// Type de plateforme: 'peertube', 'funkwhale', 'castopod'
|
||||
define('PLAYLIST_PLATFORM', 'peertube');
|
||||
|
||||
// URL de base de la plateforme
|
||||
define('PLAYLIST_INSTANCE_URL', 'https://gade.o-k-i.net');
|
||||
|
||||
// ID de la playlist à afficher
|
||||
define('PLAYLIST_ID', 'b0f923b5-f8f6-4b5c-b167-6c4f0e04fd42');
|
||||
|
||||
// Titre de la playlist (optionnel)
|
||||
define('PLAYLIST_TITLE', 'Sélection OKI');
|
||||
|
||||
// Description de la playlist (optionnel)
|
||||
define('PLAYLIST_DESCRIPTION', 'Notre sélection de vidéos');
|
||||
----
|
||||
|
||||
=== 🎵 Exemples de configuration par plateforme
|
||||
|
||||
==== PeerTube (Playlist vidéo)
|
||||
|
||||
[source,php]
|
||||
----
|
||||
define('PLAYLIST_PLATFORM', 'peertube');
|
||||
define('PLAYLIST_INSTANCE_URL', 'https://gade.o-k-i.net');
|
||||
define('PLAYLIST_ID', 'b0f923b5-f8f6-4b5c-b167-6c4f0e04fd42');
|
||||
----
|
||||
|
||||
L'URL de la playlist sera : `https://gade.o-k-i.net/w/p/b0f923b5-f8f6-4b5c-b167-6c4f0e04fd42`
|
||||
|
||||
==== Funkwhale (Playlist audio)
|
||||
|
||||
[source,php]
|
||||
----
|
||||
define('PLAYLIST_PLATFORM', 'funkwhale');
|
||||
define('PLAYLIST_INSTANCE_URL', 'https://tanker.funkwhale.audio');
|
||||
define('PLAYLIST_ID', '12345');
|
||||
----
|
||||
|
||||
==== Castopod (Podcast)
|
||||
|
||||
[source,php]
|
||||
----
|
||||
define('PLAYLIST_PLATFORM', 'castopod');
|
||||
define('PLAYLIST_INSTANCE_URL', 'https://podcast.example.com');
|
||||
define('PLAYLIST_ID', '@nom-du-podcast');
|
||||
----
|
||||
|
||||
=== 📺 Annonce du prochain live (mode `HERO_TYPE = 'live'`)
|
||||
|
||||
Lorsque le mode est configuré sur `live`, le système affiche automatiquement une annonce configurable lorsqu'il n'y a pas de diffusion en direct en cours.
|
||||
|
||||
==== ✨ Fonctionnalités de l'annonce live
|
||||
|
||||
- 📅 *Date et heure dynamiques* : Génération automatique à partir de `NEXT_LIVE_DATE`
|
||||
- 🌍 *Multi-fuseaux horaires* : Affichage automatique pour 5 territoires (Ma'ohi Nui, Martinique/Guadeloupe, Guyane, France, Kanaky)
|
||||
- ⏰ *Décalage UTC* : Affichage du fuseau horaire de référence (UTC+04:00 pour La Réunion)
|
||||
- ⏰ *Décalage UTC* : Affichage du fuseau horaire de référence (UTC-04:00 pour La Guadeloupe)
|
||||
- 📅 *Indicateurs de jour* : Affichage des décalages de jour (+1j/-1j) si nécessaire
|
||||
- 🖼️ *Image personnalisable* : Support des formats Instagram (portrait 4:5, carré 1:1) et paysage (16:9)
|
||||
- 📱 *Responsive complet* : Layouts adaptés pour desktop (50/50), tablette (vertical), et mobile
|
||||
- 🔄 *Flexbox intelligent* : Réorganisation automatique des fuseaux horaires selon la largeur d'écran
|
||||
|
||||
=== ⚙️ Configuration
|
||||
==== ⚙️ Configuration de l'annonce live
|
||||
|
||||
Pour configurer l'annonce du prochain live, ajoutez dans votre `config.local.php` :
|
||||
|
||||
@@ -276,21 +350,22 @@ L'annonce calcule automatiquement les heures locales pour :
|
||||
- *France* - UTC+02:00
|
||||
- *Kanaky* (Nouvelle-Calédonie) - UTC+11:00
|
||||
|
||||
L'heure de référence (La Réunion, UTC+04:00) est affichée dans le badge principal.
|
||||
L'heure de référence (La Guadeloupe, UTC-04:00) est affichée dans le badge principal.
|
||||
|
||||
== 💝 Système de dons
|
||||
|
||||
kaubuntu.re intègre un système de dons configurable qui permet de collecter des contributions via PayPal Me.
|
||||
FEDIVERSE OKI intègre un système de dons moderne et flexible supportant plusieurs plateformes de paiement.
|
||||
|
||||
=== ✨ Fonctionnalités
|
||||
|
||||
- 💳 *PayPal Me intégré* : Redirection sécurisée vers votre compte PayPal
|
||||
- 🎯 *Montants prédéfinis* : Boutons rapides avec montants suggérés
|
||||
- ✍️ *Montant personnalisé* : Champ libre pour des dons de montant libre
|
||||
- 💳 *Multi-plateformes* : Support de LiberaPay, Ko-fi et Stripe
|
||||
- 🔄 *Dons ponctuels et récurrents* : Système d'onglets pour choisir le type de don (Stripe)
|
||||
- 🎯 *Montants prédéfinis* : Boutons rapides avec montants suggérés (1€, 5€, 10€, 20€, 50€)
|
||||
- 🎨 *Design moderne* : Interface élégante avec logos officiels des plateformes
|
||||
- 🔒 *Sécurisé* : Validation stricte des URLs et protection XSS
|
||||
- 📱 *Responsive* : Interface optimisée mobile et desktop
|
||||
- 🎨 *Intégré* : Design cohérent avec la charte graphique du site
|
||||
- ♿ *Accessible* : Conforme aux standards d'accessibilité
|
||||
- 🌙 *Mode sombre* : Support complet du thème sombre
|
||||
|
||||
=== ⚙️ Configuration
|
||||
|
||||
@@ -301,47 +376,89 @@ Pour activer le système de dons, ajoutez dans votre `config.local.php` :
|
||||
// Activer le système de dons
|
||||
define('DONATIONS_ENABLED', true);
|
||||
|
||||
// URL PayPal Me (sans le montant)
|
||||
define('PAYPAL_ME_URL', 'https://www.paypal.com/paypalme/votre-compte');
|
||||
// URLs des plateformes de don externes
|
||||
define('LIBERAPAY_URL', 'https://liberapay.com/votre-compte/donate');
|
||||
define('KOFI_URL', 'https://ko-fi.com/votre-compte');
|
||||
|
||||
// Activer les dons via Stripe
|
||||
define('STRIPE_ENABLED', true);
|
||||
|
||||
// Liens Stripe pour les dons ponctuels
|
||||
define('STRIPE_ONE_TIME_LINKS', [
|
||||
1 => 'https://buy.stripe.com/xxxxx', // Lien pour don de 1€
|
||||
5 => 'https://buy.stripe.com/xxxxx', // Lien pour don de 5€
|
||||
10 => 'https://buy.stripe.com/xxxxx', // Lien pour don de 10€
|
||||
20 => 'https://buy.stripe.com/xxxxx', // Lien pour don de 20€
|
||||
50 => 'https://buy.stripe.com/xxxxx', // Lien pour don de 50€
|
||||
'custom' => 'https://buy.stripe.com/xxxxx' // Lien pour montant personnalisé
|
||||
]);
|
||||
|
||||
// Liens Stripe pour les dons mensuels (récurrents)
|
||||
define('STRIPE_MONTHLY_LINKS', [
|
||||
1 => 'https://buy.stripe.com/xxxxx', // Lien pour don mensuel de 1€
|
||||
5 => 'https://buy.stripe.com/xxxxx', // Lien pour don mensuel de 5€
|
||||
10 => 'https://buy.stripe.com/xxxxx', // Lien pour don mensuel de 10€
|
||||
20 => 'https://buy.stripe.com/xxxxx', // Lien pour don mensuel de 20€
|
||||
50 => 'https://buy.stripe.com/xxxxx', // Lien pour don mensuel de 50€
|
||||
]);
|
||||
|
||||
// Montants suggérés (optionnel)
|
||||
define('DONATION_AMOUNTS', [5, 10, 20, 50, 100]);
|
||||
define('DONATION_AMOUNTS', [1, 5, 10, 20, 50]);
|
||||
|
||||
// Devise (optionnel, EUR par défaut)
|
||||
define('DONATION_CURRENCY', 'EUR');
|
||||
----
|
||||
|
||||
NOTE: Au moins une plateforme de don doit être configurée (LiberaPay, Ko-fi ou Stripe) pour que la page s'affiche.
|
||||
|
||||
=== 📄 Personnalisation
|
||||
|
||||
. Copiez le fichier sample pour créer votre page de dons :
|
||||
+
|
||||
[source,bash]
|
||||
----
|
||||
cp dons.sample.php dons.php
|
||||
cp dons.php.sample dons.php
|
||||
----
|
||||
|
||||
. Personnalisez le contenu en remplaçant les placeholders :
|
||||
* `[VOTRE ORGANISATION]` par le nom de votre organisation
|
||||
* `[VOTRE CAUSE]` par votre cause/mission
|
||||
* `[OBJECTIF X]` par vos objectifs spécifiques
|
||||
. Personnalisez le contenu directement dans `dons.php` :
|
||||
* Modifiez les textes dans les sections `<!-- PERSONNALISEZ -->`
|
||||
* Adaptez les objectifs listés à votre organisation
|
||||
* Ajustez les cartes d'information selon vos besoins
|
||||
|
||||
=== 🎯 Interface utilisateur
|
||||
|
||||
Une fois activé, le système de dons ajoute :
|
||||
|
||||
- 💝 *Icône cœur rouge* dans le header (sans cadre)
|
||||
- 💝 *Icône cœur rouge* dans le header
|
||||
- 📋 *Lien "Soutenir"* dans la sidebar
|
||||
- 📄 *Page dédiée* accessible via `/dons.php`
|
||||
|
||||
La page de dons affiche uniquement les plateformes configurées :
|
||||
|
||||
- *LiberaPay* : Bouton avec logo jaune officiel
|
||||
- *Ko-fi* : Bouton avec logo bleu officiel
|
||||
- *Stripe* : Interface avec onglets "Don ponctuel" / "Don mensuel"
|
||||
|
||||
=== 💳 Configuration Stripe
|
||||
|
||||
Pour configurer Stripe :
|
||||
|
||||
. Créez vos liens de paiement dans votre tableau de bord Stripe
|
||||
. Pour chaque montant (1€, 5€, 10€, 20€, 50€), créez :
|
||||
* Un lien de paiement ponctuel
|
||||
* Un lien d'abonnement mensuel (si souhaité)
|
||||
. Copiez les URLs générées dans votre `config.local.php`
|
||||
. Le lien `'custom'` permet de rediriger vers une page Stripe avec montant personnalisable
|
||||
|
||||
=== 🔒 Sécurité
|
||||
|
||||
Le système intègre plusieurs protections :
|
||||
|
||||
- ✅ *Validation URL PayPal* : Seules les URLs PayPal Me valides sont acceptées
|
||||
- ✅ *Validation des URLs* : Vérification que les plateformes sont bien configurées
|
||||
- ✅ *Protection XSS* : Échappement de toutes les sorties utilisateur
|
||||
- ✅ *Validation montants* : Contrôle des montants min/max
|
||||
- ✅ *Headers sécurisés* : CSP et autres headers de sécurité
|
||||
- ✅ *Ouverture sécurisée* : Liens avec `noopener noreferrer`
|
||||
- ✅ *Tokens CSRF* : Protection contre les attaques CSRF
|
||||
|
||||
== 🛡️ Configuration de sécurité Apache
|
||||
|
||||
@@ -402,7 +519,7 @@ Cette plateforme est une PWA complète offrant :
|
||||
|
||||
. 🔄 *Automatique* : Un bouton "Installer" apparaît dans le header lors de la première visite
|
||||
. 🔧 *Manuel* :
|
||||
* 🌐 *Chrome/Edge* : Menu → "Installer kaubuntu.re"
|
||||
* 🌐 *Chrome/Edge* : Menu → "Installer bokantaj.o-k-i.net"
|
||||
* 🍎 *Safari iOS* : Partager → "Ajouter à l'écran d'accueil"
|
||||
* 🦊 *Firefox Android* : Menu → "Installer"
|
||||
|
||||
@@ -441,9 +558,9 @@ Si vous souhaitez contribuer au développement:
|
||||
|
||||
== 📜 License
|
||||
|
||||
Copyright (C) 2025 Cédric Famibelle-Pronzola & *Ka-Ubuntu*
|
||||
Copyright (C) 2025 Cédric Famibelle-Pronzola & *ORGANISATION KA INTERNATIONALE*
|
||||
|
||||
NOTE: *Ka-Ubuntu* est un parti politique panafricaniste et indépendantiste réunionnais, œuvrant pour la souveraineté numérique et technologique de La Réunion dans une perspective panafricaniste.
|
||||
*ORGANISATION KA INTERNATIONALE* : Nous sommes une association à but non lucratif dédiée à la promotion de nos langues et au traitement de l'actualité. Parallèlement, nous proposons des alternatives aux géants du numérique comme les GAFAM, en privilégiant l'utilisation de logiciels libres.
|
||||
|
||||
=== 🇫🇷 FR
|
||||
|
||||
@@ -489,8 +606,4 @@ Les analytics sont automatiquement activés via le script Plausible intégré da
|
||||
|
||||
== 📞 Contact
|
||||
|
||||
Pour toute question ou suggestion concernant cette plateforme, veuillez nous contacter à mailto:multimedia@kaubuntu.re[multimedia@kaubuntu.re].
|
||||
|
||||
---
|
||||
|
||||
🌍 *Ka-Ubuntu* - _Pour une Réunion libre et souveraine dans l'unité panafricaniste_ ✊🏿
|
||||
Pour toute question ou suggestion concernant cette plateforme, veuillez nous contacter à mailto:kontak@o-k-i.net[kontak@o-k-i.net].
|
||||
|
||||
Reference in New Issue
Block a user