HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
kodomonocch1
see_proto
Rust2025–2026
kodomonocch1 / see_proto

see_proto

Schema-aware JSON compression with millisecond lookups — cut transfer/storage while enabling exists /pos queries. (Demo + wheels; core is binary-only)

2Distinct people
9Mentions
0Explicit recommenders
25GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Schema-aware JSON compression with millisecond lookups — cut transfer/storage while enabling exists /pos queries. (Demo + wheels; core is binary-only)

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week9 dated mentions

Observed mentions: 2025-10-08 14:42:12 UTC to 2026-02-19 18:48:10 UTC. Weeks start Monday, UTC.

01232025-10-06 00:00:00 UTC to 2025-10-13 00:00:00 UTC (exclusive): 3 mentions; 2 submissions, 1 commentsOct 62025-10-13 00:00:00 UTC to 2025-10-20 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 comments2025-10-20 00:00:00 UTC to 2025-10-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-27 00:00:00 UTC to 2025-11-03 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-11-03 00:00:00 UTC to 2025-11-10 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-11-10 00:00:00 UTC to 2025-11-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-11-17 00:00:00 UTC to 2025-11-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-11-24 00:00:00 UTC to 2025-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-01 00:00:00 UTC to 2025-12-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-08 00:00:00 UTC to 2025-12-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsDec 82025-12-15 00:00:00 UTC to 2025-12-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-22 00:00:00 UTC to 2025-12-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-29 00:00:00 UTC to 2026-01-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-05 00:00:00 UTC to 2026-01-12 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-12 00:00:00 UTC to 2026-01-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-19 00:00:00 UTC to 2026-01-26 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2026-01-26 00:00:00 UTC to 2026-02-02 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-02 00:00:00 UTC to 2026-02-09 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-09 00:00:00 UTC to 2026-02-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-16 00:00:00 UTC to 2026-02-23 00:00:00 UTC (exclusive): 3 mentions; 2 submissions, 1 commentsFeb 16

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Oct 62025-10-06 00:00:00 UTC2025-10-13 00:00:00 UTC321
Oct 132025-10-13 00:00:00 UTC2025-10-20 00:00:00 UTC220
Oct 202025-10-20 00:00:00 UTC2025-10-27 00:00:00 UTC000
Oct 272025-10-27 00:00:00 UTC2025-11-03 00:00:00 UTC000
Nov 32025-11-03 00:00:00 UTC2025-11-10 00:00:00 UTC000
Nov 102025-11-10 00:00:00 UTC2025-11-17 00:00:00 UTC000
Nov 172025-11-17 00:00:00 UTC2025-11-24 00:00:00 UTC000
Nov 242025-11-24 00:00:00 UTC2025-12-01 00:00:00 UTC000
Dec 12025-12-01 00:00:00 UTC2025-12-08 00:00:00 UTC000
Dec 82025-12-08 00:00:00 UTC2025-12-15 00:00:00 UTC000
Dec 152025-12-15 00:00:00 UTC2025-12-22 00:00:00 UTC000
Dec 222025-12-22 00:00:00 UTC2025-12-29 00:00:00 UTC000
Dec 292025-12-29 00:00:00 UTC2026-01-05 00:00:00 UTC000
Jan 52026-01-05 00:00:00 UTC2026-01-12 00:00:00 UTC000
Jan 122026-01-12 00:00:00 UTC2026-01-19 00:00:00 UTC000
Jan 192026-01-19 00:00:00 UTC2026-01-26 00:00:00 UTC101
Jan 262026-01-26 00:00:00 UTC2026-02-02 00:00:00 UTC000
Feb 22026-02-02 00:00:00 UTC2026-02-09 00:00:00 UTC000
Feb 92026-02-09 00:00:00 UTC2026-02-16 00:00:00 UTC000
Feb 162026-02-16 00:00:00 UTC2026-02-23 00:00:00 UTC321

What Hacker News says

