makinacorpus/accessimap-lecteur-der

Name: accessimap-lecteur-der

Owner: Makina Corpus

Description: Lecteur de documents en relief interactif (DERi)

Created: 2016-01-18 16:18:10.0

Updated: 2017-12-03 14:06:33.0

Pushed: 2018-01-18 11:17:23.0

Homepage: http://makinacorpus.github.io/accessimap-lecteur-der

Size: 126522

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Ce projet a déménagé !
Merci d'aller sur https://gitlab.com/makinacorpus/accessimap/accessimap-lecteur-der

Accessimap - Lecteur de documents en relief

Build Status

Ce projet fait parti du projet de recherche Accessimap.

Le lecteur de documents en relief est relié au projet de l'éditeur.

Télécharger le lecteur

Pour télécharger la dernière version, merci d'aller à la page de la dernière release.

Contribuer

Pour contribuer, merci de chercher si une issue github n'a pas déjà été ouverte (et/ou fermée).

Dans le cas contraire, ouvrez une issue et/ou proposez une PR.

Détails du projet

Le Lecteur de Document En Relief (DER Reader) est un module pouvant fonctionner sur différentes plateformes.

Il se décline ici avec Cordova et Electron. Chacun de ces projets utilisent des services spécifiques pour le TTS (Talk To Speech) qui doivent être fournis à l'utilisation du module der-reader.

Pour pouvoir utiliser une base commune entre la version windows et la version mobile, le coeur du projet se trouve dans un module appelé der-reader.

Développement

Lancer le script du module der-reader

odules/der-reader
install
start

Dans une console différente, lancer le script pour démarrer electron

lectron
install
start
Explications techniques
modules/der-reader

Le module est utilisé dans electron et cordova pour initialiser le module der-reader avec la configuration adéquate :

eader.init({
der: {
    svgFile: './der/carte_avec_source.svg',
    jsonFile: './der/interactions.json'
}

modules/*.tts

Selon les plateformes, cordova a besoin du plugin cordova-tts alors que electron sait gérer l'API HTML Web Speech.

Chaque implémentation de ces services se trouve dans un module intépendant de der-reader, il faut donc les charger, et indiquer le service tts à utiliser en paramètre de l'initialisation de der-reader.

On charge de la même manière que der-reader le module souhaité, soit pour Electron :

eader.init({
der: {
    svgFile: './der/carte_avec_source.svg',
    jsonFile: './der/interactions.json'
},
tts: webspeechapi

electron

Lors du développement de der-reader, changer le chemin des modules pour éviter de devoir effectuer un npm install pour mettre à jour le module à chaque modification. Ne pas oublier de remettre le bon chemin lors du build.

ev
webspeechapi = require('./../tts.webspeechapi/tts.webspeechapi.js');
DerReader = require('./../der-reader/der-reader.js');

undle
ar webspeechapi = require('tts.webspeechapi');
ar DerReader = require('der-reader');

Builder l'application (pour Windows x64, cf. script npm pour d'autres paramètres/os).

Nécessite wine, cf. .travis.yml pour installer les dépendances.

install der-reader # mettre à jour le module
run build
cordova
ordova/www
install
ova prepare
ova run android
Comment générer automatiquement les builds ?

Ce projet est câblé à Travis CI.

A chaque nouveau commit, travis vérifiera que le build pour electron se construit correctement.

Pour ajouter ces builds aux releases, il faut créer une nouvelle release en respectant le Semantic Versioning.

Au préalable, il nous paraît utile et important de mettre à jour les versions des package.json des modules der-reader (et les autres s'ils ont changé), des répertoires electron et cordova/www. Les builds produits par electron disposent de la version npm.

Travis déclenchera à nouveau un build electron, et attachera les résultats (zip pour windows, AppImage pour Linux) à la dernière release créée.

[/archives] Expérimentations réalisées

Plusieurs expérimentations ont été réalisées afin de trouver la meilleure stack de développement.

Ces expérimentations sont désormais dans le répertoire 'archives'.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.