frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: I got fired so I built a bank statement converter

https://aussiebankstatements.com
3•matherslabs•3h ago
I recently got fired and decided to channel my energy into something productive. Over two weeks, I spent 16-hour days building a tool that converts Australian bank PDFs into clean, reliable CSVs, tailored specifically for Aussie banks.

Most Aussie banks only provide statements as a PDF, and generic converters often fail: columns drift, multi-line descriptions break parsing, headers shift. Existing tools don’t handle it well and I wanted a tool that just works.

To get started, I used my own bank statements to build the initial parsers. There was a "duh" moment when I realised how hard it is to get more realistic test data. People don't just hand over their financial ledgers. This solidified my core principle: trust and privacy had to be the absolute top priority.

I initially tried building everything client-side in JavaScript for maximum privacy, but performance and reliability were poor, and exposing the parsers on the front-end would have made them easy to copy.

I settled on a middle ground: a Python and FastAPI backend on Google Cloud Run. This lets me balance reliability with a strict privacy architecture. Files are processed in real-time and the temp file is deleted immediately after the request is complete. There is no persistent storage and no logging of request bodies.

My technical approach is straightforward and focused on reliability:

- I use pdfplumber to extract text, avoiding complex and error-prone OCR.

- I apply a set of bank-specific regex patterns to pinpoint dates, amounts, and descriptions.

- A lookahead heuristic correctly merges multi-line transactions. Each parser is customised to its bank's unique PDF layout quirks.

The project is deliberately focused. Instead of supporting hundreds of banks with mediocre results, I'm concentrating on a small set to get them right. It currently supports CommBank, Westpac, UBank, and ING, with ANZ and NAB next. The whole thing is deployed on Cloudflare Pages and outputs clean CSVs ready for Excel, Google Sheets, Xero, or MYOB.

It was a fun challenge in reverse-engineering messy, real-world data.

Try it out here: https://aussiebankstatements.com

I'd love to hear feedback. If it breaks on your statement, a redacted sample would be a huge help for improving the parser.

I'm also curious to hear how others here have tackled similar messy data extraction challenges.

Show HN: A CSS-Only Terrain Generator

https://terra.layoutit.com
199•rofko•5h ago•60 comments

Show HN: I built a local-first daily planner for iOS

https://apps.apple.com/ca/app/to-do-list-planner-zesfy/id6479947874
62•zesfy•5h ago•45 comments

Show HN: I built a highly customizable mental arithmetic trainer for iOS

https://apps.apple.com/us/app/athena-math/id6747783222
3•dempedempe•1h ago•0 comments

Show HN: Pion/rtwatch – Watch video in sync with friends, pause/seek on back end

https://github.com/pion/rtwatch
2•Sean-Der•2h ago•1 comments

Show HN: Yourshoesmells.com – Find the most smelly boulder gym

https://yourshoesmells.com
38•boshenz•10h ago•38 comments

Show HN: Nallely a modular reactive Python framework for custom MIDI instruments

https://github.com/dr-schlange/nallely-midi
2•drschlange•3h ago•0 comments

Show HN: I got fired so I built a bank statement converter

https://aussiebankstatements.com
3•matherslabs•3h ago•0 comments

Show HN: MyTimers.app offline-first PWA with no build step and zero dependencies

https://mytimers.app/
39•y3k•14h ago•27 comments

Show HN: a Rust ray tracer that runs on any GPU – even in the browser

https://github.com/tchauffi/rust-rasterizer
91•tchauffi•1d ago•25 comments

Show HN: Agor → Figma for AI Coding (Open Source)

https://agor.live
4•caravel•5h ago•2 comments

Show HN: Tamagotchi P1 for FPGAs

https://github.com/agg23/fpga-tamagotchi
61•agg23•6d ago•11 comments

Show HN: I made a website that vibe-codes itself

https://theboard.stavros.io
14•stavros•6h ago•4 comments

Show HN: I Built a Prototype for a Universal Causal Language (UCL)

https://github.com/ndbroadbent/universal_causal_language
2•nathan_f77•7h ago•0 comments

Show HN: FinBodhi – Local-first, double-entry app/PWA for your financial journey

https://finbodhi.com/
37•ciju•1d ago•20 comments

Show HN: Centia.io – Open PostgreSQL/PostGIS back end for developers

https://centia.io/
23•mhoegh•1w ago•6 comments

Show HN: Strange Attractors

https://blog.shashanktomar.com/posts/strange-attractors
789•shashanktomar•3d ago•75 comments

Show HN: Anki-LLM – Bulk process and generate Anki flashcards with LLMs

https://github.com/raine/anki-llm
57•rane•2d ago•22 comments

Show HN: Serie – A rich Git commit graph in your terminal

https://github.com/lusingander/serie
16•lusingander•1d ago•2 comments

Show HN: Why write code if the LLM can just do the thing? (web app experiment)

https://github.com/samrolken/nokode
432•samrolken•3d ago•317 comments

Show HN: Chess960v2 – Stockfish tournament with different starting positions

https://chess960v2.com/en
2•lavren1974•15h ago•1 comments

Show HN: Pipelex – Declarative language for repeatable AI workflows

https://github.com/Pipelex/pipelex
121•lchoquel•1w ago•27 comments

Show HN: Glitch Text Generator – Create stunning unicode text effects

https://glitch-text.com/
3•chwiho•17h ago•0 comments

Show HN: In a single HTML file, an app to encourage my children to invest

https://roberdam.com/en/dinversiones.html
247•roberdam•5d ago•435 comments

Show HN: An AI to match your voice to songs and artists you should sing

https://coach.singonesong.com
45•JacobSingh•1d ago•4 comments

Show HN: Quibbler – A critic for your coding agent that learns what you want

https://github.com/fulcrumresearch/quibbler
114•etherio•4d ago•27 comments

Show HN: Learn German with Games

https://www.learngermanwithgames.com/
125•predictand•6d ago•106 comments

Show HN: Secret Management for Local Development

https://github.com/athishrao/crux-vault
3•athish-rao•21h ago•0 comments

Show HN: WebAudio Data-Driven audio engine

https://github.com/mikezaby/blibliki
3•mikezaby•22h ago•1 comments

Show HN: AgentML – SCXML for Deterministic AI Agents (MIT)

https://github.com/agentflare-ai/agentml
5•jeffreyajewett•22h ago•1 comments

Show HN: An AI that keeps your internal documentation alive

https://davia.ai/blog/internal-wiki-auto
9•ruben-davia•23h ago•0 comments