Add a data layer honestly
Adding data is not just fetching a URL. In this project a new layer ships with a license check, a credit, and an accuracy statement. This guide is the checklist.
1. Vet the license before you write code
Section titled “1. Vet the license before you write code”Accepted sources tend to be:
- Public domain: NASA, USGS, NOAA (US federal works).
- CC BY 4.0: ESA/Hubble, ESA/Webb (attribution required, keep the exact credit line).
Rejected: anything CC BY-NC, CC BY-ND, or with unclear terms.
2. Add the source with attribution
Section titled “2. Add the source with attribution”-
Record the dataset in
docs/DATA_SOURCES.md(or a world-specific*_DATA_SOURCES.md): the URL, the license, the exact credit line, and the date you verified it. -
If you ship a file (a texture, a JSON snapshot), place it under
public/and keep the credit next to it.
3. Keep the transform pure and tested
Section titled “3. Keep the transform pure and tested”Put the parsing and any physics in a lib/ module with tests and the
null-safety contract, exactly as in
Read real data in the browser.
4. Write the accuracy note
Section titled “4. Write the accuracy note”Every world has a *_PHYSICS.md that states what is computed, from which inputs,
and how accurate it is. Add or update it. Be specific about the bounds, for
example: “valid for low redshift, not for high-redshift cosmology.”
5. Label anything illustrative
Section titled “5. Label anything illustrative”If part of the layer is an artist’s rendering or a stylised value, label it as illustrative in the UI and say so in the note. The honesty rule is that a reader should never mistake an illustration for a measurement.
Checklist
Section titled “Checklist”- License verified and clearly usable
- Exact credit line recorded with the source
- Transform is a pure, tested
lib/module - Accuracy note written with explicit bounds
- Illustrative elements labelled
See the Data sources reference for the current set.