Selected Work
Vane folded-paper logo
In developmentFintech · Product Design · Backend Prototype

More value from the cards you already carry.

Vane explores a simpler way to navigate card rewards, spending limits, and credit health through one considered mobile experience.

View working prototype
Vane sample

Everyday

•••• 2048

Best fit

3% estimated back

The problem

Too many rules for one everyday decision.

Managing several cards means remembering reward categories, tracking balances, and checking offer conditions. Vane brings those decisions into a clearer experience, helping users understand which card may suit their next purchase.

01

Reward rules are scattered.

02

Balances affect which card makes sense.

03

Benefits can be difficult to understand and track.

The product concept

Your cards. Working smarter.

Planned mobile experience

Choose a card with context

Compare estimated rewards against projected balances and user-selected limits.

Understand the benefits

Separate confirmed cashback, pending benefits, and estimated points value.

Keep the wallet organized

Explore a unified view of cards, balances, reward rules, and offers.

Build healthier credit habits

Explore credit tracking, payment reminders, and balance-planning guidance without promising score improvements.

Product design showcase

One considered mobile experience.

All interfaces and data shown here are illustrative concepts. Cards, transactions, offers, scores, and charts are fictional.

Good morning

Your wallet

NR

Benefits this month

$42.80

$18.20 confirmed · $24.60 pending

Recommended for groceries

Sample Everyday

Estimated 3% back · within your limit

Recent activity

North Market−$48.20
Metro Coffee−$6.40
Add a card
Home · concept interface · illustrative data

3 sample cards

Wallet

Vane sample

Everyday

•••• 2048

Vane sample

Travel

•••• 2048

Projected balance$1,284

38% of user-selected limit

Reward rule

3% groceries · active · cap applies

Wallet · concept interface · illustrative data

Illustrative only

Credit health

Simulated score

742

Illustrative history

Utilization24%

Suggested actions

Plan a balance payment before the next cycle.
Credit Health · concept interface · illustrative data

What is built

A working recommendation backend.

A working Python and FastAPI backend evaluates a proposed purchase against supplied card balances and reward rules.

22 passing automated tests, plus a verified local demo request

Cashback and points comparisons using explicit point valuations
Projected credit balances, including pending charges
Configurable utilization limits and debit reserves
Category reward caps and activation flags
Exclusion of disabled cards and stale balance snapshots
Ranked recommendations with explanations
A ‘no eligible card’ result when constraints cannot be met
PythonFastAPIPydanticDecimal arithmeticREST APIStateless request-based evaluation

The backend does not include a database, user authentication, live bank connections, real credit-score data, or payment processing.

A recommendation example

A ranked answer with context.

Illustrative request

$120 grocery purchase · two fictional cards · current and pending balances supplied

Recommended: Sample Everyday

Ranks higher because its active grocery reward produces the strongest estimated value while the projected balance remains within the user’s selected utilization limit.

How the algorithm works

Evaluate constraints

Project balances, pending charges, reserves, limits, caps, and card eligibility.

Calculate value

Compare cashback and points through explicit, user-supplied point valuations.

Rank and explain

Return eligible options in order with a readable reason—or no eligible card.

AI opportunity · planned

Explain, don’t obscure.

A future AI layer could translate recommendation factors into clearer natural-language guidance, summarize changing reward rules, and help users explore “what if” purchase scenarios. Deterministic constraints and calculations would remain the source of truth.

AI is not part of the implemented backend today.