{"id":30138483,"url":"https://github.com/pmiddend/hsfive","last_synced_at":"2025-08-11T01:35:44.399Z","repository":{"id":297627553,"uuid":"997397825","full_name":"pmiddend/hsfive","owner":"pmiddend","description":"HDF5 implementation in pure Haskell (read-only for now)","archived":false,"fork":false,"pushed_at":"2025-07-22T12:59:25.000Z","size":266,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-04T00:07:15.042Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pmiddend.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-06T13:10:19.000Z","updated_at":"2025-07-22T12:59:28.000Z","dependencies_parsed_at":"2025-07-09T14:34:17.420Z","dependency_job_id":null,"html_url":"https://github.com/pmiddend/hsfive","commit_stats":null,"previous_names":["pmiddend/hsfive"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pmiddend/hsfive","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmiddend%2Fhsfive","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmiddend%2Fhsfive/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmiddend%2Fhsfive/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmiddend%2Fhsfive/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pmiddend","download_url":"https://codeload.github.com/pmiddend/hsfive/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmiddend%2Fhsfive/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269818808,"owners_count":24480074,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-11T01:35:43.618Z","updated_at":"2025-08-11T01:35:44.380Z","avatar_url":"https://github.com/pmiddend.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hsfive — HDF5 in pure Haskell\n\n## Goal\n\nThe goal of this project is to implement at least a read-only version of an HDF5 library, ideally compatible with the filter plugins, so you can read, for example, Dectris detector data.\n\n## Why on earth would you do this?\n\n1. Fun.\n2. If we implement all of (the very common things in) HDF5, including plugins, then we can have Haskell-only, statically linked, portable HDF5 tools, and isn't that super cool?\n\n## Current state\n\nThis is very much a piece of nothing right now, don't take the project too seriously. Once it's got Haddocks and is on hackage, take notice of this.\n\nWe're trying to implement \"support\" for all sample HDF5 files on the [silx.org](http://www.silx.org/pub/h5web/) website. Currently we can actually parse (and thus partially h5dump) these:\n\n- `water_224.h5`\n- `epics.h5`\n- `dtype.h5`\n- `dtype_*.h5`: can be read, but it only contains attributes confusing our own H5Dump tool\n- `destfile.h5`\n- `compressed-virtual.h5`\n- `compressed.h5`\n- `complex_aux.h5`\n- `committed_type.h5`\n- `braggy.h5`\n- `bamboo.h5`\n- `201805_WSe2_arpes.nxs`\n- `esrf_id15_example1.h5`\n- `ewoksid31.h5`\n- `file_fail.nxs`\n- `file_ok.nxs`\n- `filters.h5`\n- `filters_jpeg.h5`\n\n### C bits\n\nLZ4/Bitshuffle is currently still C code, look at the `cbits` directory. At some point I'd like to change this, but compiling a few C files is a good tradeoff to separately compiling, shipping and linking the bitshuffle plugin DLL.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmiddend%2Fhsfive","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpmiddend%2Fhsfive","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmiddend%2Fhsfive/lists"}