frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: AI Motion Control – Transfer any motion to any character with Kling AI

https://aimotioncontrol.app
2•sunpy•1h ago•0 comments

Show HN: 30k IKEA items in flat text

https://huggingface.co/datasets/tsazan/ikea-us-commercetxt
49•tsazan•5d ago•34 comments

Show HN: SubTrack – A SaaS tracker for devs that finds unused tools

https://subtrack.pulseguard.in
2•hrshw•1h ago•0 comments

Show HN: Shellock, a real-time CLI flag explainer for fish shell

https://github.com/ibehnam/shellock
30•behnamoh•5d ago•10 comments

Show HN: Geoguess Lite – open-source, subscription free GeoGuessr alternative

https://geoguesslite.com
3•spider-hand•2h ago•2 comments

Show HN: Spec-Driven AI Development – Keep AI-Generated Code Maintainable

2•samarthahathwar•2h ago•0 comments

Show HN: words.zip – Massively infinite word search

https://words.zip/
3•yathern•2h ago•0 comments

Show HN: Engineering Schizophrenia: Trusting yourself through Byzantine faults

99•rescrv•19h ago•15 comments

Show HN: An LLM-optimized programming language

https://github.com/ImJasonH/ImJasonH/blob/main/articles/llm-programming-language.md
43•ImJasonH•13h ago•31 comments

Show HN: Seapie – a Python debugger where breakpoints drop into a REPL

https://github.com/hirsimaki-markus/seapie
2•markushirsimaki•3h ago•0 comments

Show HN: Intelligent search and analysis for your browsing history

https://chromewebstore.google.com/detail/sutra/dpkmikhdmnphoglanaaioifoaognlhdp
2•fiveleavesleft•1h ago•0 comments

Show HN: GlyphLang – An AI-first programming language

40•goose0004•1d ago•25 comments

Show HN: stream-unzip – Python function to unZIP on the fly

https://github.com/uktrade/stream-unzip
2•michalc•5h ago•0 comments

Show HN: I used Claude Code to discover connections between 100 books

https://trails.pieterma.es/
487•pmaze•2d ago•144 comments

Show HN: Chr2 – consensus for side effects (exactly-once is a lie)

https://github.com/abokhalill/chr2
10•yousef06•20h ago•0 comments

Show HN: Interactive California Budget (by Claude Code)

https://california-budget.com
35•sberens•23h ago•1 comments

Show HN: flash.nvim, but for tmux…sort of

https://github.com/Kristijan/flash-copy.tmux
4•KristijanM13•7h ago•0 comments

Show HN: Librario, a book metadata API that aggregates G Books, ISBNDB, and more

131•jamesponddotco•1d ago•46 comments

Show HN: What if AI agents had Zodiac personalities?

https://github.com/baturyilmaz/what-if-ai-agents-had-zodiac-personalities
29•arbayi•17h ago•16 comments

Show HN: Voice Composer – Browser-based pitch detection to MIDI/strudel/tidal

https://dioptre.github.io/tidal/
17•dioptre•17h ago•2 comments

Show HN: Ferrite – Markdown editor in Rust with native Mermaid diagram rendering

https://github.com/OlaProeis/Ferrite
233•OlaProis•1d ago•170 comments

Show HN: SpecificProxy – Proxy Using a Specific IP

https://github.com/danthegoodman1/specificproxy
9•dangoodmanUT•20h ago•2 comments

Show HN: ZCCInfo – Fast status line for Claude Code written in Zig

https://github.com/tuananh131001/zccinfo
2•tuananh131001•9h ago•0 comments

Show HN: I built a tool to visualize the Peter Thiel stock portfolio (13F data)

https://www.13radar.com/guru/peter-thiel
3•PanicSellGuru•9h ago•1 comments

Show HN: Play poker with LLMs, or watch them play against each other

https://llmholdem.com/
158•projectyang•1d ago•91 comments

Show HN: Porting xv6 to HiFive Unmatched board

https://github.com/eyengin/xv6-riscv-unmatched
26•eyengin•2d ago•4 comments

Show HN: I made a memory game to teach you to play piano by ear

https://lend-me-your-ears.specr.net
550•vunderba•2d ago•169 comments

Show HN: VAM Seek – 2D video navigation grid, 15KB, zero server load

https://github.com/unhaya/vam-seek
40•haasiy•1d ago•16 comments

Show HN: Various shape regularization algorithms

https://github.com/nickponline/shreg
76•nickponline•3d ago•5 comments

Show HN: `tc` like `wc` but for LLM tokens

https://github.com/jamierpond/tokencount
3•jamiepond•13h ago•0 comments
Open in hackernews

Show HN: 30k IKEA items in flat text

https://huggingface.co/datasets/tsazan/ikea-us-commercetxt
49•tsazan•5d ago
OP here.

I took the unofficial IKEA US dataset (originally scraped by jeffreyszhou) and converted all 30,511 products into a flat, markdown-like protocol called CommerceTXT.

The goal: See if a flatter structure is more efficient for LLM context windows.

The results: - Size: 30k products across 632 categories. - Efficiency: The text version uses ~24% fewer tokens (3.6M saved total) compared to the equivalent minified JSON. - Structure: Files are organized in folders (e.g. /products/category/), which helps with testing hierarchical retrieval routers.

The link goes to the dataset on Hugging Face which has the full benchmarks.

Parser code is here: https://github.com/commercetxt/commercetxt

Happy to answer questions about the conversion logic!

Comments

colinbartlett•3h ago
Any practical use for this IKEA data specifically?

Or just a handy open data set you could use to prove out the concept?

