Every bank exports CSVs differently: junk rows up top, split debit and credit columns, stray commas. None of them answer the one question that matters. Where did the money go?
A tolerance for messy dataevery bank exports CSVs differently
A capstone teamwilling to follow the plan
At least one testthat proves you wrong
Quest journal
I noticed every bank exports CSVs differently, and none of them say where the money went.
I rallied a capstone team and proposed Pocket Pulse.
I taught it to find the real header row, skip the junk above it, and merge split debit and credit columns.
I gave every transaction a fingerprint so the same charge never counts twice, and backed it with a database constraint.
I was sure the dashboard matched the ledger. A test disagreed. I traced it to inconsistent SQL filters and added a regression test.
I finished with an 82-case QA matrix across import, cleanup, classification, review, and reporting.
Quest complete!
Quest complete!
You have completed Pocket Pulse
3 Quest points
4,200 Construction XP
Unlocked: the review-first workflow pattern
Also counted toward a B.S. in Computer Information Systems
Reward: the Pocket Pulse dashboard
Mini-game
Tame the CSV
This is the Pocket Pulse logic in miniature, running in your browser. Watch it tame a messy example export, or bring your own. Your file never leaves this tab.
Source: example export, Jul–Aug 2026
IntakeStep 1 of 6…
Detect formatStep 2 of 6…
NormalizeStep 3 of 6…
DeduplicateStep 4 of 6…
ClassifyStep 5 of 6…
LedgerStep 6 of 6…
Raw export as the bank sent it
Clean ledger
Date
Merchant
Category
Amount
Quest complete!
Dashboard
Built from the clean ledger
Income$0.00
Spending$0.00
Net$0.00
Where it went
Tap a category to see the rows behind it.
Repeat charges
Loot
Artifacts recovered
Screens from the full capstone build: React, Express, and PostgreSQL. The real app lives at pocket-pulse.com.
Leak review groups repeat charges by merchant. RareThe ledger behind every chart, filterable and searchable. Rare
Lore
Known limits
Uploads are manual by design. Pocket Pulse never asks for bank credentials.
Every chart traces back to the rows behind it.
It is not an accounting system and not a bank integration.
This page runs on example data. A file you try stays in your browser.