Skip to content
/ Ara Public

Permettre aux expert·es en accessibilité numérique de faire des audits de conformité au RGAA, partager les rapports et la déclaration d’accessibilité.

Notifications You must be signed in to change notification settings

DISIC/Ara

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ara

Ara est une plateforme web basée sur le référentiel général d'amélioration de l'accessibilité (RGAA) qui permet aux auditeur et auditrices de :

  • réaliser leurs audits d'accessibilité numérique en ligne,
  • générer automatiquement les rapports de ces audits ainsi que les déclarations d'accessibilité.

Warning

Ara n’audite pas automatiquement votre site.

Organisation du code

Ce projet est organisé en monorepo (voir Monorepo - Wikipedia).
Les espaces de travail (workspaces) sont :

Prérequis

  • Environnement d'exécution JavaScript (JavaScript runtime environment) :
    Node.js version 22.14.0
  • Gestionnaire de paquets (Package manager) :
    Yarn 4 (Modern) version 4.9.2
  • Conteneurisation :
    Docker

Installation

Une seule commande pour :

  • installer toutes les dépendances : backend + frontend
  • générer les fichiers requis du RGAA (critères et tests et méthodologies)
  • générer les types de l’API
yarn install

Important

Il faut aussi suivre les étapes d’installation du backend.

Développement

Une seule commande pour lancer les 2 serveurs backend et frontend en local en parallèle :

yarn dev

Note

Les logs du backend et du frontend sont alors affichés dans la même session shell.

Tip

Appuyer sur la touche "o" (open) pour ouvrir Ara en local dans un navigateur.

ESLint, l’utilitaire de lint et de formatage du code

ESLint est utilisé à la fois pour l’analyse statique du code et le formatage stylistique (indentation, etc.). Pour les fichiers non pris en charge par ESLint (CSS, HTML, Markdown, etc), ESLint utilise Prettier en tant qu’outil de formatage externe. Nous utilisons la configuration ESLint d’Anthony Fu comme base. Voir aussi la configuration de ce projet : eslint.config.mjs

Une vue de l’ensemble des règles de lint est disponible en exécutant à la racine du projet :

yarn dlx @eslint/config-inspector

On peut linter l’ensemble du projet en exécutant, à la racine du projet :

yarn lint

On peut linter et corriger les erreurs corrigeables automatiquement avec :

yarn lint --fix

Éditeur de code VSCodium / VS Code

Sont disponibles sur ce projet :

  • un paramètrage par défaut qui améliore l’expérience de développement :
    • lint et formatage automatique à la sauvegarde des fichiers ;
    • on ne tient pas compte des règles stylistiques dans l'IDE, mais on continue à les corriger automatiquement.
  • des tâches pour linter l’ensemble du projet (voir Integrate with External Tools via Tasks) :
    • "Lint entire project"
    • "Lint + fix entire project"
    • "TypeScript: show all errors" pour les erreurs TypeScript non relevées par ESLint

Déploiement

  • La branche principale main correspond à l’environnement de production.
  • Les branches de pull request (PR) correspondent à l’environnement de développement.

Environnement de développement

Le frontend est automatiquement déployé sur Heroku :

Pour réinitialiser la base de données :

DATABASE_URL="<url_de_la_base_de_donnees_de_developpement>" yarn prisma migrate reset

Environnement de production

Important

Avant de déployer sur l’environnement de production, s’assurer que son adresse IP est whitelistée sur OVH.

Pour lancer les migrations de la base de données sur OVH :

DATABASE_URL="<url_de_la_base_de_donnees_de_production>" yarn prisma migrate deploy

About

Permettre aux expert·es en accessibilité numérique de faire des audits de conformité au RGAA, partager les rapports et la déclaration d’accessibilité.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 13