{"id":51436814,"url":"https://github.com/sw23/fp-conv","last_synced_at":"2026-07-05T07:07:12.007Z","repository":{"id":320804470,"uuid":"1083392150","full_name":"sw23/fp-conv","owner":"sw23","description":"Floating Point Conversion Calculator","archived":false,"fork":false,"pushed_at":"2026-07-04T15:35:33.000Z","size":6718,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-04T17:12:00.786Z","etag":null,"topics":["floating-point","ieee754","mcp-server","microscaling-formats"],"latest_commit_sha":null,"homepage":"https://sw23.github.io/fp-conv/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sw23.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-25T23:12:32.000Z","updated_at":"2026-07-04T15:35:37.000Z","dependencies_parsed_at":"2025-10-26T02:25:15.894Z","dependency_job_id":"44394ee8-a5b0-4863-a810-1b42c9fbb838","html_url":"https://github.com/sw23/fp-conv","commit_stats":null,"previous_names":["sw23/fp-conv"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/sw23/fp-conv","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sw23%2Ffp-conv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sw23%2Ffp-conv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sw23%2Ffp-conv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sw23%2Ffp-conv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sw23","download_url":"https://codeload.github.com/sw23/fp-conv/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sw23%2Ffp-conv/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35146074,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"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":["floating-point","ieee754","mcp-server","microscaling-formats"],"created_at":"2026-07-05T07:07:10.254Z","updated_at":"2026-07-05T07:07:11.075Z","avatar_url":"https://github.com/sw23.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Floating Point Conversion Calculator\n\nInteractive tool for converting and visualizing floating-point numbers across\nstandard and custom formats. Convert between FP32, FP16, BF16, TF32, FP8, etc.\nwhile inspecting binary representations and precision loss.\n\n**Live URL:** https://sw23.github.io/fp-conv/\n\n## Features\n\n- **Format presets:** FP64, FP32, FP16, BF16, TF32, OCP FP4/FP6/FP8\n- **Integer formats:** INT32, UINT32, INT16, UINT16, INT8, UINT8, INT4, UINT4\n- **OCP format support:** Full support for Open Compute Project microscaling formats\n- **Custom formats:** Define any bit layout (0–15 exponent bits, 0–112 mantissa bits)\n- **Interactive editing:** Toggle individual bits and see decimal/hex updates\n- **Precision analysis:** Calculate absolute and relative error between formats\n- **Special values:** Explore zero, infinity, NaN, subnormals, and boundary cases\n- **Rounding modes:** Implements IEEE 754 rounding modes (ties to even, ties away\n  from zero, toward zero, toward +inf, and toward −inf)\n- **Fixed-point mode:** Set exponent bits to 0 for fractional representations\n- **Shareable links:** Bookmark or share a conversion via URL parameters (input/output\n  format, value, and rounding mode)\n- **Mobile-friendly:** Works on screens of all sizes\n- **WebMCP API:** AI agents can perform conversions via [WebMCP](docs/webmcp.md)\n\n## Supported Formats\n\nThe following standard formats are supported, in addition to any custom format you\ndefine (up to 15 exponent bits and 112 mantissa bits). Interactive pages have been\ncreated to help explain and visualize each standard format:\n\n- **IEEE 754:**\n  [FP64](https://sw23.github.io/fp-conv/formats/fp64.html),\n  [FP32](https://sw23.github.io/fp-conv/formats/fp32.html),\n  [FP16](https://sw23.github.io/fp-conv/formats/fp16.html)\n- **ML/AI:**\n  [TF32](https://sw23.github.io/fp-conv/formats/tf32.html),\n  [BF16](https://sw23.github.io/fp-conv/formats/bf16.html)\n- **Integer:**\n  [INT32](https://sw23.github.io/fp-conv/formats/int32.html),\n  [UINT32](https://sw23.github.io/fp-conv/formats/uint32.html),\n  [INT16](https://sw23.github.io/fp-conv/formats/int16.html),\n  [UINT16](https://sw23.github.io/fp-conv/formats/uint16.html),\n  [INT8](https://sw23.github.io/fp-conv/formats/int8.html),\n  [UINT8](https://sw23.github.io/fp-conv/formats/uint8.html),\n  [INT4](https://sw23.github.io/fp-conv/formats/int4.html),\n  [UINT4](https://sw23.github.io/fp-conv/formats/uint4.html)\n- **OCP Microscaling:**\n  [FP8 E4M3](https://sw23.github.io/fp-conv/formats/fp8-e4m3.html),\n  [FP8 E5M2](https://sw23.github.io/fp-conv/formats/fp8-e5m2.html),\n  [FP6 E2M3](https://sw23.github.io/fp-conv/formats/fp6-e2m3.html),\n  [FP6 E3M2](https://sw23.github.io/fp-conv/formats/fp6-e3m2.html),\n  [FP4 E2M1](https://sw23.github.io/fp-conv/formats/fp4-e2m1.html)\n- **Custom:** Supports a wide range of user-defined formats\n\n## MCP Server\n\nThe [`fp-conv-mcp`](https://www.npmjs.com/package/fp-conv-mcp) npm package provides\na local [Model Context Protocol](https://modelcontextprotocol.io) server, giving\nagents direct local access to floating point format conversions.\n\nExample client configuration (VS Code, `.vscode/mcp.json`):\n\n```json\n{\n  \"servers\": {\n    \"fp-conv\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"fp-conv-mcp\"]\n    }\n  }\n}\n```\n\nSee the [package README](packages/fp-conv-mcp/README.md) for full usage,\nper-client setup, and debugging instructions.\n\n## Command-Line Tool\n\nThe [`fp-conv-cli`](https://www.npmjs.com/package/fp-conv-cli) npm package provides a\ncross-platform command-line version of the converter (Windows, macOS, and Linux),\nreusing the same conversion engine as the web app and MCP server. The installed\ncommand is `fp-conv`.\n\n```bash\nnpx fp-conv-cli convert 3.14 --from fp32 --to fp16\n```\n\nIt supports `encode`, `decode`, `convert`, `info`, and `list` commands with\nhuman-readable or `--json` output. See the\n[package README](packages/fp-conv-cli/README.md) for full usage and examples.\n\n## License\n\nMIT © 2026 Spencer Williams. See [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsw23%2Ffp-conv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsw23%2Ffp-conv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsw23%2Ffp-conv/lists"}