Skip to content

Releases: MXASoundNDEv/Algorith

Release 1.0.2

08 Jan 23:25
478b94c

Choose a tag to compare

[1.0.2] - 2026-01-09

Added

Algorithmes et Utilitaires

  • Fisher-Yates Shuffle - Algorithme de mélange aléatoire déterministe de tableaux
    • Fonction standalone fisherYatesShuffle() exportée
    • Support des générateurs aléatoires personnalisés (RNG)
    • Tests unitaires complets avec validation du déterminisme
    • Définitions TypeScript complètes

Améliorations Soundex

  • Support des cartes personnalisées - Possibilité de passer des mappings de caractères personnalisés
    • Paramètre customMap pour définir des encodages phonétiques spécifiques
    • Priorité donnée aux custom maps sur les maps de langue
    • Tests de validation des mappings personnalisés
  • Support multilingue étendu - Amélioration de la normalisation pour le français
    • Normalisation des caractères accentués (é, è, ê, à, ù, etc.)
    • Gestion du ç → s et œ → e
    • Mappings spécifiques français (F et V → 7 au lieu de 1)
    • Tests pour tous les cas de normalisation

Enhanced

  • Documentation README
    • Ajout d'un tableau de performance pour tous les algorithmes
    • Section "Fonctionnalités" complète avec toutes les capacités de la bibliothèque
    • Benchmarks détaillés (ops/s) pour petites, moyennes et grandes chaînes
    • Performance du RandomEngine avec toutes ses fonctions
  • Tests unitaires - 152 tests passant (amélioration de la couverture)
  • TypeScript - Définitions mises à jour pour fisherYatesShuffle et Soundex

Fixed

  • Soundex - Correction de la logique pour les custom maps
    • Le code de la première lettre est maintenant inclus uniquement avec customMap
    • Tests corrigés pour Alfred/Olivier avec mappings français
    • Conversion String() pour les codes numériques

📊 Performance Metrics

  Small strings: 0.011ms avg, 93476 ops/sec
  Medium strings: 0.011ms avg, 91485 ops/sec
  Large strings: 0.032ms avg, 31455 ops/sec
  Small strings: 0.002ms avg, 544230 ops/sec
  Medium strings: 0.001ms avg, 987899 ops/sec
  Large strings: 0.003ms avg, 352678 ops/sec
  Small strings: 0.002ms avg, 568868 ops/sec
  Medium strings: 0.001ms avg, 704979 ops/sec
  Large strings: 0.002ms avg, 533078 ops/sec
  Small strings: 0.000ms avg, 2279897 ops/sec
  Medium strings: 0.000ms avg, 2392350 ops/sec
  Large strings: 0.000ms avg, 5037047 ops/sec
  Small strings: 0.002ms avg, 414253 ops/sec
  Medium strings: 0.002ms avg, 443010 ops/sec
  Large strings: 0.004ms avg, 270646 ops/sec
  Small strings: 0.003ms avg, 380747 ops/sec
  Medium strings: 0.003ms avg, 306041 ops/sec
  Large strings: 0.004ms avg, 264327 ops/sec
  Small strings: 0.001ms avg, 922286 ops/sec
  Medium strings: 0.001ms avg, 1625267 ops/sec
  Large strings: 0.002ms avg, 528545 ops/sec
  Small strings: 0.001ms avg, 927216 ops/sec
  Medium strings: 0.001ms avg, 1878479 ops/sec
  Large strings: 0.002ms avg, 565388 ops/sec
compareAll: 0.020ms avg, 48806 ops/sec
uniform(): 0.000023ms avg, 43068993 ops/sec
int(1, 100): 0.000025ms avg, 39590711 ops/sec
bool(): 0.000035ms avg, 28938677 ops/sec
normal(0, 1): 0.000084ms avg, 11902628 ops/sec
exponential(1): 0.000051ms avg, 19491787 ops/sec
randomString(10): 0.001313ms avg, 761422 ops/sec
randomWord(5): 0.000763ms avg, 1310260 ops/sec
perlin1D(0.5): 0.000040ms avg, 24996588 ops/sec
whiteNoise(): 0.000033ms avg, 30411479 ops/sec

✅ Quality Assurance

  • All tests passing across Node.js 14, 16, 18, 20
  • Cross-platform compatibility (Linux, Windows, macOS)
  • Security audit passed
  • Performance benchmarks validated

Release 1.0.1

05 Aug 14:56
2e760ee

Choose a tag to compare

[1.0.1] - 2025-08-05

Added