9 sources
Links: - Repo: https://github.com/kodomonocch1/see_proto - Release (Demo + DD packs): https://github.com/kodomonocch1/see_proto/releases/tag/v0.1.... - NDA / enterprise inquiry form: https://docs.google.com/forms/d/e/1FAIpQLScV2Ti592K3Za2r_WLU... If you want to verify quickly: 1) Demo: run the offline Demo Pack (~10 minutes) 2) DD: confirm pack_verify PASS + mismatch=0 + audit PASS (see the release notes checklist)
In Show HN: Searchable compression for JSON/NDJSON (skip ~99% pages; sub-ms lookups
Tetsuro·Feb 19, 2026Submission

Show HN: Searchable compression for JSON/NDJSON (skip ~99% pages; sub-ms lookups

Hi HN — I built SEE (Semantic Entropy Encoding), a schema-aware, searchable compression format for JSON/NDJSON. Goal: Reduce the “data tax” (storage/egress) and the “CPU tax” (decompress/parse) by keeping data searchable while compressed. What’s different: - Page-based layout + Bloom filter skipping + a small directory index - Fast exists/pos/eq-style lookups without full decompression Proof-first (no meeting required): - A 10-minute offline Demo Pack (wheel + sample .see + scripts + OnePager) - A DD Evidence Pack designed for reviewers (mismatch-zero checks, audit status, verification file list) I’m exploring either: (A) acquisition (asset purchase), or (B) an exclusive license with a strategic buyer with a clear integration path. Evaluation slots are limited. Repo + release assets are linked in the comments. Happy to answer technical qu
Read the rest
estions here.
1 points · Open discussion
Tetsuro·Feb 18, 2026Submission

Show HN: See – searchable JSON compression, smaller than ZSTD (on our data)

I built SEE (Semantic Entropy Encoding): a page-level JSON/NDJSON format that stays searchable while compressed (exists/pos/eq-style probes), using Bloom+skip + structure-aware encoding. On our GitHub events dataset, SEE ended up smaller than Zstd-19 while still supporting random access queries: - combined: 40.4MB vs Zstd 71.8MB (raw 524.1MB) → 7.7% of raw - str: 9.1MB vs Zstd 9.5MB - int: 31.3MB vs Zstd 62.3MB Lookup microbench (one column): p50 ~0.085ms. Repo + release assets are here: https://github.com/kodomonocch1/see_proto NDA eval request (optional): https://docs.google.com/forms/d/e/1FAIpQLScV2Ti592K3Za2r_WLU... Happy to answer questions about the design trade-offs and where this beats “Zstd + separate index”.
3 points · Open discussion
Problem JSON/NDJSON is everywhere, but once you compress, you usually lose searchability. You either keep raw/queryable stores (high I/O and egress) or compress to gz/zstd blobs (cheap to store, painful to probe). That “cloud tax” shows up as wasted reads and time. What I built (SEE — Semantic Entropy Encoding) A schema-aware, searchable compression codec that keeps `exists` / `pos` lookups in sub-ms while still compressing. Internals: structure-aware delta + dictionaries, a PageDir + mini-index to jump to relevant pages, and a tuned Bloom filter that skips ~99% of pages. AutoPage (131/262 KiB) balances seek vs throughput. Benchmarks (apples-to-apples on a desktop: i7-13700K/96GB/Windows) • Size ratio: strings ≈ 0.168–0.170; combined ≈ 0.194–0.196 • Bloom density ≈ 0.30; skip: present ≈ 0.99, absent ≈ 0.992 • Lookup latency (ms): pres
Read the rest
ent p50/p95/p99 ≈ 0.18/0.28/0.37; absent ≈ 1.16–1.88 / 1.36–2.11 / 1.58–2.41 Why not “just zstd”? On pure size, zstd can win. The point here is searchable compression: Bloom + PageDir means selective probes avoid touching most pages, reducing I/O/egress and wall-clock time. For full scans, zstd alone may be fine. Try it in 10 minutes (no build) 1) `pip install see_proto` 2) `python samples/quick_demo.py` It prints ratios, skip %, Bloom density, and p50/p95/p99. Repo / README / one-pager https://github.com/kodomonocch1/see_proto#try-in-10-min What I’m looking for Feedback on design trade-offs (Bloom density targets, AutoPage sizing, codec selection), failure modes on irregular schemas, and integration ideas with existing JSON stores.
In [dead]

