What's New

The latest features, improvements, and fixes in Steady.

Unreleased

✨ Features Added

  • Proactive Financial Intelligence: AI-powered insights that analyze your spending patterns, goals, and financial behavior
  • 7 Insight Types:
  • Interactive UI:
  • API Endpoints:
  • Smart Calculation: Safe to spend now factors in weekly goal contribution requirements
  • Formula Enhancement:
  • Visual Feedback: Dashboard shows "X set aside for goals this week" when active goals have target dates
  • Prevents Overspending: Ensures users don't accidentally spend money needed for savings goals
  • Works with All Calculation Methods:

🐛 Bug Fixes

  • Fixed property access: `tx.recurring` → `tx.isRecurring` (insights API)
  • Fixed description field: `description` → `rawDescription` (insights API)
  • Added proper type conversions for transaction amounts
  • Removed invalid `textStroke` CSS property from loading screen
  • Added responsive horizontal padding to all dashboard pages (`px-4 md:px-6 lg:px-8`)
  • Fixed content touching screen edges across all views
  • Removed visible circles from forecast graph (cleaner visualization)
  • Fixed net worth calculation to respect `includeInBalance` toggle
  • Account filtering now properly excludes toggled-off accounts

📝 Files Modified

  • `components/dashboard/smart-insights.tsx` - Smart insights component (177 lines)
  • `app/api/insights/route.ts` - Insights generation API (238 lines)
  • `app/api/insights/[id]/dismiss/route.ts` - Insight dismissal API (59 lines)
  • `SESSION-SUMMARY.md` - Session tracking document
  • `RAILWAY-DEBUG.md` - Deployment troubleshooting guide
  • `CHANGELOG.md` - This file
  • `components/dashboard/simple-dashboard.tsx` - Integrated SmartInsights, added goal savings display
  • `lib/db/queries/dashboard.ts` - Enhanced safe to spend calculation with goal contributions
  • `components/dashboard/dashboard-layout-client.tsx` - Added horizontal padding
  • `app/(dashboard)/loading.tsx` - Fixed TypeScript error
  • ...and 3 more

🔧 Technical Improvements

  • Optimized dashboard stats query with goal contribution calculation
  • Added parallel data fetching for insights generation
  • Improved transaction filtering for spending-tracked accounts
  • Insights cached for 30 seconds to reduce database load
  • In-memory dismissal tracking (consider DB migration for persistence)
  • Efficient date range calculations for rolling periods
  • Added `weeklyGoalSavings` to DashboardStats interface
  • Fixed transaction property type mismatches
  • Enhanced type conversions for numeric fields

📊 Impact

  • Users now see proactive financial guidance without asking
  • Safe to spend is more accurate for users with savings goals
  • Better visual hierarchy with proper spacing
  • Reduced cognitive load with dismissible insights
  • Build passing locally: ✅
  • TypeScript check: ✅ No errors
  • Lint warnings: Only ESLint suggestions (non-blocking)
  • Test coverage: Existing tests passing

🚀 Deployment

  • All changes committed and pushed to `main` branch
  • Railway deployment triggered with empty commit
  • Local build verification: PASSING
  • Production build verification: PASSING

📋 Next Steps

    🔍 Known Issues

    • ESLint warnings for `<img>` vs `<Image />` component usage
    • React hooks exhaustive-deps warnings (intentional omissions)
    • Dev server cache warnings (Next.js .next folder - safe to ignore)
    • Dismissed insights stored in-memory (resets on server restart)
    • Consider database table for persistent dismissals
    • Goal contribution calculation assumes valid target dates

    🎯 Success Metrics

    • Insight card interaction rate
    • Dismissal patterns
    • Action link click-through rate
    • Goal completion rate improvement
    • Build time: ~10-12 seconds
    • Bundle size: First Load JS 102 kB (shared)
    • Middleware: 82.8 kB
    • Static pages: 38 routes prerendered

    Earlier Changes

    • Friends feed integration (Duolingo-style social features)
    • Activity page redesign with tabs
    • Gamification system enhancements
    • Comprehensive improvements plan (977 lines)
    • Net worth account filtering
    • Forecast graph visual improvements
      Changelog - What's New in Steady | Steady