rustio rustio.net

chess vs candidate vs chess-lib

Side-by-side comparison of Rust crates

52
chess
growingv3.2.0

This is a fast chess move generator. It has a very good set of documentation, so you should take advantage of that. It (now) generates all lookup tabels with a build.rs file, which means that very little pseudo-legal move generation requires branching. There are some convenience functions that are exposed to, for example, find all the squares between two squares. This uses a copy-on-make style structure, and the Board structure is as slimmed down as possible to reduce the cost of copying the board. There are places to improve perft-test performance further, but I instead opt to be more feature-complete to make it useful in real applications. For example, I generate both a hash of the board and a pawn-hash of the board for use in evaluation lookup tables (using Zobrist hashing). There are two ways to generate moves, one is faster, the other has more features that will be useful if making a chess engine. See the documentation for more details.

45
candidate
growingv0.0.5

This is a fast chess move generator. It has a very good set of documentation, so you should take advantage of that. It (now) generates all lookup tables with a build.rs file, which means that very little pseudo-legal move generation requires branching. There are some convenience functions that are exposed to, for example, find all the squares between two squares. This uses a copy-on-make style structure, and the Board structure is as slimmed down as possible to reduce the cost of copying the board. There are places to improve perft-test performance further, but I instead opt to be more feature-complete to make it useful in real applications. For example, I generate both a hash of the board and a pawn-hash of the board for use in evaluation lookup tables (using Zobrist hashing). There are two ways to generate moves, one is faster, the other has more features that will be useful if making a chess engine. See the documentation for more details.

40
chess-lib
growingv0.1.3

A chess movement generator library.

Core Metrics

chesscandidatechess-lib
Health Score524540
Total Downloads146.6K6.8K5.3K
30d Downloads4.6K77
Dependents18800
Releases3654
Last Updated1842d ago1214d ago906d ago
Age9y 10m3y 4m2y 9m

Health Breakdown

chess
Maintenance
6
Quality
19
Community
9
Popularity
6
Documentation
12
candidate
Maintenance
8
Quality
16
Community
3
Popularity
5
Documentation
13
chess-lib
Maintenance
4
Quality
16
Community
3
Popularity
4
Documentation
13

Technical Details

chesscandidatechess-lib
Version3.2.00.0.50.1.3
Stable (≥1.0)✓ Yes✗ No✗ No
LicenseMITMITMIT
Dependencies574
Crate Size46KB53KB29KB
Features032
Yanked %0.0%0.0%0.0%
Edition201820212021
MSRV
Owners111

Quick Verdict

  • chess leads with a health score of 52/100, but none of the options score above 80.
  • chess is depended on by 188 crates — strongest ecosystem trust.
  • ⚠ chess, candidate, chess-lib have not been updated in over a year.
  • candidate, chess-lib are pre-1.0 — API may change.