{"id":30506428,"url":"https://github.com/cerjs/hono-rpc","last_synced_at":"2025-08-25T17:19:33.853Z","repository":{"id":301528819,"uuid":"1009536683","full_name":"cerjs/hono-rpc","owner":"cerjs","description":null,"archived":false,"fork":false,"pushed_at":"2025-07-04T06:09:01.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-17T00:28:52.234Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cerjs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-27T09:40:58.000Z","updated_at":"2025-07-04T06:09:04.000Z","dependencies_parsed_at":"2025-06-27T10:39:53.951Z","dependency_job_id":"994b120e-ba18-491c-9828-1668e7ca78c1","html_url":"https://github.com/cerjs/hono-rpc","commit_stats":null,"previous_names":["cerjs/hono-rpc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cerjs/hono-rpc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cerjs%2Fhono-rpc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cerjs%2Fhono-rpc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cerjs%2Fhono-rpc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cerjs%2Fhono-rpc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cerjs","download_url":"https://codeload.github.com/cerjs/hono-rpc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cerjs%2Fhono-rpc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272100963,"owners_count":24873508,"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-25T02:00:12.092Z","response_time":1107,"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-25T17:19:33.125Z","updated_at":"2025-08-25T17:19:33.824Z","avatar_url":"https://github.com/cerjs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## hono-rpc benchm\n\nhono seems win everything\n\n1. zod  ≈ typebox (typebox is a little faster)\n2. json ≈ 2x zod/typebox\n3. deno ≈ 2x node (deno is more stable, and not much volatility)\n4. hono-node ≈ 3x trpc-fastify-nodejs\n5. hono-deno ≈ 7x trpc-fastify-nodejs\n\n## hono-json\n```\nautocannon -c 200 -d 10 -p 100 http://localhost:8787/api/json         \n```\n\n### deno\nmemory using ≈ 90m\n\n| Stat    | 2.5%   | 50%    | 97.5%  | 99%     | Avg      | Stdev   | Max     |\n|---------|--------|--------|--------|---------|----------|---------|---------|\n| Latency | 101 ms | 115 ms | 124 ms | 151 ms | 114.95 ms | 7.34 ms | 161 ms |\n\n\n| Stat    | 1%      | 2.5%    |50%      |97.5%    |Avg      |Stdev    |Min      |\n|---------|---------|---------|---------|---------|---------|---------|---------|\n| Req/Sec   | 167,423 | 167,423 | 172,287 | 176,767 | 172,492.8 | 2,532.63 | 167,354\n| Bytes/Sec | 27.3 MB | 27.3 MB | 28.1 MB | 28.8 MB | 28.1 MB   | 416 kB   | 27.3 MB | \n\n1745k requests in 10.04s, 281 MB read\n\n### node\nmemory using ≈ 160m\n\n| Stat    | 2.5%   | 50%    | 97.5%  | 99%    | Avg     | Stdev    | Max     |\n|---------|--------|--------|--------|---------|----------|---------|---------|\n| Latency | 175 ms | 201 ms | 212 ms | 213 ms | 209.31 ms | 245.28 ms | 7331 ms |\n\n| Stat    | 1%      | 2.5%    |50%    |97.5%  |Avg      |Stdev    |Min     |\n|---------|---------|---------|---------|---------|---------|---------|---------|\n| Req/Sec   | 89,471  | 89,471  | 94,911  | 96,959  | 94,484.37 | 1,742.88 | 89,443  |\n| Bytes/Sec | 16.7 MB | 16.7 MB | 17.7 MB | 18.1 MB | 17.7 MB   | 325 kB   | 16.7 MB |\n\n1394k requests in 10.03s, 257 MB read\n\n## hono-rpc-zod\n```\nautocannon -c 200 -d 10 -p 100 http://localhost:8787/api/zod         \n```\n\n### deno\nmemory using ≈ 100m\n\n| Stat    | 2.5%   | 50%    | 97.5%  | 99%    | Avg     | Stdev    | Max     |\n|---------|--------|--------|--------|---------|----------|---------|---------|\n| Latency | 129 ms | 135 ms | 139 ms | 140 ms | 134.44 ms | 6.63 ms | 158 ms \n\n\n| Stat    | 1%      | 2.5%    |50%    |97.5%  |Avg      |Stdev    |Min     |\n|---------|---------|---------|---------|---------|---------|---------|---------|\n| Req/Sec   | 145,535 | 145,535 | 148,095 | 149,503 | 147,706.19 | 1,202.44 | 145,432 |\n| Bytes/Sec | 23.7 MB | 23.7 MB | 24.2 MB | 24.4 MB | 24.1 MB    | 201 kB   | 23.7 MB |\n\n1635k requests in 11.03s, 265 MB read\n\n\n### node\nmemory using ≈ 750m\n\n| Stat    | 2.5%   | 50%    | 97.5%  | 99%    | Avg     | Stdev    | Max     |\n|---------|--------|--------|--------|---------|----------|---------|---------|\n| Latency | 275 ms | 304 ms | 381 ms | 384 ms | 309.4 ms | 149.72 ms | 5145 ms |\n\n\n| Stat    | 1%      | 2.5%    |50%    |97.5%  |Avg      |Stdev    |Min     |\n|---------|---------|---------|---------|---------|---------|---------|---------|\n| Req/Sec   | 58,559 | 58,559 | 64,479  | 66,623  | 63,576  | 2,583.44 | 58,534  |\n| Bytes/Sec | 11 MB  | 11 MB  | 12.1 MB | 12.5 MB | 11.9 MB | 483 kB   | 10.9 MB |\n\n656k requests in 10.03s, 119 MB read\n\n## hono-rpc-typebox\n```\nautocannon -c 200 -d 10 -p 100 http://localhost:8787/api/typebox         \n```\n\n### deno\nmemory using ≈ 100m\n\n| Stat    | 2.5%   | 50%    | 97.5%  | 99%    | Avg     | Stdev    | Max     |\n|---------|--------|--------|--------|---------|----------|---------|---------|\n| Latency | 124 ms | 131 ms | 137 ms | 140 ms | 130.31 ms | 6.78 ms | 152 ms |\n\n\n| Stat    | 1%      | 2.5%    |50%    |97.5%  |Avg      |Stdev    |Min     |\n|---------|---------|---------|---------|---------|---------|---------|---------|\n| Req/Sec   | 148,991 | 148,991 | 151,551 | 154,879 | 152,102.4 | 1,879.3 | 148,930 |\n| Bytes/Sec | 24.7 MB | 24.7 MB | 25.2 MB | 25.7 MB | 25.2 MB   | 310 kB  | 24.7 MB |\n\n1541k requests in 10.03s, 252 MB read\n\n### node\nmemory using ≈ 800m\n\n| Stat    | 2.5%   | 50%    | 97.5%  | 99%    | Avg     | Stdev    | Max     |\n|---------|--------|--------|--------|---------|----------|---------|---------|\n| Latency | 273 ms | 302 ms | 374 ms | 377 ms | 302.7 ms | 83.99 ms | 3511 ms |\n\n\n| Stat    | 1%      | 2.5%    |50%    |97.5%  |Avg      |Stdev    |Min     |\n|---------|---------|---------|---------|---------|---------|---------|---------|\n| Req/Sec   | 57,247  | 57,247  | 65,663  | 68,863  | 65,118.55 | 2,967.74 | 57,218  |\n| Bytes/Sec | 10.9 MB | 10.9 MB | 12.5 MB | 13.1 MB | 12.4 MB   | 563 kB   | 10.9 MB |\n\n736k requests in 11.03s, 136 MB read\n\n### something else\n\nnode ≈ v8 + libuv + c/c++ + commonjs\n\ndeno ≈ v8 + tokio + rust + esm ✅\n\n~~bun ≈ jsc + uWebSockets + zig~~\n\nbun is not much more advanced than node. \n\nnode + uWebSockets has better performance than bun.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcerjs%2Fhono-rpc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcerjs%2Fhono-rpc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcerjs%2Fhono-rpc/lists"}