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