Xata
몇 초 만에 새 Postgres를 시작하거나 기존 것을 복제하고 사용 안 할 때는 자동으로 축소
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A static, searchable website hosted on GitHub Pages that provides MD5, SHA1, and SHA256 hashes for game console and computer BIOS files.
This has been "vibe coded" with human verification, the initial datasets were generated using AI to cross-reference mulitple datasets.
The aim is to have a simple front-end for users to reference to aid searching/validating; as I found this information being sporadic with things being based on release groups etc
The side effect is that the json datasets should be nice for automated tooling to parse too.README 전문 보기 ↗A static, searchable website hosted on GitHub Pages that provides MD5, SHA1, and SHA256 hashes for game console and computer BIOS files.
This has been "vibe coded" with human verification, the initial datasets were generated using AI to cross-reference mulitple datasets.
The aim is to have a simple front-end for users to reference to aid searching/validating; as I found this information being sporadic with things being based on release groups etc
The side effect is that the json datasets should be nice for automated tooling to parse too.
data/<manufacturer>.json — one file per manufacturer, with BIOSes nested under their consoles. Human-readable, edited via git pull requests.build.py reads every data/*.json file and generates:
index.html — a searchable card grid of manufacturers (small payload, loads fast).m/<slug>.html — one page per manufacturer, holding only that manufacturer's BIOS entries.main.Per-manufacturer files keep PRs tiny, avoid merge conflicts when multiple people contribute at once, and eliminate the need for contributors to coordinate on integer IDs. Per-manufacturer HTML pages keep each page's client-side dataset small, so search stays snappy even as the database grows.
Each data/<manufacturer>.json file looks like this:
{
"manufacturer": "Sony",
"consoles": [
{
"shortName": "PS1",
"longName": "PlayStation",
"bioses": [
{
"name": "SCPH-1001",
"altName": "PlayStation NTSC-U BIOS",
"region": "NTSC-U",
"version": "2.2",
"size": 524288,
"md5": "8dd7d5296a650fac7319bce665a6a53c",
"sha1": "10155d8d6e6e832d6ea66db9bc098321fb5e8ebf",
"sha256": null,
"crc32": null,
"notes": "Original US BIOS, released 1995"
}
]
}
]
}
BIOS fields: name (required), plus optional altName, region, version, size, md5, sha1, sha256, crc32, notes. Use null for any optional field that isn't known. The size field is a raw byte count (integer), which the site formats as B, KiB, MiB, GiB, or TiB automatically. crc32 is stored for contributors who cross-reference DAT-based tools (No-Intro, Redump, clrmamepro) but is not displayed on the site.
data/<manufacturer>.json (or create a new file if the manufacturer doesn't exist yet).bioses array — or add a new console object if needed.null.The filename determines the manufacturer's page URL — e.g. data/sony.json → m/sony.html. Keep filenames lowercase and use hyphens for spaces.
pip install -r requirements.txt
python build.py
# then open index.html in your browser
# or serve locally so relative links to m/*.html work everywhere:
python -m http.server 8000
Freeform Markdown notes and external links can be added alongside the hash data, kept in a separate notes/ directory so the JSON stays clean for automated tooling. These are always supplementary — rendered after the primary content (the manufacturer grid, or the BIOS table), not before it:
notes/_index.md — shown at the bottom of the site's index page.notes/<manufacturer-slug>.md — shown at the bottom of that manufacturer's page.notes/<manufacturer-slug>/<console-slug>.md — shown inside that console's card, below its BIOS table.All three are entirely optional — add one only where you have something worth saying (background, links to further reading, expected filenames for emulators, etc). Slugs must match the manufacturer name / console longName the same way data/<manufacturer>.json filenames do; python validate.py will flag a note file that doesn't match anything. See notes/_index.md, notes/sony.md, and notes/sony/playstation.md for examples.
check_hashes.py looks up one or more hashes against data/*.json without needing a build. Hash type (MD5/SHA1/SHA256/CRC32) is auto-detected by length, so you can pass them in any order:
python check_hashes.py a860e8c0b6d573d191e4ec7db1b1e4f6 300c20df6731a33952ded8c436f7f186d25d3492
If any given hash matches a known entry, the rest are cross-checked against that entry's recorded values, and a mismatch is flagged as a warning. If nothing matches this site's data, it falls back to checking libretro-database's dat/System.dat (fetched over the network and cached in .cache/) before reporting the hashes as entirely unknown. Pass --offline to skip that fallback, or --refresh-dats to force re-downloading the cached copy.
hash_files.py (or the equivalent hash_files.sh, for systems without Python handy) computes MD5, SHA1, SHA256, and CRC32 for one or more local files:
python hash_files.py dmg_boot.bin mgb_boot.bin
Pass --json to get a ready-to-paste array of BIOS entry objects instead — the name, size, and hash fields are filled in, and everything else (altName, region, version, notes) is left null for you to fill in before adding it to the matching console's bioses array:
python hash_files.py --json dmg_boot.bin > entry.json
main — the workflow will build and deploy the site.