Projects

OppCost

Created Oct 2024
Next.jsAnt DesignZustandPrismaNeonECharts

OppCost is a web app that helps users make better financial decisions by comparing the long-term cost of different scenarios β€” whether it's choosing between job offers, subscription plans, or recurring expenses. It’s built with Next.js and React, with interactive visualizations that show how costs play out over time.


πŸ“š Use Cases

The idea for OppCost came from a personal need: comparing job offers with different salaries, benefits, and cost-of-living tradeoffs. But the tool is designed to work for a variety of cost-based decisions, including:

  • Job A vs. Job B (salary, benefits, remote vs. commute)
  • Rent vs. Buy
  • Freelancer vs. Full-time
  • Annual vs. Monthly subscriptions
  • Car ownership vs. ride-hailing

Users can model any scenario with a combination of fixed costs, recurring costs, durations, and assumptions β€” and instantly visualize the long-term impact.

Screenshot of the Edit Page
Edit Page

🧱 Stack & Architecture

OppCost is currently built with:

Data is persisted in a Neon-hosted Postgres database via Prisma, with user sessions tied to saved comparisons. However, I’m currently exploring a simpler offline-first direction β€” removing online features and auth to reduce complexity and friction.


🎨 UI & Refactor Plans

OppCost originally used Ant Design, but I plan on migrating to shadcn/ui for:

  • More accessible, unstyled primitives
  • Easier integration with Tailwind CSS
  • Better control over theming and dark mode

This move also aligns it more closely with my design stack in other projects like FinApp and raynold.dev.


πŸ“Š Visualizations

The core of OppCost is its timeline-based comparison chart:

  • πŸ“ˆ Cumulative costs of each scenario over time
  • πŸ” Recurring vs. one-time breakdowns
  • πŸ“… Adjustable durations, inflation, or one-off costs

Charts update in real time as the user tweaks values, helping them explore "what-if" scenarios fluidly and visually.

Screenshot of the Results Page
Results Page

πŸš€ Deployment

OppCost is deployed on Vercel, with:

  • CI/CD and preview deployments
  • Edge performance and auto-scaling
  • Environments for development and production

The live demo is available at oppcost.raynold.dev


βœ… Outcome & Next Steps

OppCost is a focused tool for thinking long-term about financial decisions. It’s especially helpful when comparing tradeoffs that don’t feel obvious on a monthly basis, but add up significantly over time.

I'm currently experimenting with:

  • Simplifying the architecture by removing authentication and online storage
  • Polishing the UX with shadcn/ui and better form handling
  • Offline-first mode with client-side persistence only

The goal is to make OppCost feel fast, approachable, and useful even for quick, one-time comparisons β€” no signup or backend required.

Demo: https://oppcost.raynold.dev

Β© 2025 Raynold Tan