frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: DevIndex – Ranking 50k GitHub developers using a static JSON file

1•tobiu•1h ago
Hey HN,

I’ve always been frustrated by the lack of an accurate ranking for top open-source contributors on GitHub. The available lists either cap out early or are highly localized, completely missing developers with tens or hundreds of thousands of contributions.

So, I built DevIndex to rank the top 50,000 most active developers globally based on their lifetime contributions.

From an engineering perspective, the constraint I imposed was: *No backend API.* I wanted to host this entirely on GitHub Pages for free, meaning the browser had to handle all 50,000 data-rich records directly.

Here is how we made it work:

1. *The Autonomous Data Factory (Backend):* Because GitHub's API has no "Lifetime Contributions" endpoint, we built a Node.js pipeline running on GitHub Actions. It uses a "Network Walker" spider to traverse the social graph (to break out of algorithmic filter bubbles) and an Updater that chunks GraphQL queries to prevent 502 timeouts. The pipeline continuously updates a single `users.jsonl` file.

    *Privacy Note:* We use a "Stealth Star" architecture for opt-outs. If a dev stars our opt-out repo, the pipeline cryptographically verifies them, instantly purges their data, and blocklists them. No emails required.
2. *Engine-Level Streaming (O(1) Memory Parsing):* You can't `JSON.parse()` a 23MB JSONL file without freezing the UI. We built a Stream Proxy using `ReadableStream` and `TextDecoderStream` to parse the NDJSON incrementally, rendering the first 500 users instantly while the rest load in the background.

3. *Turbo Mode & Virtual Fields:* Instantiating 50k JS objects crushes memory. The store holds raw POJOs exactly as parsed. Complex calculated fields (like "Total Commits 2024") use prototype-based getters dynamically generated by a RecordFactory. Adding 60 new data columns adds 0 bytes of memory overhead per record.

4. *The "Fixed-DOM-Order" Grid:* We had to rewrite our underlying UI engine (Neo.mjs). Traditional VDOMs die on massive lists because scrolling triggers thousands of `insertBefore`/`removeChild` mutations. We implemented a strict DOM pool. The VDOM array length never changes. Rows leaving the viewport are recycled in place via hardware-accelerated CSS `translate3d`. A 60fps vertical scroll across 50,000 records generates 0 structural DOM mutations.

5. *Quintuple-Threaded Architecture:* To keep sorting fast and render "Living Sparklines" in the cells, we aggressively split the workload across workers. The Main Thread only applies DOM updates. The App Worker handles the 50k dataset, streaming, and VDOM generation. A dedicated Canvas Worker renders the sparklines independently at 60fps using `OffscreenCanvas`.

The entire backend pipeline, streaming UI, and core engine rewrite were completed in one month by myself and my AI agent.

Live App (see where you rank): https://neomjs.com/apps/devindex/ Code / 26 Architectural Guides: https://github.com/neomjs/neo/tree/dev/apps/devindex

Would love to hear feedback on the architecture, especially from anyone who has tackled "Fat Client" scaling issues or massive GraphQL aggregation!

Sher – Ephemeral preview URLs from your terminal

https://sher.sh
1•andout_•7m ago•0 comments

Latency numbers every programmer should know

https://cheat.sh/latency
1•ksec•12m ago•0 comments

Death girls' primary school in southern Iran's Hormozgan province rises to 40

https://economictimes.indiatimes.com/news/defence/iran-war-death-toll-in-strike-on-girls-school-r...
2•lr0•18m ago•0 comments

A Day in the Life of an Enshittificator [video]

https://www.youtube.com/watch?v=T4Upf_B9RLQ
1•giaco_hendel•21m ago•0 comments

U.S. has begun "major combat operations in Iran"

https://apnews.com/article/iran-us-trump-address-f662a4f3378535d81197be699fb35a3e
2•tunapizza•22m ago•0 comments

Show HN: LexPrep – reproducible lexical preprocessing for research experiments

