Développement

kikx se compose de trois paquets Cargo et d’une application Next.js. Chacun se construit et se teste de façon indépendante.

Avant de commencer

Il vous faut :

  • une copie locale du dépôt kikx ;

  • une chaîne d’outils Rust (cargo, clippy, rustfmt) ;

  • Node.js avec npm ;

  • Python 3, pour construire la documentation.

Vérifier les paquets Rust

Lancez les tests, clippy et rustfmt dans chaque paquet :

cd cli && cargo test && cargo clippy --all-targets -- -D warnings && cargo fmt --check
cd backend && cargo test && cargo clippy --all-targets -- -D warnings && cargo fmt --check
cd backend/core && cargo test && cargo clippy --all-targets -- -D warnings && cargo fmt --check

Les tests se trouvent dans le répertoire tests/ de chaque paquet, jamais dans les fichiers source.

Vérifier le tableau de bord

cd web
npm install
npx tsc --noEmit
npm run lint
npm run build

Construire la documentation

La documentation est construite avec Sphinx à partir de docs/. Installez une fois les dépendances épinglées :

pip install -r docs/requirements.txt

Construisez ensuite les sites anglais et français. Les deux traitent les avertissements comme des erreurs :

make -C docs html
make -C docs html-fr

Après avoir modifié une page anglaise, mettez à jour les catalogues français dans docs/locales/fr/ et traduisez les nouvelles entrées :

make -C docs update-po

Pour reconstruire à chaque enregistrement pendant que vous écrivez :

make -C docs serve

Voir aussi