@johnmorrisdotca/kyogijo-stadiums 0.49.1 → 0.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,22 @@ All notable changes to this project are written here. The format follows
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.51.0] - 2026-11-03
11
+
12
+ ### Added
13
+
14
+ - **The catalogue: every venue the package draws, the ones being built and the ones wanted, in one list (KYOGIJO-STADIUMS-26)** ([the catalogue](./docs/catalogue.md)). Each venue has a kebab-case id (the package's own key where it has one), its names in English and Japanese, its city and country, its sports, its Wikidata item and its status. **Supported** (332): every real venue the package draws, made from its own data, 43 in their buildings (the real stadiums and the NHL's venues), 288 as a field, court, rink, park or floor only, and the Las Vegas Strip Circuit as a circuit (`CIRCUITS`'s id and names, `drawn: "circuit"`). **Working on** (10): the tennis show courts of KYOGIJO-STADIUMS-22. **Wanted** (132 new venues, and 69 venues drawn as a field whose building is wanted): every venue of the NBA, MLB, NFL, CFL and NHL this season is listed with its true status and its clubs (a shared stadium once, with both), then world soccer, cricket, rugby, Gaelic and Australian football, Japan's sumo and budō halls, Olympic stadiums and athletics, college football, baseball around the world, ovals and pools, great indoor halls, the circuits of Formula One's 2026 calendar and more great circuits (each waits for its track's data).
15
+ - **The catalogue as an API: a JSON file and a typed entry.** `catalogue.json` is in the package (`@johnmorrisdotca/kyogijo-stadiums/catalogue.json`) and published with the demo at <https://johnmorrisdotca.github.io/kyogijo-stadiums/catalogue.json>, with a `schemaVersion`, the day its sources were read and the licence of its facts. `@johnmorrisdotca/kyogijo-stadiums/catalogue` exports the same data (`CATALOGUE`, `CATALOGUE_GROUPS`, `CATALOGUE_SPORTS`, `CATALOGUE_COUNTRIES`) with `catalogueById`, `catalogueByStatus`, `catalogueBySport`, `catalogueByGroup`, `catalogueWanted`, `catalogueCoverage` and the types; it draws nothing and imports none of the drawing.
16
+ - **Every fact of a new venue is Wikidata's or a named Wikipedia revision's.** `pnpm catalogue:fetch` keeps the raw answers, dated, in `data-sources/catalogue/` (one request at a time, batches of 50, a User-Agent that names the package): the items, labels, coordinates, countries, capacities and places; the NFL's and the CFL's venues checked against the tables of the leagues' lists, and the circuits against the 2026 calendars of Formula One and MotoGP. `pnpm catalogue` makes `src/catalogue.data.ts`, `catalogue.json` and the docs' tables from them; a fact the sources do not give is left out, and `missing` says why. Every new Japanese name was checked by a reviewer.
17
+ - **The demo's catalogue page** (`catalogue.html`, linked from the home page): the leagues' coverage ("NFL: 2 of 30 drawn in its building"), tabs for Supported, Working on and Wanted, sport and group chips, a search, a world map with a pin on each venue shown, and cards a page at a time with each venue's flag, status, clubs and a link to its drawing. In English and Japanese, light and dark, at a phone's width.
18
+ - Tests: `src/catalogue.test.js` (every supported id is the package's own, every id and item once, every item in the raw answers, the coordinates and capacities the items', the names in both languages or their absence said, the JSON and the entry the same, every league's season complete, the docs' tables made from the data) and `e2e/catalogue.demo.mjs`.
19
+
20
+ ## [0.50.0] - 2026-11-03
21
+
22
+ ### Added
23
+
24
+ - **Circuits: the Las Vegas Strip Circuit (KYOGIJO-STADIUMS-27)** ([circuits](./docs/circuits.md), [demo](https://johnmorrisdotca.github.io/kyogijo-stadiums/circuits.html)): a new entry, `@johnmorrisdotca/kyogijo-stadiums/circuits`, draws a famous race track as OpenStreetMap maps it. `drawCircuit({ circuit: "las-vegas" })` draws the lap as a ribbon of the track's width along the ways of the circuit's relation (joined in the order and the direction they are driven), the pit lane, the circuit's ground and its pit building, the start line and the chequered finish across the track, arrows the way the lap runs, the 17 turns numbered where OpenStreetMap numbers them, a north arrow, a scale bar and the credit, light and dark, in English and Japanese; `circuitTable` gives the facts with their bases. `mountCircuitTurn` and `circuitTurnMarkup` lay it on the 3D view's turning floor with the pit building standing at its mapped 19.5 metres and each turn's number on a post: 68 planes and 292 elements, a floor of 14.8 KB. The facts are Wikidata's and the English and Japanese articles' (6.201 km, 17 turns, counterclockwise, opened 2023-11-16), each `documented` with its revision; the track's width (12 m) and the pit lane's (8 m) are ours, `plausible`, because no source gives them. The drawn lap measures 6,210 m, 0.15 percent over the published length. OpenStreetMap maps no racing kerb, run-off or gravel here, so none is drawn. No mark of a race, a series or a team. `pnpm circuits:fetch` and `pnpm circuits` fetch and build the data (`data-sources/circuits/2026-11-03/`, `src/circuits.data.ts`, `src/circuits.osm.data.ts`, ODbL apart); tests: `src/circuits.test.ts`, `src/circuits.raw.test.js` (the drawing held to the raw answer) and `e2e/circuits.demo.mjs` (the page in 2D and 3D, the Copy button, and the view that does nothing while idle or hidden and grows nothing as it turns). The demo has a circuits page with its code and a Copy button. The docs say how the next circuit (Monaco, Spa, Indianapolis, Suzuka with its crossing) would be added.
25
+
10
26
  ## [0.49.1] - 2026-11-02
11
27
 
12
28
  ### Fixed
package/NOTICE.md CHANGED
@@ -47,6 +47,8 @@ picture or code of the sources is copied; each source is named here so that the
47
47
  | `venues`: each venue's seats for ice hockey, number of seating tiers and kind of roof (`VENUE_DATA`, `src/venues.data.ts`) | The item of Wikidata (the capacity P1083 and the sport it applies to P641) and the English Wikipedia article of each arena, at the revision cited below, in `data-sources/venues/2026-10-20/` as read; the facts are numbers and words of our own, with what was read in a few words | Wikidata's data is CC0; the facts read from the articles are facts, with the articles credited here (CC BY-SA 4.0) |
48
48
  | `stadiums`: the outline of each stadium's building, the roof OpenStreetMap maps over it (its heights, the opening in it or its canopies), the pitches or the infield, and how the field lies, worked out from the opening, the pitches or the infield and the outline (`STADIUM_OSM`, `src/stadiums.osm.data.ts`) | OpenStreetMap, through the Overpass API: the closed way tagged with the stadium's Wikidata item and the multipolygon of its roof (BC Place), or the way or relation of the building, the roof parts, the pitches, the infield or the grass of the field named in `scripts/stadiums.data.json` (Lumen Field, T-Mobile Park, Tokyo Dome, Korakuen Hall, Koshien Stadium, and from 2026-10-30 Yankee Stadium, Citi Field, MetLife Stadium, the Olympic Stadium of Montreal with the footprint of its tower, and Barclays Center), read on 2026-10-20 and 2026-10-30, with the raw answers kept in `data-sources/stadiums/2026-10-20/` and `data-sources/stadiums/2026-10-30/`; the outline is simplified to a metre, and the way the field lies is worked out from the opening, the pitches or the infield (`smallestBox`, `src/venues.geo.ts`; a ballpark's way out to centre field is the one of four where its fence lies inside the outline, or the heading and home plate at which its published fence lies nearest the mapped grass of the field (Koshien Stadium), or, where nothing maps it, not known, and the heading is the one in which fence and stands fit the outline best (Tokyo Dome)) | ODbL 1.0, (c) OpenStreetMap contributors (https://www.openstreetmap.org/copyright): a derived database, kept in its own file and offered under the ODbL; a drawing made from it is a produced work and carries the credit (`VENUE_ATTRIBUTION`) |
49
49
  | `stadiums`: each stadium's seats for each configuration, number of seating bowls, kind of roof and the size of its opening (`STADIUM_DATA`, `src/stadiums.data.ts`) | The item of Wikidata (the capacity P1083, the coordinates P625 and the labels in English and Japanese that name a hall) and the English Wikipedia article of each stadium, at the revision cited below, and the Japanese article of the three stadiums of Japan, at the revision cited in [NOTICE.ja.md](./NOTICE.ja.md#実在のスタジアム), in `data-sources/stadiums/2026-10-20/` as read; the facts are numbers and words of our own, with what was read in a few words (and, for a fact leaning on a sentence, the phrase the archive must hold) | Wikidata's data is CC0; the facts read from the articles are facts, with the articles credited here (CC BY-SA 4.0) |
50
+ | `circuits`: each circuit's lap, pit lane, ground, pit building, turns' numbers, start and finish (`CIRCUIT_OSM`, `src/circuits.osm.data.ts`) | OpenStreetMap, through the Overpass API: the circuit's relation tagged with its Wikidata item (its ways in the order and direction they are driven, its `pit_lane`, its `start` and `finish` nodes and its turns tagged `junction=yes` with a `ref`), the circuit's area and the building inside it, read on 2026-11-03, with the raw answer kept in `data-sources/circuits/2026-11-03/`; the lap is joined and simplified to half a metre | ODbL 1.0, (c) OpenStreetMap contributors; kept apart from every other file and offered under the ODbL with the credit `CIRCUIT_ATTRIBUTION` |
51
+ | `circuits`: each circuit's length, number of turns, direction and opening day (`CIRCUIT_DATA`, `src/circuits.data.ts`) | The item of Wikidata (the labels in English and Japanese, the country P17 and the date of official opening P1619) and the English and Japanese Wikipedia articles of each circuit, at the revisions cited below, in `data-sources/circuits/2026-11-03/` as read; the facts are numbers and words of our own. The track's and the pit lane's widths are ours (`plausible`): no source gives them | Wikidata's data is CC0; the facts read from the articles are facts, with the articles credited below (CC BY-SA 4.0) |
50
52
  | `walk`: the ground a crowd outside a district's venues may stand on and what stops it (`WALK_DATA`, `src/walk.data.ts`): paths and sidewalks, plazas, squares, parks and platforms, and carriageways, cycle tracks, railways, water and buildings, as lines with a width and as rings | OpenStreetMap, through the Overpass API: every way and relation of the highways, buildings, railways, water, squares, parks and platforms within 350 metres of the district's venues, read on 2026-10-22, with the raw answer kept in `data-sources/walk/2026-10-22/`; laid flat in metres, simplified to 30 centimetres and written in quarter-metres, by the rules of `scripts/walk-rules.mjs` (no name, id or tag is copied) | ODbL 1.0, (c) OpenStreetMap contributors (https://www.openstreetmap.org/copyright): a derived database, kept in its own file and offered under the ODbL; a crowd or a drawing made from it is a produced work and carries the credit (`VENUE_ATTRIBUTION`) |
51
53
  | `plateau`: the buildings round Tokyo Dome City (`TOKYO_DOME_CITY`, `src/plateau.data.ts`): each building's roof-edge outline simplified to 0.6 metres on a half-metre grid, its height and, for a pitched LOD2 roof, the rise of the roof | Project PLATEAU, the Ministry of Land, Infrastructure, Transport and Tourism's (MLIT) 3D city model of Bunkyo ward, 2025 edition (product specification 5.0, CityGML, https://www.geospatial.jp/ckan/dataset/plateau-13105-bunkyo-ku-2025), read on 2026-10-22: the buildings within 500 metres of the middle of the district, with the raw fields kept in `data-sources/plateau/2026-10-22/` (`pnpm plateau:fetch`, `pnpm plateau`) | PLATEAU Site Policy (https://www.mlit.go.jp/plateau/site-policy/), clause 3: free use, commercial use included, compatible with CC BY 4.0 and the Public Data License 1.0; the source is credited and the data says it was edited and not made by MLIT (`PLATEAU_ATTRIBUTION`: "Project PLATEAU, Ministry of Land, Infrastructure, Transport and Tourism (MLIT), https://www.mlit.go.jp/plateau/ (3D city model of Bunkyo ward, 2025 edition), simplified and edited by Kyogijo Stadiums; not made by MLIT"); the copyright of a ward's data belongs to its local government. Kept in its own file, apart from the OpenStreetMap data (ODbL) and the CC0 files |
52
54
  | `cityctx`: the surroundings of the venues of Seattle (`SEATTLE_SODO`, `SEATTLE_CENTER`, `SEATTLE_CITY`) and the land cover and trees round Vancouver's (`VANCOUVER_NATURE`), in `src/cityctx.data.ts`: buildings (outline, height, for a pitched roof its rise), streets, railways, sidewalks and paths as lines with a width, water, green and wood outlines, and single trees | OpenStreetMap, through the Overpass API: the buildings (with their `height` and `building:levels`), the highways and railways, the tree nodes and rows within the radius of each area, read on 2026-10-22, the raw answers kept in `data-sources/cityctx/2026-10-22/` (`pnpm cityctx:fetch`, `pnpm cityctx:vox`, `pnpm cityctx`); laid flat in metres, simplified and put on a grid of half a metre (two metres for Seattle's city view) | OpenStreetMap's data is ODbL 1.0 (https://opendatacommons.org/licenses/odbl/1-0/), credited "(c) OpenStreetMap contributors, ODbL 1.0, openstreetmap.org/copyright"; the file is a derived database kept in its own file, apart from the CC0 files and from PLATEAU's data |
@@ -480,6 +482,17 @@ BC Place, Lumen Field, T-Mobile Park, Tokyo Dome, Korakuen Hall and Koshien Stad
480
482
  | Olympic Stadium | Q285467 | way/108505523 | Olympic Stadium (Montreal), 1382141337 |
481
483
  | Barclays Center | Q807966 | relation/8610205 | Barclays Center, 1380399342 |
482
484
 
485
+ ## The catalogue's sources
486
+
487
+ The catalogue (`catalogue.json`, `src/catalogue.data.ts`, `docs/catalogue.md`) was read on 2026-11-03 (`pnpm catalogue:fetch`; the files are in `data-sources/catalogue/2026-11-03/`). Its venues' items, names in English and Japanese, coordinates, countries, capacities and places are Wikidata's (CC0). Which venues the NFL and the CFL play in this season, and which circuits the 2026 calendars of Formula One and MotoGP race at, were checked against the tables of these English Wikipedia articles (CC BY-SA 4.0), whose linked titles are kept as evidence and whose text is not copied; each new venue's English name is the title of its English article.
488
+
489
+ | English article | Revision |
490
+ | --- | --- |
491
+ | List of current National Football League stadiums | 1382562348 |
492
+ | List of Canadian Football League stadiums | 1383444131 |
493
+ | 2026 Formula One World Championship | 1383447981 |
494
+ | 2026 MotoGP World Championship | 1383460791 |
495
+
483
496
  ## The context's and the gates' sources
484
497
 
485
498
  Downtown Vancouver's buildings and streets (`VANCOUVER_CENTRE`, `src/osm.context.data.ts`) are OpenStreetMap's, ODbL 1.0, (c) OpenStreetMap contributors, made by `pnpm osm-context` from the same raw answer as the walkable mask (`data-sources/walk/2026-10-22/osm-vancouver.json`): each building's outline simplified to 60 centimetres with the height OpenStreetMap maps (else its levels at 3.2 metres, else 10 metres, which is ours) and each street as a line with a width; no name, id or tag is copied. It is kept in its own file, apart from every CC0 and CC BY-SA file and from the PLATEAU data of Tokyo.
@@ -571,3 +584,11 @@ The dates, the venues and the figures of the 18 special games (`events`) were re
571
584
  | [2009 NHL Winter Classic Takes the Mound](https://www.sportsvideo.org/2008/12/30/2009-nhl-winter-classic-takes-the-mound/) | Carolyn Braff, Sports Video Group | 30 December 2008 | At Wrigley Field the 200- by 85-foot rink "splits the pitchers' mound from first to third" and "sits 112 feet from home plate and 288 feet from the center-field wall"; the 2008 and 2003 games were played on football fields. |
572
585
  | [Winter Classic at Wrigley evokes memories of 1st outdoor game at Cubs' home](https://www.nhl.com/news/topic/winter-classic/2009-wrigley-winter-classic-oral-history) | Tracey Myers, NHL.com | 29 December 2024 | Dan Craig, who built the 2009 rink: the diagram had center ice at second base, and the rink was moved inside the infield, so that center ice was basically at the pitching mound. |
573
586
  | [The NHL is about to move into Fenway Park. Here's a look at how it will set up for the Winter Classic.](https://www.bostonglobe.com/2022/12/18/sports/nhl-is-about-move-into-fenway-park-heres-look-how-it-will-set-up-winter-classic) | Michael Silverman, The Boston Globe | 18 December 2022 | At Fenway Park in 2023 the 200-foot rink is roughly centered length-wise across the first and third bases, stretched along a second-to-third-base axis across the Green Monster, shifted from its 2010 layout. |
587
+
588
+ ## The circuits' sources
589
+
590
+ The Las Vegas Strip Circuit, read on 2026-11-03 (`pnpm circuits:fetch`; the files are in `data-sources/circuits/2026-11-03/`: `osm-las-vegas.json` as Overpass returned it, with the query and the time of OpenStreetMap's data, `wikidata.json` and `wikipedia.json` with the infobox lines and the sentences read). The OpenStreetMap elements are ODbL 1.0, (c) OpenStreetMap contributors; the articles are CC BY-SA 4.0, read at the revisions below (the Japanese article's in [NOTICE.ja.md](./NOTICE.ja.md#サーキット)), and only facts are taken from them.
591
+
592
+ | Circuit | Wikidata item | OpenStreetMap | English article and revision |
593
+ | --- | --- | --- | --- |
594
+ | Las Vegas Strip Circuit | Q113112116 | relation/16696508 (the lap, the pit lane way/1223479152, the start node/13016217986, the finish node/13016217985, the 17 turns), the area way/233786564, the pit building way/1198427833 | Las Vegas Strip Circuit, 1376988769 |
package/README.md CHANGED
@@ -94,6 +94,27 @@ Real buildings drawn in the outline OpenStreetMap maps for them, each with a pla
94
94
  </tr>
95
95
  </table>
96
96
 
97
+ **Circuits** ([circuits](./docs/circuits.md))
98
+
99
+ <table align="center">
100
+ <tr>
101
+ <td align="center" valign="top">
102
+ <picture>
103
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/johnmorrisdotca/kyogijo-stadiums/main/docs/images/circuits-las-vegas-desk-dark.webp">
104
+ <img src="https://raw.githubusercontent.com/johnmorrisdotca/kyogijo-stadiums/main/docs/images/circuits-las-vegas-desk-light.webp" alt="The Las Vegas Strip Circuit from above: the lap as a dark ribbon with white edges, the pit building in its ground and a numbered badge at each of the 17 turns." width="250">
105
+ </picture>
106
+ <br><em>The Las Vegas Strip Circuit, its 17 turns numbered</em>
107
+ </td>
108
+ <td align="center" valign="top">
109
+ <picture>
110
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/johnmorrisdotca/kyogijo-stadiums/main/docs/images/circuits-las-vegas-3d-desk-dark.webp">
111
+ <img src="https://raw.githubusercontent.com/johnmorrisdotca/kyogijo-stadiums/main/docs/images/circuits-las-vegas-3d-desk-light.webp" alt="The same circuit in 3D from a low corner, with the pit building standing and each turn's number on a post." width="250">
112
+ </picture>
113
+ <br><em>The same lap in 3D</em>
114
+ </td>
115
+ </tr>
116
+ </table>
117
+
97
118
  **Districts and the fly-through** ([districts](./docs/district.md), [the fly-through](./docs/flythrough.md))
98
119
 
99
120
  <table align="center">
@@ -191,8 +212,10 @@ console.log(svg.startsWith("<svg"), svg.includes("USA 3, Canada 2"));
191
212
  - **Forty-three surfaces, to scale**, each from its rulebook or its published distances, and each league's variants (48 of them): football fields, the NHL rink, the NBA court, soccer, baseball, curling, twelve net and racket sports, pools, athletics, skating, field sports, the budō, the MMA cage, rings and mats. [The surfaces](./docs/surfaces.md), [sources](./docs/sources.md).
192
213
  - **The score on the surface**: each team's name and logo on its side, the score in the middle, wide or tall, a compact badge for a list, the situation of a game. [Score and layout](./docs/score.md), [the situation](./docs/situation.md).
193
214
  - **Every ballpark and ground**: The 30 current MLB parks and 44 that MLB clubs have left, and the 12 home parks of Nippon Professional Baseball with eight other NPB grounds, each with its fence drawn from the distances published for it; 64 soccer grounds at their published sizes; 167 arenas. [Ballparks](./docs/ballparks.md), [grounds](./docs/grounds.md), [arenas](./docs/arenas.md).
215
+ - **A catalogue of venues**: every venue drawn today, the ones being built and the ones wanted (every NBA, MLB, NFL, CFL and NHL venue of the season, world soccer, cricket, rugby, the Olympics, Formula One and more), with ids, names in English and Japanese and Wikidata items, as a [JSON file](https://johnmorrisdotca.github.io/kyogijo-stadiums/catalogue.json) and a typed entry. [The catalogue](./docs/catalogue.md).
194
216
  - **Real venues**: arenas and stadiums in the outline of their buildings, districts of several venues on one plan, the crowd in the stands and outside. [Ballparks](./docs/ballparks.md), [venues](./docs/venues.md), [districts](./docs/district.md).
195
217
  - **A 3D view** of any surface or venue that turns by mouse, touch or keys, with the roof and the walls to switch and a quality level for every device. [The 3D view](./docs/turn.md), [quality](./docs/quality.md).
218
+ - **Circuits**: a famous race track as OpenStreetMap maps it, the Las Vegas Strip Circuit first, with its turns numbered and its pit building standing in 3D. [Circuits](./docs/circuits.md).
196
219
  - **Tournaments**: several surfaces on one floor, who judges where, boards laid over a surface. [Layouts](./docs/multi.md), [judging](./docs/judging.md), [boards](./docs/boards.md).
197
220
  - **Data on a surface**: points, heat maps, shot and pass charts, team shapes and a replay, in 48 providers' coordinate frames. [Layers](./docs/layers.md), [frames](./docs/frames.md), [replay](./docs/replay.md).
198
221
  - **Looks and flags**: eight named looks, a flag or crest on each half, trophies and crests from Dougu Sports, flags from Hata, light and dark. [Theming](./docs/theming.md), [the pageant](./docs/pageant.md).
@@ -207,6 +230,7 @@ console.log(svg.startsWith("<svg"), svg.includes("USA 3, Canada 2"));
207
230
  | `drawKyogijo`, `drawSurface`, `drawScore`, `drawBadge` | The drawing, as a string of SVG. |
208
231
  | `SPORTS`, `PARKS`, `COURT_THEMES`, `SOCCER_PITCHES`, `GROUNDS`, `EVENTS` | The forty-three sports, the 94 ballparks, the court looks, the pitches, the 64 grounds, the 18 special games. |
209
232
  | `./venues`, `./stadiums`, `./district`, `./turn` | Real arenas and stadiums in their buildings' outlines; districts on one plan; a surface as a 3D view that turns. |
233
+ | `./circuits` | Race tracks as OpenStreetMap maps them, in 2D and 3D ([demo](https://johnmorrisdotca.github.io/kyogijo-stadiums/circuits.html)). |
210
234
  | `./multi`, `./judging`, `./layouts` | Several surfaces for one event ([demo](https://johnmorrisdotca.github.io/kyogijo-stadiums/halls.html)); who judges where; small multiples and backgrounds. |
211
235
  | `./layers`, `./charts`, `./frames`, `./zones`, `./pointer`, `./replay` | Data layers, charts, the providers' frames, zones by the rules, a click as a place, tracking data played on a surface. |
212
236
  | `./athletics`, `./budo`, `./skating` | The athletics stadium, the budō (areas, dohyō, the dojo builder) and the skating rinks. |