DennisP•3h ago
I assumed it's because IKEA is famous for flat packing its furniture.
tsazan•3h ago
Exactly! IKEA removes the air from the box to save space, CommerceTXT removes the HTML/JSON bloat to save tokens. You made my day!
embedding-shape•2h ago
> IKEA removes the air from the box to save space

Huh? I don't think that's true, there usually is some sort of structural elements inside of the package, meant to be thrown away (usually made with cardboard/paper), and all Ikea boxes definitively have lots of air inside of them, not sure what would make you say otherwise, unless it's some joke I'm missing?

jayknight•2h ago
A box that contained a fully assembled kitchen table would contain a lot more air. I think that comment just meant IKEA designs items that can be packaged into a minimal volume.
embedding-shape•2h ago
Ah yes, on second reading it's actually pretty obvious that is what parent meant and I was reading it too literally. Thanks for the clarification, that's certainly correct :)
WildGreenLeave•3h ago
I've had the idea to setup an AI that automatically (re)designs a room using IKEA stuff. It would definitely help me decorate my room in a better way.
tsazan•2h ago
That`s great use case. If you ship it, let me know!
vachina•2h ago
There’s already a schema.org spec that defines a JSON-LD structured data that you can embed on every of your product page to provide a machine readable interface of your product.

For example, Google’s indexers already use this to surface pricing data. https://developers.google.com/search/docs/appearance/structu...

tsazan•2h ago
That`s is valid for search engines. But if JSON-LD was sufficient for agents, Google wouldn't have launched UCP (Universal Commerce Protocol) yesterday.
vachina•1h ago
Took a look, UCP looks like presenting an entire shopping lifecycle for agents.

JSON-LD is just read-only metadata for machines.

tsazan•1h ago
True. But extracting that metadata requires parsing the full DOM. CommerceTXT is for efficient discovery. Scan inventory cheaply first, then commit to the transaction.
sognetic•2h ago
Interesting! So did you do any experiments on a relevant subset of the data to test whether LLM performance degrades by introducing a new, presumably unknown to the LLM, format?
tsazan•2h ago
The 24% token savings come from converting JSON syntax to CommerceTXT.
reddalo•2h ago
I don't understand why new proposed standards are still polluting the root namespace (also see llms.txt).

These things should be put under /.well-known [1], not in the root.

[1] https://en.wikipedia.org/wiki/Well-known_URI

dkdcio•2h ago
I was not aware you shouldn’t do that — what’s the rationale/historical context?
embedding-shape•2h ago
Like most standards: "Because it's a standard". Kind of like setting a .body for a GET request, you can kind of do that, but why not do it the way it's intended to instead? Use POST :)
gunalx•1h ago
I have seen post being used instead of get, because of having encrypted parameters by default.
embedding-shape•1h ago
Yeah, and also because of firewalls sometimes stripping body of GET requests (not responses mind you, we're talking requests) to a server, and also because it's really uncommon to put a body on a GET request ;)
ljm•59m ago
Sending a URL encoded form or some JSON in a POST request is also easier for most people to understand than the myriad ways you might format a query string in the URL (which may have a stricter limit on size).

You only have to look at how different services handle arrays in query strings to understand that serialising it is conceptually easier.

Comes up a lot in search or filter APIs. I'm sure there was some effort many moons ago to create a QUERY method for that.

buildbuildbuild•2h ago
User friendliness. I’ve seen several less-technical people able to quickly access, create, and understand “llms.txt”.

It’s not ideal but representative of the tension between user experience and technical correctness.

reddalo•36m ago
>less-technical people able to quickly access

Why would somebody even want to access that file? It doesn't make any sense to make that more user friendly, it's for LLMs.

JosephRedfern•2h ago
I've heard that LLMs can perform worse with these more efficient representations compared to e.g. JSON, because they've seen far fewer examples of them during training. Do you know how true that is?
TechSquidTV•2h ago
Absolutely, but usually when working with a bespoke format for optimization, it's paired with an LLM specifically trained on that format.
tsazan•2h ago
You are right about cryptic formats. CommerceTXT is semantically structured. Models like GPT, Claude and Gemini understand it out-of-the-box via ICL.
btrettel•2h ago
Interesting. I had been thinking recently about grep-friendly structured text file formats given the constraints of regex. But I hadn't considered that you could design a structured text file format to be LLM-friendly given token constraints.
tsazan•2h ago
You're right.If a format is easy to grep, it is almost always cheap to tokenize. We treat token density as a primary design constraint.
usefulposter•2h ago
"OP here" is the funniest tell that shows up when using an LLM to write a post for HN or Reddit.

It's funny because it makes zero sense in the body of an initial post!

In comments replying to people downthread - maybe. But opening a top-level post with "Original Poster here" is just silly and shows a lack of respect for community etiquette.

https://hn.algolia.com/?dateRange=pastYear&page=0&prefix=tru...

dkoy•2h ago
Good catch, think you’re on to something
tokai•43m ago
I just understand it as lightly humorous. Like starting a anecdote with

>be me

Seeing it as a lack of respect is a huge stretch. And kinda conceited that you accuse someone of such, on the basis of a two word opener.

croisillon•2h ago
years ago i did a small tool that, when you entered a product number, would scan all IKEA-websites with currency Euro and return the prices for each of them ; not that i expected furniture tourism to become a thing but it was funny
tsazan•1h ago
Reminds me of a friend who built a comment sentiment analyzer years ago. At the time, it looked like great innovation...
bleonard•59m ago
A blast from the past. When Taskrabbit was acquired by IKEA, I built several tools that went through the whole catalog via various crawling approaches. One tool was to estimate how long it would be to put each item together for an initial training set.
chuckadams•6m ago
Well of course it would be flat text... ;)