Skip to content
This repository was archived by the owner on Mar 5, 2026. It is now read-only.

Releases: hayatbiralem/eco.json

eco.json is now an npm package

17 Dec 15:48
1e3cb67

Choose a tag to compare

this version is now published as @chess-openings/eco.json on npmjs.com

Key changes:

  • several methods under the /module folder are now exported
  • the JSON opening and other data files are not exported
    • executing package methods will do an asynchronous read of the raw data files from github if needed
    • this reduces package size, and allows updates to the data without requiring package upgrade

Latest openings updates

16 Jun 19:26
ffaeb1e

Choose a tag to compare

See README.md

Version 3.6.0

15 Jun 17:00
6d53e22

Choose a tag to compare

Opening count by ECO category (not including interpolations)

{ total: 12371, A: 2723, B: 2726, C: 2861, D: 2271, E: 1790 }

added Wikipedia opening data from "List of Chess Gambits" page

28 May 22:31
6de2d2e

Choose a tag to compare

eco_tsv updates, incl. new interpolated.json and fromTo.json

12 Feb 00:19
b6be059

Choose a tag to compare

Updated opening data from lichess.org; A few new entries, some opening name changes, and some move sequence changes. See README for further information.

(The original fromTo.json in earlier 3.2.0 release omitted interpolated openings. This patch fixes that.)

Added 1000+ openings from Wikibooks

23 Nov 23:07
2e4da6f

Choose a tag to compare

Wikibooks has a Chess Opening Theory book that contains a lot of opening information. Most of this was already in eco.json, but there were many new entries to add.

Note that eco_interpolated.json and fromTo.json have changed as a result.

You can anticipate a couple of articles on Medium.com explaining the process of adding new openings to this project.

changed JSON encoding; added from-to data and tooling

10 Nov 18:23
ff3aa0a

Choose a tag to compare

  • Converted eco*.json from array to objects keyed on FEN (BREAKING CHANGE)
    • (Compatible with existing interpolated.json encoding)
  • Added from-to json array
    • new scripts from.mjs and to.mjs scripts in /tooling (see README)
    • format: [fromFEN, toFEN, fromSrc, toSrc]
  • added version # to top of README (same as release tag)

What's Changed

  • Added tooling scripts and additional data file by @JeffML in #17

Full Changelog: v2.1.1...v3.0.0

Minor editor to README

31 Oct 18:50
85c0d3b

Choose a tag to compare

Fixed some garbage text at top of file.

eco.json now split into smaller JSON files

31 Oct 18:44
ebe9ec5

Choose a tag to compare

eco.json is now ecoA.json, ecoB.json,...,ecoE.json (one file per ECO category). This will make it easier for editing.

Added a missing ECO root variation (B58, Sicilian classical)

Added "isEcoRoot" field to all 500 variations that listed for each ECO category/code combination (100 per category.

A /tooling folder has been added, containing stand-alone node scripts (hence the .mjs extensions)

ECO A openings from wikipedia

05 Sep 19:38
8998718

Choose a tag to compare

Added opening data from Wikipedia (A category; B, C, D, E to soon follow).

To see all Wikipedia-sourced data, run the following:

    //list all eco_wikip references
    const wikip = json.filter(rec => (rec.src==="eco_wikip" || rec.aliases?.eco_wikip))

    console.log(JSON.stringify(wikip, null, 2))

where json is parsed from the eco.json file.

More to come...