Moteur d'Autocomplétion

  • AutocompleteEngine - Moteur d'autocomplétion basé sur la structure Trie
  • Support multi-langue - Dictionnaires français et anglais intégrés
  • API intuitive - Méthodes autocomplete(), search(), addWord(), addWords()
  • Performance optimisée - Structure Trie pour recherches O(m)
  • Dictionnaires extensibles - Format JSON pour faciliter l'ajout de langues
  • Tests unitaires complets - 174 tests couvrant tous les cas d'usage

Enhanced

  • Documentation - Exemples détaillés ajoutés dans README.md et EXAMPLES.md
  • TypeScript - Définitions complètes pour AutocompleteEngine
  • API Export - AutocompleteEngine exporté dans index.js

📊 Performance Metrics

  Small strings: 0.010ms avg, 101529 ops/sec
  Medium strings: 0.011ms avg, 95182 ops/sec
  Large strings: 0.032ms avg, 31492 ops/sec
  Small strings: 0.001ms avg, 818389 ops/sec
  Medium strings: 0.001ms avg, 1425542 ops/sec
  Large strings: 0.002ms avg, 584337 ops/sec
  Small strings: 0.001ms avg, 693262 ops/sec
  Medium strings: 0.002ms avg, 610691 ops/sec
  Large strings: 0.002ms avg, 624816 ops/sec
  Small strings: 0.000ms avg, 2265497 ops/sec
  Medium strings: 0.000ms avg, 2490395 ops/sec
  Large strings: 0.001ms avg, 1963587 ops/sec
  Small strings: 0.002ms avg, 449378 ops/sec
  Medium strings: 0.002ms avg, 460029 ops/sec
  Large strings: 0.003ms avg, 286133 ops/sec
  Small strings: 0.003ms avg, 388549 ops/sec
  Medium strings: 0.003ms avg, 339063 ops/sec
  Large strings: 0.004ms avg, 274571 ops/sec
  Small strings: 0.001ms avg, 876800 ops/sec
  Medium strings: 0.001ms avg, 1644404 ops/sec
  Large strings: 0.002ms avg, 551959 ops/sec
  Small strings: 0.001ms avg, 1189213 ops/sec
  Medium strings: 0.001ms avg, 1904080 ops/sec
  Large strings: 0.002ms avg, 596840 ops/sec
compareAll: 0.021ms avg, 48606 ops/sec
uniform(): 0.000026ms avg, 38189862 ops/sec
int(1, 100): 0.000026ms avg, 38610143 ops/sec
bool(): 0.000035ms avg, 28640181 ops/sec
normal(0, 1): 0.000084ms avg, 11924695 ops/sec
exponential(1): 0.000051ms avg, 19484077 ops/sec
randomString(10): 0.001314ms avg, 760940 ops/sec
randomWord(5): 0.000761ms avg, 1313700 ops/sec
perlin1D(0.5): 0.000039ms avg, 25675246 ops/sec
whiteNoise(): 0.000033ms avg, 30321720 ops/sec

✅ Quality Assurance

  • All tests passing across Node.js 14, 16, 18, 20
  • Cross-platform compatibility (Linux, Windows, macOS)
  • Security audit passed
  • Performance benchmarks validated

What's Changed

New Contributors

Full Changelog: v1.0.0...v1.0.1

Release 1.0.0

03 Aug 21:44

Choose a tag to compare

[1.0.0] - 2025-08-03

Added

Algorithmes de Similarité Textuelle

  • Levenshtein Distance - Distance d'édition normalisée
  • Jaro-Winkler Similarity - Algorithme optimisé pour les préfixes communs
  • Jaro Similarity - Version de base de l'algorithme Jaro
  • Hamming Distance - Distance caractère par caractère normalisée
  • Jaccard Similarity - Similarité basée sur les ensembles de caractères
  • Cosine Similarity - Similarité cosinus des vecteurs de fréquence
  • Dice Coefficient - Coefficient de Dice basé sur les bigrammes
  • Trigram Score - Score basé sur les trigrammes
  • Soundex Algorithm - Algorithme phonétique pour codes Soundex

Fonction Combinée

  • compareAll() - Compare avec tous les algorithmes en une fois

