Affichage de données pouvant provenir de différentes sources (fichier, API...) avec différents formats (CSV, JSON, HTML...) et possibilité de trier, filtrer ou encore paginer les données. https://freedatas2html.le-fab-lab.com
Go to file
Fab_Blab 5f3f5b88d3 Mise à jour de 'README.md'
Plus de détails sur le projet.
2021-08-14 18:57:14 +02:00
public Modification de la première page d'exemple d'utilisation du projet et des fichiers liés. 2021-08-13 20:00:03 +02:00
src Modification de la première page d'exemple d'utilisation du projet et des fichiers liés. 2021-08-13 20:00:03 +02:00
tests Ajout possibilité de tout stopper à la moindre erreur rencontrée par le parseur + suppression des noms de colonne vide pouvant être reçus. 2021-08-12 18:38:09 +02:00
.gitignore Ajout du fichier .gitignore 2021-08-05 18:22:01 +02:00
LICENSE Initialisation du projet 2021-08-05 11:05:05 +02:00
README.md Mise à jour de 'README.md' 2021-08-14 18:57:14 +02:00
karma.conf.js Réintégration de chromium + revue affichage des logs de tests. 2021-08-12 10:49:00 +02:00
package-lock.json Initialisation du projet 2021-08-05 11:05:05 +02:00
package.json Modification du nom et de la description du projet, ainsi que du répertoire Git. 2021-08-13 19:57:01 +02:00
tsconfig.json Initialisation du projet 2021-08-05 11:05:05 +02:00
webpack.config.js Initialisation du projet 2021-08-05 11:05:05 +02:00

README.md

freeDatas2HTML

Affichage et manipulation de listes données côté client en TypeScript/JavaScript.

Le projet

Des données sont déjà listées dans une page HTML ou sont accessibles via une API ou encore un fichier présent "localement". Ces données peuvent être stockées en CSV, JSON ou autres formats. Nous souhaitons pouvoir les afficher, filtrer, classer ou paginer en agissant uniquement côté client, sans nouvel appel à la source des données.

L'esprit est proche du projet DataTables, mais sans dépendances à jQuery.

Si le code source de freeDatas2HTML est écrit en TypeScript, une version compilée en JavaScript natif ("Vanilla") est disponible.

De même l'idée est de rester libre du rendu des données en n'imposant pas de CSS et en proposant les diverses fonctionnalités en options.

La première version

La première version se contente de récupérer et parser des données présentes dans un fichier CSV via un appel Ajax. Les données trouvées sont affichées dans un tableau. En option, des colonnes peuvent être indiquées par filtrer les données. Pour parser les données CSV, Papa Parse est utilisé.

Cette première version est fonctionnelle, même s'il reste à revoir le classement par ordre alphabétique des filtres pouvant poser un souci si des colonnes contiennent des nombres, des dates, etc. Toujours pour les filtres, il faudra prévoir le cas où plusieurs valeurs sont disponibles dans une même colonne (Exemple : liste de mots-clés) qui seront donc à extraire.

Ensuite ajouter la possibilité de classement sur certaines colonnes et la pagination, le tout en options, le développeur final devant pouvoir adapter le module à son besoin. Et puis s'attaquer aux autres sources/formats possibles pour les données...

Bref, il reste beaucoup de choses à faire !

Tests et exemples

L'utilisation de TypeScript élimine déjà pas mal d'erreurs. Le code est ensuite testé via Karma.js et Jasmine.js sur des navigateurs Firefox et Chromium. Un premier exemple d'utilisation est présent dans le répertoire "public".