reelmimic
Show it a video you love. Get a new video in the same style. An AI crew (Claude Code or Codex) plans, builds and reviews it with you.
Télé-prompteur pour créateurs de contenu : texte défilant sur la caméra ou pendant un enregistrement audio, 100 % hors ligne.
Translation pending
MediaJavaScript · HTMLGitHub @FerrusDantiochOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Télé-prompteur pour créateurs de contenu : application web installable et hors ligne, modes Vidéaste et Podcast
Translation pending
Loading the full README.
Read the full README ↗▶ Utiliser l'application en ligne : https://ferrusdantioch.github.io/omni-prompteur/
Le télé-prompteur des créateurs de contenu. Votre texte défile à l'écran pendant que vous filmez ou enregistrez votre voix, sans jamais quitter l'application.
Omni-Prompteur est une application web installable (PWA) : elle s'installe sur un téléphone ou un ordinateur comme une application classique, fonctionne entièrement hors connexion après la première visite et n'envoie aucune donnée sur Internet.
| Mode Vidéaste | Mode Podcast | |
|---|---|---|
| Source | Caméra avant ou arrière + micro | Micro seul |
| Affichage | Texte en surimpression sur l'aperçu caméra | Texte sur fond sombre, vumètre |
| Enregistrement | Vidéo (WebM) | Audio (WebM, conversion .wav possible) |
| Particularités | Bouton pour masquer le texte pendant le cadrage, aperçu miroir, cadrage exact | Défilement synchronisé avec l'enregistrement |
Dans les deux modes :
[comme ceci], s'affichent en couleur atténuée : idéal
pour les indications de jeu ([pause], [sourire]…).# (dièse puis espace), comme
# Introduction, marque le début d'une partie. Pendant la lecture, le nom de la
section en cours s'affiche, la barre de progression montre où commence chacune, et
le panneau des réglages rapides permet de sauter directement à l'une d'elles..json, et restauration sur
le même appareil ou sur un autre. La restauration n'écrase jamais rien : un script
déjà présent mais modifié depuis est gardé en double, avec la mention « (sauvegarde) ».Vitesse en mots par minute (modifiable pendant la lecture), taille, police (6 choix dont deux conçues pour la lisibilité et une pour la dyslexie), gras, couleur du texte, couleur et opacité du fond, alignement, largeur de la zone de texte, repère de lecture et sa hauteur, texte en miroir (pour prompteur à vitre réfléchissante). Un aperçu en direct montre le résultat.
Liste des vidéos et des fichiers audio, avec relecture, renommage, téléchargement, partage direct vers une autre application (sur téléphone), conversion en .wav pour l'audio et suppression. Un enregistrement interrompu brutalement (batterie vide, application fermée) est récupéré au démarrage suivant.
index.html) interdit
techniquement au navigateur de contacter toute autre adresse que le site lui-même.Les navigateurs n'autorisent la caméra, le micro et le mode hors ligne que sur une
adresse sécurisée (https://) ou sur http://localhost, jamais sur un fichier ouvert
par double-clic. Un petit serveur sans dépendance est fourni (Node.js requis) :
node serveur-local.js
Puis ouvrir http://localhost:5190. N'importe quel autre serveur de fichiers statiques convient aussi.
Par sécurité, ce serveur ne répond qu'à l'ordinateur sur lequel il tourne : les autres
appareils du réseau ne peuvent pas lire les fichiers. Pour un essai volontaire depuis
un autre appareil (texte seulement, la caméra exigeant https://) :
HOTE=0.0.0.0 node serveur-local.js.
L'application est publiée avec GitHub Pages, depuis la branche main (dossier
racine) : https://ferrusdantioch.github.io/omni-prompteur/.
Chaque envoi sur main met le site à jour en moins d'une minute.
Tous les chemins sont relatifs : l'application fonctionne aussi bien dans un sous-dossier qu'à la racine d'un domaine, sans rien modifier.
Comme toute application web, les fichiers servis (HTML, CSS, JavaScript) sont lisibles par les personnes qui ouvrent l'application. Leur modification et leur réutilisation dans un but commercial restent interdites : voir la section Licence.
| Action | Tactile | Clavier / télécommande |
|---|---|---|
| Lecture / pause du texte | Toucher le texte | Espace ou K |
| Avancer / reculer | Glisser le texte du doigt, boutons ⌄ ⌃ | ↓ ↑ (une ligne), Page suivante / Page précédente ou → ← (trois lignes) |
| Retour au début | Bouton ⏮ | Début |
| Section suivante / précédente | Réglages rapides → « Aller à une section » | S / P |
| Vitesse | Boutons + et − | + et − |
| Masquer le texte (Vidéaste) | Bouton œil | M |
| Plein écran | Bouton plein écran | F |
| Quitter | Bouton ← | Échap |
Les télécommandes Bluetooth de présentation, qui envoient les touches « page » ou les flèches, fonctionnent directement.
| Navigateur | Vidéo | Audio |
|---|---|---|
| Chrome, Edge, Android | WebM (VP8 + Opus) | WebM (Opus), conversion .wav proposée |
| Firefox | WebM | WebM |
| Safari (si WebM indisponible) | MP4 (H.264 + AAC) | MP4 (AAC) |
index.html structure des écrans, icônes (SVG) et boîtes de dialogue
styles.css présentation : couleurs, mise en page, prompteur, adaptations mobiles
app.js tout le fonctionnement, en 17 sections commentées
sw.js service worker : copie hors ligne et mises à jour
manifest.json fiche d'identité de l'application (nom, icônes, couleurs)
icons/ icônes (icon.svg est la source des PNG)
fonts/ polices intégrées (.woff2) et leurs licences
libs/pdfjs/ pdf.js (lecture des PDF) et sa licence
serveur-local.js petit serveur de test, facultatif (non utilisé en ligne)
.claude/launch.json configuration du serveur de test (outil de développement)
LICENSE licence CC BY-NC-ND 4.0 : ni vente ni modification
Aucune dépendance à installer, aucune étape de compilation.
⚠️ Après toute modification d'un fichier mis en cache (index.html, styles.css,
app.js, manifest.json, icons/, fonts/, libs/), incrémenter la version
en haut de sw.js :
const VERSION = 'omni-prompteur-v8'; // → v9, v10…
Sans cela, les personnes ayant déjà ouvert l'application continuent de voir
l'ancienne version. Un fichier ajouté doit aussi être inscrit dans la liste FICHIERS
du même fichier. Côté utilisateur, un bandeau « Une nouvelle version est disponible »
apparaît alors, et la mise à jour s'applique quand il le décide (jamais pendant un
enregistrement).
npm pack pdfjs-dist@<version>
Extraire l'archive, puis copier legacy/build/pdf.min.mjs et
legacy/build/pdf.worker.min.mjs dans libs/pdfjs/ (sans oublier d'incrémenter la
version du service worker). La version « legacy » est utilisée pour sa compatibilité
avec davantage de navigateurs.
Les tests ouvrent l’application dans un vrai navigateur, font les gestes d’une personne et vérifient le résultat, y compris sans internet. Ils ne contactent aucun site. Ils ne servent qu’au développement : l’application n’en a pas besoin pour fonctionner.
Il faut Node.js (version 22 ou plus récente), puis, une seule fois, dans le dossier de l’application :
npm install playwright
npx playwright install chromium
Ensuite, à chaque fois :
node tests/tester.js
Le bilan s’affiche à la fin : « Échecs : 0 » veut dire que tout va bien.
Conçue en priorité pour Chrome sur Android, et testée pour fonctionner sur les navigateurs récents d'ordinateur (Chrome, Edge, Firefox, Safari). Les fonctions suivantes dépendent du navigateur et se désactivent proprement si elles manquent : partage de fichiers, maintien de l'écran allumé, verrouillage de l'orientation, plein écran (non disponible sur iPhone), installation.
Toutes sont sous licence permissive, compatible avec un usage commercial.
| Élément | Version | Licence | Emplacement |
|---|---|---|---|
| pdf.js (Mozilla) | 6.3.289, build « legacy » | Apache 2.0 | libs/pdfjs/ (licence : LICENSE) |
| Atkinson Hyperlegible Next (Braille Institute) | Fontsource 5.3.0 | SIL OFL 1.1 | fonts/ |
| Lexend | Fontsource 5.3.0 | SIL OFL 1.1 | fonts/ |
| Literata | Fontsource 5.3.0 | SIL OFL 1.1 | fonts/ |
| Roboto Mono | Fontsource 5.3.0 | SIL OFL 1.1 | fonts/ |
| OpenDyslexic | Fontsource 5.3.0 | SIL OFL 1.1 | fonts/ |
Les textes complets des licences des polices sont dans fonts/licences/. La licence
OFL autorise l'intégration des polices dans une application commerciale ; elle interdit
seulement de vendre les polices seules.
Les icônes et l'interface ont été créées spécifiquement pour ce projet.
© 2026 Ferrus Dantioch — Creative Commons BY-NC-ND 4.0 (résumé de la licence en français)
En clair : le partage est autorisé, à l'identique et en citant l'auteur ; l'usage commercial est interdit ; la modification et les œuvres dérivées sont interdites. Le logiciel est fourni « en l'état », sans aucune garantie.
Texte complet dans le fichier LICENSE : le texte officiel en anglais, suivi de la traduction française officielle publiée par Creative Commons.
L'application en ligne reste libre d'utilisation. Les composants tiers (pdf.js et les polices) conservent leur propre licence, indiquée plus haut.