frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Fahmatrix – A Lightweight, Pandas-Like DataFrame Library for Java

https://github.com/moustafa-nasr/fahmatrix
46•mousomashakel•11mo ago
Hey HN, I’ve built Fahmatrix, a minimal, fast Java library for working with tabular data — inspired by Python’s pandas, but designed for performance and simplicity on the JVM.

After working extensively with Python’s data stack, I often ran into limitations related to speed, especially in larger or long-running data workflows. So I built Fahmatrix from scratch to offer similar APIs for manipulating CSVs, performing summary statistics, slicing rows/columns, and more — but all in Java.

Features:

Lightweight and dependency-free

CSV/TSV import with auto-headers

Series/DataFrame structures (like pandas)

describe(), mean(), stdDev(), percentile() and more

Fast parallel operations on numeric columns

Java 17+ support

Docs: https://moustafa-nasr.github.io/Fahmatrix/ GitHub: https://github.com/moustafa-nasr/fahmatrix

I’d love feedback from the Java and data communities — especially if you’ve ever wanted a simple dataframe utility in Java without needing full-scale ML libraries.

Happy to answer any questions!

Comments

rickette•11mo ago
Congrats on putting this out there. There isn't a de facto pandas-like library in Java like you said. But for Kotlin there is: https://github.com/Kotlin/dataframe
mousomashakel•11mo ago
Thanks so much! Yep, I’ve seen the Kotlin DataFrame lib — very elegant. Fahmatrix is meant for plain Java users who want similar capabilities without switching ecosystems. Appreciate the support!
uwemaurer•11mo ago
Always great to see efforts to make working with data frames easier. Here are some similar data frame libraries for Java:

https://github.com/jtablesaw/tablesaw

https://github.com/dflib/dflib

My preferred way is just use duckdb java API. I didn't see anything better in performance/efficiency. Also a SQL query is often easier to write

theanonymousone•11mo ago
Yes. It has bothered me for a long time too. Maybe the best mix is a dataframe library with basic operations (column select, non-null etc), which also allows SQL for more complex stuff?
radus•11mo ago
Polars and duckdb interoperate nicely and can enable this flexibility
theanonymousone•11mo ago
Does Polars have a Java library?
mousomashakel•11mo ago
Totally agree that SQL can be the best tool for many jobs. My goal with Fahmatrix is to serve the opposite niche: where devs want something that's Java-native, procedural, and simple without reaching for an external engine. SQL support or DSL might come later though — I see the appeal.
theanonymousone•11mo ago
Sure. So maybe notehr comment would be to make it (particularly the Series class), as compatible with Java Streams as possible.

Next step would likely be compatibility with popular libraries such as Apache Commons Math: https://commons.apache.org/proper/commons-math/userguide/sta...

mousomashakel•11mo ago
Thanks! I'm aware of those great projects. Fahmatrix aims to offer a lightweight, dependency-free alternative that’s easy to embed in any Java app. DuckDB is super impressive, especially for SQL-heavy tasks — but my goal is more about a native, fluent API for those who prefer direct Java code over SQL.
skanga•11mo ago
What about Tablesaw, Apache Arrow? How does this compare ...
mousomashakel•11mo ago
Good question. I’ll publish benchmarks soon, but the core difference is that Fahmatrix is fully Java, no JNI, and minimalistic — ideal for small projects or environments like Android. Tablesaw and Arrow are more powerful, but heavier. Fahmatrix aims to be the “just enough” middle ground.
owlstuffing•11mo ago
Nice!

I’m currently using manifold-sql with duckdb for this.

mousomashakel•11mo ago
Thanks! That’s a great combo — manifold-sql + duckdb gives you strong typing with powerful SQL under the hood. Fahmatrix is aiming to complement that approach for cases where you want quick, native Java code without SQL — e.g., when building data flows or custom logic inline. Would love to hear if you’ve hit any pain points that a Java-native approach could help with.

Show HN: A new benchmark for testing LLMs for deterministic outputs

https://interfaze.ai/blog/introducing-structured-output-benchmark
30•khurdula•3h ago•11 comments

Show HN: Adblock-rust Manager – Firefox extension to enable the Brave ad blocker

https://github.com/electricant/adblock-rust-manager
80•electricant•6h ago•33 comments

Show HN: Auto-Architecture: Karpathy's Loop, pointed at a CPU