RandomEngine - Moteur de Génération Aléatoire

  • Générateur déterministe avec seed configurable
  • Fonctions de base : uniform(), int(), bool(), pick(), shuffle()
  • Distributions probabilistes :
    • Distribution normale (normal())
    • Distribution exponentielle (exponential())
    • Distribution de Poisson (poisson())
    • Distribution binomiale (binomial())
    • Distribution géométrique (geometric())
    • Sélection pondérée (weighted())
  • Génération de texte :
    • Caractères aléatoires (randomChar())
    • Chaînes aléatoires (randomString())
    • Mots prononçables (randomWord())
    • UUIDs valides (uuid())
  • Fonctions cryptographiques : cryptoInt() pour entiers sécurisés
  • Génération de bruit :
    • Bruit Perlin 1D (perlin1D())
    • Bruit de valeur (valueNoise1D())
    • Bruit blanc (whiteNoise())
    • Bruit rose (pinkNoise())
    • Interface unifiée (noise())
  • Fonctions utilitaires : fade(), lerp(), gradient tables

Documentation et Tests

  • 114 tests unitaires avec 100% de réussite
  • Documentation complète avec exemples d'usage
  • Support TypeScript avec fichier de définitions .d.ts
  • 8 exemples pratiques dans EXAMPLES.md
  • README détaillé avec API documentation
  • Changelog pour suivi des versions

Qualité et Performance

  • Gestion robuste des cas limites (chaînes vides, etc.)
  • Validation des plages et types de données
  • Déterminisme parfait avec seeds
  • Performance optimisée (< 200ms pour tous les tests)
  • Support Node.js >= 14.0.0

Métadonnées NPM

  • Mots-clés complets pour découvrabilité
  • Licence MIT pour usage libre
  • Scripts de test avec couverture
  • Structure de fichiers optimisée pour npm

Testing

  • Tests de similarité pour tous les algorithmes
  • Tests de déterminisme et reproductibilité
  • Tests de distributions statistiques
  • Tests de génération de texte et validation de format
  • Tests de fonctions cryptographiques
  • Tests de bruit procédural
  • Tests d'intégration et de cohérence

Documentation

  • README principal avec guide complet
  • Exemples pratiques pour 8 cas d'usage
  • Définitions TypeScript pour IntelliSense
  • Documentation des tests avec guides d'usage
  • Rapport final de développement

📊 Performance Metrics

  Small strings: 0.010ms avg, 100223 ops/sec
  Medium strings: 0.010ms avg, 96731 ops/sec
  Large strings: 0.031ms avg, 31821 ops/sec
  Small strings: 0.001ms avg, 827175 ops/sec
  Medium strings: 0.001ms avg, 1447319 ops/sec
  Large strings: 0.002ms avg, 593085 ops/sec
  Small strings: 0.001ms avg, 708761 ops/sec
  Medium strings: 0.001ms avg, 787032 ops/sec
  Large strings: 0.002ms avg, 624316 ops/sec
  Small strings: 0.000ms avg, 2595362 ops/sec
  Medium strings: 0.001ms avg, 1874560 ops/sec
  Large strings: 0.000ms avg, 11781616 ops/sec
  Small strings: 0.002ms avg, 421920 ops/sec
  Medium strings: 0.002ms avg, 449405 ops/sec
  Large strings: 0.003ms avg, 288021 ops/sec
  Small strings: 0.003ms avg, 385072 ops/sec
  Medium strings: 0.002ms avg, 402564 ops/sec
  Large strings: 0.004ms avg, 280652 ops/sec
  Small strings: 0.001ms avg, 1147567 ops/sec
  Medium strings: 0.001ms avg, 1675933 ops/sec
  Large strings: 0.002ms avg, 555700 ops/sec
  Small strings: 0.001ms avg, 1073527 ops/sec
  Medium strings: 0.001ms avg, 1884975 ops/sec
  Large strings: 0.002ms avg, 583116 ops/sec
compareAll: 0.018ms avg, 54569 ops/sec
uniform(): 0.000028ms avg, 35277400 ops/sec
int(1, 100): 0.000028ms avg, 35476391 ops/sec
bool(): 0.000039ms avg, 25762028 ops/sec
normal(0, 1): 0.000084ms avg, 11882509 ops/sec
exponential(1): 0.000050ms avg, 19949472 ops/sec
randomString(10): 0.001310ms avg, 763245 ops/sec
randomWord(5): 0.000740ms avg, 1351812 ops/sec
perlin1D(0.5): 0.000038ms avg, 26338371 ops/sec
whiteNoise(): 0.000032ms avg, 30798750 ops/sec

✅ Quality Assurance

  • All tests passing across Node.js 14, 16, 18, 20
  • Cross-platform compatibility (Linux, Windows, macOS)
  • Security audit passed
  • Performance benchmarks validated

Full Changelog: https://github.com/MXASoundNDEv/Algorith/commits/v1.0.0