#170170th of 206 in ML frameworks and libraries

linfa

Rust toolkit of classical ML algorithms, modeled on scikit-learn

Stars
4.8k
License
Apache-2.0
Last commit
Aug 2026
Last release
Dec 2025
Language
Rust
Stars, last 29 weeks+180
22 Apr 2026: 4,589 stars29 Apr 2026: 4,599 stars6 May 2026: 4,609 stars13 May 2026: 4,617 stars20 May 2026: 4,622 stars27 May 2026: 4,628 stars3 Jun 2026: 4,638 stars10 Jun 2026: 4,650 stars17 Jun 2026: 4,653 stars24 Jun 2026: 4,656 stars1 Jul 2026: 4,662 stars8 Jul 2026: 4,670 stars15 Jul 2026: 4,681 stars22 Jul 2026: 4,686 stars29 Jul 2026: 4,693 stars5 Aug 2026: 4,702 stars12 Aug 2026: 4,710 stars19 Aug 2026: 4,716 stars26 Aug 2026: 4,719 stars2 Sept 2026: 4,726 stars9 Sept 2026: 4,731 stars16 Sept 2026: 4,735 stars23 Sept 2026: 4,737 stars30 Sept 2026: 4,740 stars7 Oct 2026: 4,744 stars14 Oct 2026: 4,750 stars21 Oct 2026: 4,753 stars28 Oct 2026: 4,760 stars4 Nov 2026: 4,767 stars11 Nov 2026: 4,769 stars

4,589 on 22 Apr 20264,769 on 11 Nov 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

Linfa is a collection of Rust crates implementing preprocessing and classical machine learning algorithms, in the spirit of scikit-learn. It covers clustering, linear and logistic regression, SVMs, decision trees, ensembles, PCA and t-SNE, each as a separate sub-crate. It uses a pure-Rust linear algebra backend by default, with optional OpenBLAS, Netlib or Intel MKL.

Who it is for: Rust developers who need scikit-learn-style classical ML in native code

Strengths

  • Modular crates: depend only on the algorithms you need, such as clustering or svm
  • Pure-Rust default backend, with optional OpenBLAS, Netlib or Intel MKL via features
  • Browser WASM on wasm32-unknown-unknown through the wasm-bindgen feature
  • Broad classical coverage: K-Means, DBSCAN, random forest, AdaBoost, PCA, t-SNE, TF-IDF

Weaknesses

  • No neural network or deep learning crate in the algorithm list
  • Logistic regression is described as two-class only
  • OpenBLAS and Netlib backends are listed for Linux only
  • Rust only, with no Python bindings mentioned

What it needs

  • no GPU
  • Needs Rust toolchain, optional OpenBLAS/Netlib/Intel MKL
  • Models: K-Means, DBSCAN, random forest, SVM, linear regression

What changed

From the release notes. No flag means the note does not say so, not that the upgrade is safe.

Also in ML frameworks and libraries

See all 206
Also in ML frameworks and libraries
RankProjectScore
1transformersPython library defining open models for text, vision, audio and multimodal tasks168.9k stars+1,573 (+0.9%) in 30 daysApache-2.094 out of 100
2ultralyticsPython library and CLI for training and running YOLO vision models63.3k stars+1,004 (+1.6%) in 30 daysAGPL-3.094 out of 100
3pytorchPython tensor library with GPU support and tape-based autograd105.5k stars+1,036 (+1.0%) in 30 dayscustom license93 out of 100
#4pytorch-image-modelsPyTorch library of image models, pretrained weights and training scripts37.3k stars+107 (+0.3%) in 30 daysApache-2.093 out of 100
#5supervisionPython toolkit for loading, annotating and counting computer vision detections Live demo ↗ (opens in a new tab)51.6k stars+521 (+1.0%) in 30 daysMIT92 out of 100