Show HN: Searchable compression for JSON – ~99% page skip and sub-ms lookups

Problem JSON/NDJSON is everywhere in data platforms, but compression usually breaks searchability. You either keep queryable raw stores (high I/O/egress) or compress into gz/zstd blobs (cheap to store, painful to probe). The “cloud tax” shows up as wasted reads. What I built (SEE — Semantic Entropy Encoding) A schema-aware, searchable compression codec for JSON that keeps exists/pos lookups fast while still compressing. Internals: structure-aware delta + dictionaries, a PageDir + mini-index to jump to relevant pages, and a tuned Bloom filter that skips ~99% of pages. AutoPage (131/262 KiB) balances seek vs throughput. Benchmarks (apples-to-apples, FULL) - size ratio: str ≈ 0.168–0.170, combined ≈ 0.194–0.196 - Bloom density ≈ 0.30; skip: present ≈ 0.99, absent ≈ 0.992 - lookup (ms): present p50/p95/p99 ≈ 0.18/0.28/0.37; absent ≈ 1.16–1.88
Read the rest
/1.36–2.11/1.58–2.41 Numbers are stable on a commodity desktop (i7-13700K/96GB/Windows). Try it in 10 minutes (no build) 1) pip install see_proto 2) python samples/quick_demo.py It prints size ratios, Bloom density, skip %, and lookup p50/p95/p99 on a packaged sample. Why not “just zstd”? We sometimes lose pure size vs zstd alone. The win is searchable compression: Bloom + PageDir avoids touching most pages, so selective probes pay less I/O/egress and finish faster. On large log scans this often wins on TCO even with similar raw ratios. Link (README + quick demo + one-pager) https://github.com/kodomonocch1/see_proto
15 points · Open discussion
SEE (Semantic Entropy Encoding) is a schema-aware JSON compression format. It keeps JSON searchable while compressed, cutting I/O and CPU cost. Benchmarks: ~19.5% of raw size, lookup p50 ≈ 0.18 ms. Article: https://medium.com/@tetsutetsu11/the-hidden-cloud-tax-and-th... Slides: https://speakerdeck.com/tetsu05/see-the-hidden-cloud-tax-bre... GitHub: https://github.com/kodomonocch1/see_proto Curious about your thoughts — especially from those using Zstd or Parquet in production. What would be your biggest blocker for adopting schema-aware compression?
In See – Searchable JSON Compression Beyond ZSTD

Show HN: Searchable compression for JSON (p50≈0.18 ms; 10-min demo)

Hi! I built SEE (Semantic Entropy Encoding) because the “data tax” (storage/egress) and the “CPU tax” (decompress/parse) keep rising together. Tradeoff: it’s not always smaller than Zstd, but it stays searchable while compressed and minimizes I/O. Key numbers (demo): combined≈19.5% of raw, skip≈99%, lookup p50≈0.18 ms (bloom≈0.30). 10-min reproduction (no marketing): 1) Download the Demo ZIP (Release). 2) Follow README_FIRST.md. 3) Run `python samples/quick_demo.py` → prints ratio/skip/bloom + p50/p95/p99. ROI quick math: Savings/TB ≈ (1 − 0.195) × Price_per_GB × 1000 (e.g., $0.05/GB → ~$40/TB). NDA/VDR (private, no confidential info in public): [https://docs.google.com/forms/d/e/1FAIpQLScV2Ti592K3Za2r_WLU...] Happy to answer technical questions (schema-aware layout, delta strategy, bloom density, skip heuristics, failure modes).
4 points · Open discussion

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.