https://github.com/FeSens/auto-arch-tournament/blob/main/docs/auto-arch-tournament-blog-post.md
222•fesens•1d ago•72 comments

Show HN: Rocky – Rust SQL engine with branches, replay, column lineage

https://github.com/rocky-data/rocky
108•hugocorreia90•1d ago•43 comments

Show HN: My retired dad and I made a daily, somewhat difficult, quiz

https://kviss.eu/
20•steinvakt2•5h ago•7 comments

Show HN: Rip.so – a graveyard for dead internet things

https://rip.so
156•bozdemir•9h ago•107 comments

Show HN: Send your first Peppol e-invoice in 5 minutes (EU mandate live)

https://getpeppr.dev/
2•zerolooplabs•1h ago•0 comments

Show HN: Drive any macOS app in the background without stealing the cursor

https://github.com/trycua/cua
169•frabonacci•1d ago•38 comments

Show HN: AgentPort – Open-source Security Gateway For Agents

https://agentport.sh/
5•yakkomajuri•2h ago•1 comments

Show HN: Live Sun and Moon Dashboard with NASA Footage

https://www.lumara-space.app/
208•beeswaxpat•1d ago•64 comments

Show HN: Study Bible MCP – scholarly Greek/Hebrew lexicons and morphology

https://github.com/djayatillake/studybible-mcp
7•DSJayatillake•3h ago•9 comments

Show HN: Platypus – Local meeting transcription, notes, and chat (Tauri, Rust)

https://platypusnotes.com/
3•pixelmash13•4h ago•0 comments

Show HN: AI Skills Leaderboard. What's your score?

https://aisa.to
2•Ozzie-D•5h ago•0 comments

Show HN: fixiproject.org – minimalist web tools

https://fixiproject.org
2•recursivedoubts•5h ago•0 comments

Show HN: A private-ish bookmark app that uses GitHub Gist as its back end

https://github.com/chrisdiana/gistkeep
3•inflam52•6h ago•2 comments

Show HN: Stateless, system-wide Transparent Tor Proxy for Linux (v0.1.0)

https://github.com/onyks-os/TransparentTorProxy
2•onyks•6h ago•0 comments

Show HN: OSS Agent I built topped the TerminalBench on Gemini-3-flash-preview

https://github.com/dirac-run/dirac
385•GodelNumbering•2d ago•144 comments

Show HN: Utilyze – an open source GPU monitoring tool more accurate than nvtop

https://www.systalyze.com/utilyze
123•ManyaGhobadi•2d ago•28 comments

Show HN: A terminal spreadsheet editor with Vim keybindings

https://github.com/garritfra/cell
122•garritfra•2d ago•51 comments

Show HN: Pi-hosts – Give the Pi coding agent access to your servers

https://github.com/hunvreus/pi-hosts
19•hunvreus•17h ago•0 comments

Show HN: TiGrIS, a tiling compiler that fits ML models onto embedded devices

https://github.com/raws-labs/tigris
20•asteinh•12h ago•0 comments

Show HN: GitChop – Git rebase -I without the TODO file

https://bendansby.com/apps/gitchop.html
3•webwielder2•4h ago•1 comments

Show HN: I built a Chinese learning app that teaches through sentence patterns

https://doudou-chinese.com/
7•vojd•8h ago•4 comments

Show HN: I wrote a DOOM clone in my own programming language

https://spectrelang.org/log/devlog#cubedoom
21•pizza_man•1d ago•5 comments

Show HN: Waiting for LLMs Suck – Give your user a game

https://github.com/ftaip/waiting-game
36•dalemhurley•1d ago•16 comments

Show HN: GeoTraceroute – Traceroutes on a 3D globe and submarine cables

https://geotraceroute.com
21•Himred•17h ago•1 comments

Show HN: The Unix Magic poster, annotated (updated)

https://github.com/drio/unixmagic
74•drio•2d ago•7 comments

Show HN: Tiao, A two-player turn-based board game

https://playtiao.com
74•trebeljahr•2d ago•37 comments

Show HN: Free textbook on engineering thermodynamics

https://thermodynamicsbook.com/
187•2DcAf•3d ago•47 comments

Show HN: 49Agents – 2D Canvas IDE for Orchestrating Agents, Repos, Issues

https://github.com/49Agents/49Agents
21•alpadurza•19h ago•2 comments