Aller au contenu principal

Reproduire nos données

Diogène testant les benchmarks Pithos

Chaque chiffre sur ces pages de comparaison est auto-généré depuis les sources.

Si, comme Diogène, vous ne faites confiance à aucune affirmation sans vérification, voici tout ce qu'il vous faut pour vérifier les nôtres.

Benchmarké sur MacBook Pro 2023 (M2 Pro), 32 Go RAM, macOS 26.2, branché sur secteur. Les résultats sur batterie montrent des différences relatives similaires.

Installation

Clonez le dépôt et installez les dépendances :

git clone https://github.com/mopi1402/pithos.git
cd pithos
pnpm install
CLI interactif

Pithos inclut un CLI interactif qui vous permet de parcourir et exécuter toutes les commandes de benchmark et de génération depuis un menu visuel :

pnpm cli

Naviguez avec les flèches, sélectionnez une commande et exécutez-la directement.

Taille de bundle

Mesurez n'importe quel import manuellement avec esbuild :

# Fonction unique
echo 'import { chunk } from "pithos/arkhe/array/chunk"' | \
esbuild --bundle --minify | gzip -c | wc -c

# Schéma Kanon
echo 'import { string, object, parse } from "pithos/kanon"' | \
esbuild --bundle --minify | gzip -c | wc -c

Régénérez les données de comparaison complètes utilisées dans les pages de comparaison de taille de bundle avec ces commandes :

# Tailles de bundle Arkhe & Taphos
pnpm doc:generate-arkhe-taphos-bundle-sizes

# Tailles de bundle Kanon
cd packages/main/website
npx tsx scripts/generate-bundle-data.ts

# Tailles de bundle Zygos
pnpm doc:generate-zygos-bundle-sizes

Benchmarks de performance

Exécutez les benchmarks par module :

# Arkhe
pnpm benchmark:arkhe
pnpm doc:generate:arkhe:benchmarks-results

# Kanon
pnpm benchmark:kanon realworld all

# Taphos
pnpm benchmark:taphos
pnpm doc:generate:taphos:benchmarks-results

# Zygos
pnpm benchmark:zygos
pnpm doc:generate:zygos:benchmarks-results

Environnement

Les résultats peuvent varier selon votre matériel et votre version de Node.js. Nos données publiées sont générées dans un environnement cohérent pour garantir des comparaisons équitables entre les bibliothèques.


Voir les résultats