https://github.com/sajjad-mazaheri/lexprep
1•Sajjad_m•23m ago•0 comments

No Bookmarks

https://nik.art/no-bookmarks/
1•herbertl•24m ago•0 comments

Adapting the Principles of Engineering to Make Watches

https://www.nytimes.com/2026/02/28/fashion/watches-apiar-3d-printing.html
1•pretext•24m ago•0 comments

Show HN: Telos – A structured context framework for humans and AI agents

https://github.com/noahatfin/telos
1•wrencanfly•25m ago•0 comments

Show HN: Gitcredits – movie-style end credits for any Git repo in your terminal

https://github.com/Higangssh/gitcredits
2•swq115•25m ago•0 comments

Claude Code Chooses – a followup deepdive on email providers

https://akshaychugh.xyz/writings/png/how-claude-code-chooses
2•akshay2603•27m ago•0 comments

Ghostty.style – web gallery of Ghostty themes

https://ghostty-style.vercel.app/
1•mrled•27m ago•0 comments

TanStack Form components that play well with Playwright

https://jxd.dev/writing/playwright-tanstack-form/
1•jamie_davenport•28m ago•0 comments

All LLM

https://llmmodels.org/
1•allllm•28m ago•1 comments

Io: Possibly the simplest practical programming notation. (1989) [pdf]

https://shachaf.net/papers/Io%3A%20a%20new%20programming%20notation.pdf
1•fanf2•28m ago•0 comments

Why Objective-C

https://inessential.com/2026/02/27/why-objective-c.html
1•ingve•29m ago•0 comments

Show HN: Expose – OSS localhost tunneling CLI with a self‑hosted server

https://github.com/kernelshard/expose
1•samiulsk•30m ago•0 comments

Claude Code is changing my life

https://www.oliur.com/claude-code-is-changing-my-life
2•ingve•31m ago•0 comments

Don't trust AI agents

https://nanoclaw.dev/blog/nanoclaw-security-model
9•gronky_•31m ago•5 comments

The Birth of Parallel Imaging

https://magazine.hms.harvard.edu/articles/birth-parallel-imaging
1•saikatsg•32m ago•0 comments

Show HN: Grantex – Delegated authorization protocol for AI agents

https://github.com/mishrasanjeev/grantex
2•mishrasanjeev•32m ago•0 comments

30 months to 3MWh – some more home battery stats

https://shkspr.mobi/blog/2026/02/30-months-to-3mwh-some-more-home-battery-stats/
2•edward•35m ago•0 comments

Learning to Rewrite Tool Descriptions for Reliable LLM-Agent Tool Use

https://arxiv.org/abs/2602.20426
1•Anon84•35m ago•0 comments

Department of Defense Directive 3000.09: Autonomy in Weapon Systems (2023) [pdf]

https://www.esd.whs.mil/portals/54/documents/dd/issuances/dodd/300009p.pdf
1•throw0101c•35m ago•0 comments

Claude just jumped to #2 on the iOS App Store

https://xcancel.com/search?f=tweets&q=2027614403693318348
2•doener•36m ago•0 comments

Nao: Open-Source Analytics Agent

https://github.com/getnao/nao
1•georgehill•38m ago•0 comments

AI companies want you to stop chatting with bots and start managing them

https://arstechnica.com/information-technology/2026/02/ai-companies-want-you-to-stop-chatting-wit...
1•joozio•39m ago•0 comments

The Download: how AI is shaking up Go, and a cybersecurity mystery

https://www.technologyreview.com/2026/02/27/1133754/the-download-how-ai-is-shaking-up-go-and-a-cy...
1•joozio•40m ago•0 comments

We will learn a lot about Silicon Valley in the upcoming days

https://garymarcus.substack.com/p/did-trump-just-overplay-his-hand
1•only_in_america•41m ago•0 comments

Depict 0.2.0 – (tool 4 perf analysis)

https://github.com/kaleidawave/depict/releases/tag/v0.2.0
1•kaleidawave•42m ago•0 comments