This website requires JavaScript.
c32c828512
Add restart: unless-stopped to all services
main
Catherine Renelle
2026-05-15 21:32:01 -04:00
62792e73e1
Remove docker-cleanup container from docker-compose
Catherine Renelle
2026-02-16 19:17:50 -05:00
ce050a73b5
Add MIT license
Catherine Renelle
2026-02-16 19:13:10 -05:00
7f5147a624
Add README with feature overview, security details, and quick start guide
Catherine Renelle
2026-02-16 19:10:03 -05:00
4808e5d67d
Add provider sub-tabs and collapsible panels to Bank Connections settings
Catherine Renelle
2026-02-16 19:05:24 -05:00
db878c109c
Update existing SimpleFIN connections on re-connect instead of creating duplicates
Catherine Renelle
2026-02-16 15:59:23 -05:00
8b57aee672
Set ASPNETCORE_ENVIRONMENT to Development in docker-compose and pass through encryption key
Catherine Renelle
2026-02-16 13:36:40 -05:00
2f389ab8e9
Security hardening: fix IDOR vulnerabilities, add rate limiting, SSRF protection, and encryption upgrades
Catherine Renelle
2026-02-16 12:53:20 -05:00
fd14473125
Hide Classify Uncategorized button when AI categorization is disabled
Catherine Renelle
2026-02-16 00:04:42 -05:00
ac08e21e55
Default Settings page to Profile tab
Catherine Renelle
2026-02-15 23:56:48 -05:00
beb0ef521b
Restructure AI settings into 3 cards and add AI Chat enable/disable toggle
Catherine Renelle
2026-02-15 23:54:51 -05:00
7f15cd11e3
Add investment holdings CRUD (create, edit, delete)
Catherine Renelle
2026-02-15 23:31:44 -05:00
24839a3a21
Add 7-day sync overlap buffer and improve empty investments state
Catherine Renelle
2026-02-15 23:16:28 -05:00
e9ad7c0248
Group accounts by Assets and Liabilities with section totals
Catherine Renelle
2026-02-15 22:52:53 -05:00
5537945276
Organize nav menu into grouped sections with dividers
Catherine Renelle
2026-02-15 22:50:39 -05:00
81d7337ce8
Make account cards equal height with bottom-aligned actions
Catherine Renelle
2026-02-15 22:47:32 -05:00
ab335dac55
Add warm neutral background to light theme
Catherine Renelle
2026-02-15 22:16:07 -05:00
e83cb582a7
Fix pie chart highlight by directly dimming non-hovered slices
Catherine Renelle
2026-02-15 21:50:43 -05:00
7a333a1705
Replace built-in chart legend with custom legend for reliable hover sync
Catherine Renelle
2026-02-15 21:30:22 -05:00
1df5283188
Fix legend hover not highlighting table row
Catherine Renelle
2026-02-15 21:23:30 -05:00
fcffdce6d8
Fix payee action buttons layout and chart tooltip hover highlight
Catherine Renelle
2026-02-15 21:10:17 -05:00
94049c08a8
Highlight table row when hovering spending chart legend items
Catherine Renelle
2026-02-15 19:57:54 -05:00
f3211b7ee7
Add global multi-account filter to all reports with chart hover interaction
Catherine Renelle
2026-02-15 18:15:46 -05:00
63a58b10c0
Default reports to This Month, add Last Month preset, fix chart theme colors
Catherine Renelle
2026-02-15 17:26:36 -05:00
dc4fd692ba
Limit dashboard spending to top 10 categories and fix nav double-highlight
Catherine Renelle
2026-02-15 15:59:27 -05:00
d5c90a9197
Include uncategorized spending and show all categories on dashboard
Catherine Renelle
2026-02-15 15:42:04 -05:00
e2b69b41f4
Show current month's payment in amortization schedule
Catherine Renelle
2026-02-14 22:35:53 -05:00
0392fc4690
Use daily per-diem for payoff calculation and rename dashboard bills section
Catherine Renelle
2026-02-14 22:32:01 -05:00
f148b35ab2
Add payoff amount, fix dialog overlay and nav highlight for sub-routes
Catherine Renelle
2026-02-14 22:12:50 -05:00
d28faa6838
Hide past payments in amortization schedule by default
Catherine Renelle
2026-02-14 22:00:15 -05:00
1b06894383
Use daily interest accrual for lines of credit and auto loans, fix hasLoanDetail on account list
Catherine Renelle
2026-02-14 20:47:14 -05:00
47010e5f55
Use standard monthly compounding for all loan types
Catherine Renelle
2026-02-14 20:10:18 -05:00
dd2cdbf815
Use daily interest accrual for HELOC and auto loan amortization
Catherine Renelle
2026-02-14 18:41:32 -05:00
98104c0c0e
Add estimation disclaimer to loan amortization view
Catherine Renelle
2026-02-14 17:36:46 -05:00
428e18bb41
Fix date display timezone shift and revert to standard monthly interest
Catherine Renelle
2026-02-14 17:26:55 -05:00
0f3ad89c59
Fix loan edit concurrency error with ExecuteDeleteAsync
Catherine Renelle
2026-02-14 17:12:20 -05:00
6ddecd7a99
Use first payment date and maturity date instead of origination date and term
Catherine Renelle
2026-02-14 17:06:21 -05:00
7efeb4957b
Fix concurrency exception when editing loan details
Catherine Renelle
2026-02-14 17:00:47 -05:00
b7ef9e36ce
Fix loan interest calculation to use daily accrual instead of rate/12
Catherine Renelle
2026-02-14 16:52:50 -05:00
08a0bcda3d
Don't pre-populate original balance from current balance in loan defaults
Catherine Renelle
2026-02-14 16:39:23 -05:00
2ae12770cf
Fix date timezone shift in loan detail maturity date computation
Catherine Renelle
2026-02-14 16:33:46 -05:00
3bb9c688ed
Auto-populate loan details from Plaid liabilities and pre-fill setup form
Catherine Renelle
2026-02-14 16:23:49 -05:00
a689681872
Normalize PayeeName on import and propagate payee changes to transactions
Catherine Renelle
2026-02-13 22:14:14 -05:00
c91d6125a4
Preserve transaction status when editing instead of resetting to Uncleared
Catherine Renelle
2026-02-13 21:22:49 -05:00
8f4d4eaabb
Exclude current category from parent options when editing
Catherine Renelle
2026-02-13 18:46:32 -05:00
0b4fa68236
Add edit, delete, and deactivate actions to categories view
Catherine Renelle
2026-02-13 18:20:42 -05:00
b38865050c
Include memo field in AI chat transaction summaries
Catherine Renelle
2026-02-13 17:24:37 -05:00
688dd333dc
Add adjustable context size, custom chatbot name, and cat icon for AI chat
Catherine Renelle
2026-02-13 14:38:07 -05:00
0ad8e472f7
Auto-reload transactions after AI makes changes
Catherine Renelle
2026-02-13 14:07:09 -05:00
401147009a
Increase Ollama context window to 16k tokens
Catherine Renelle
2026-02-12 19:25:24 -05:00
f5d6e9f98e
Distinguish read vs write operations in AI system prompt
Catherine Renelle
2026-02-11 23:53:07 -05:00
8aeee44368
Add logging and retry-without-tools for empty AI responses
Catherine Renelle
2026-02-11 21:44:39 -05:00
8a295c48dd
Handle empty string AI responses as fallback
Catherine Renelle
2026-02-11 21:26:32 -05:00
8e342045eb
Skip tool-use nudge when page context provides data
Catherine Renelle
2026-02-11 20:23:10 -05:00
8421d244f2
Fix AI date search matching only midnight instead of full day
Catherine Renelle
2026-02-11 19:36:26 -05:00
dbe351ac45
Fix AI ignoring tool results and page context in follow-ups
Catherine Renelle
2026-02-11 19:32:37 -05:00
6891f2d884
Fix AI losing conversational context on terse follow-ups
Catherine Renelle
2026-02-11 19:26:50 -05:00
3402a5210e
Tell AI not to restate data already shown in tool result tables
Catherine Renelle
2026-02-11 19:15:49 -05:00
8b6378805c
Include transaction ID in category-update tool summary
Catherine Renelle
2026-02-11 19:13:19 -05:00
333b21224d
Run AI classification in background with SignalR notifications
Catherine Renelle
2026-02-10 23:53:14 -05:00
c2a4272585
Add floating AI chat panel with page context awareness
Catherine Renelle
2026-02-10 23:51:52 -05:00
482df9d94d
Fix case-sensitive transaction search on PostgreSQL
Catherine Renelle
2026-02-10 22:32:29 -05:00
04d21afc87
Add Ollama diagnostic logging and broaden tool-call retry
Catherine Renelle
2026-02-10 20:32:48 -05:00
9b81a8e37e
Fix auth refresh retry loop on expired tokens
Catherine Renelle
2026-02-10 20:02:07 -05:00
a7d5b880ae
Strengthen system prompt and strip code blocks from AI responses
Catherine Renelle
2026-02-10 19:13:34 -05:00
31e99e72de
Add Docker image cleanup container to compose stack
Catherine Renelle
2026-02-10 19:07:53 -05:00
7a44492832
Strengthen system prompt to prevent LLM from generating code
Catherine Renelle
2026-02-10 19:03:03 -05:00
6552a97036
Add budget, loan, payee, and scheduled transaction tools to AI chat
Catherine Renelle
2026-02-10 08:28:31 -05:00
26fb3dc1e1
Add category management tools to AI chat (list, create, delete)
Catherine Renelle
2026-02-09 23:51:18 -05:00
713f2bfadc
Fix date handling to use DateTimeKind.Utc for Npgsql
Catherine Renelle
2026-02-09 23:39:56 -05:00
02c1f49db5
Fix crypto.randomUUID not available in all environments
Catherine Renelle
2026-02-09 23:37:24 -05:00
846edad2a4
Add AI chat with Ollama tool calling for financial queries
Catherine Renelle
2026-02-09 23:34:16 -05:00
1ceeca0fb6
Add profile management (display name, email, password change, account deletion)
Catherine Renelle
2026-02-09 22:44:52 -05:00
0562bb97b7
Fix SimpleFIN re-sync timeout and 403 rate limiting
Catherine Renelle
2026-02-09 21:42:55 -05:00
f23bba53c0
Backfill memo on re-sync and fix transactions table name in migration
Catherine Renelle
2026-02-09 21:30:10 -05:00
8cc40272c7
Fix server-side pagination returning same data on every page
Catherine Renelle
2026-02-09 21:12:41 -05:00
757fcec621
Always store full bank description in memo for SimpleFIN
Catherine Renelle
2026-02-09 21:04:39 -05:00
b48cb1c48c
Mark existing bank-synced transactions as Cleared on startup
Catherine Renelle
2026-02-09 20:56:26 -05:00
d52c7b53ce
Mark bank-synced transactions as Cleared instead of Uncleared
Catherine Renelle
2026-02-09 20:52:47 -05:00
caf109013e
Switch transactions to server-side pagination
Catherine Renelle
2026-02-09 19:50:35 -05:00
9a49adf89a
Fix navigation drawer: rail expand, icon centering, and tooltips
Catherine Renelle
2026-02-09 19:44:39 -05:00
5811588698
Add Re-sync button for SimpleFIN connections
Catherine Renelle
2026-02-09 19:29:15 -05:00
8b2f5aad56
Normalize all DateTime values to UTC across the codebase
Catherine Renelle
2026-02-09 01:07:26 -05:00
bcb4a74158
Fix Dashboard top categories query translation error
Catherine Renelle
2026-02-09 00:34:52 -05:00
edc32367d4
Fix Dashboard query: replace Math.Abs with negation in GroupBy
Catherine Renelle
2026-02-09 00:22:34 -05:00
10bbca84be
Make SimpleFIN split migration run only once
Catherine Renelle
2026-02-09 00:03:10 -05:00
8ca2dbd763
Fix transaction action buttons layout and Dashboard UTC error
Catherine Renelle
2026-02-08 23:58:28 -05:00
f92759bef3
Add startup migration to split existing SimpleFIN connections by institution
Catherine Renelle
2026-02-08 23:41:11 -05:00
a2b12d9abd
Split SimpleFIN connections by institution
Catherine Renelle
2026-02-08 23:26:49 -05:00
54a15cf3cf
Fix account type not updating on edit
Catherine Renelle
2026-02-08 21:44:09 -05:00
53f49ba9d8
Run bank sync in background to avoid gateway timeouts
Catherine Renelle
2026-02-08 21:31:59 -05:00
fae15ad66b
Return clear error when SimpleFIN setup token is already claimed
Catherine Renelle
2026-02-08 21:10:07 -05:00
1db0101b5a
Fix SimpleFIN integration for beta-bridge.simplefin.org
Catherine Renelle
2026-02-08 20:57:02 -05:00
9497812bf5
Fix Reports 400 errors: normalize DateTime to UTC and restore camelCase JSON
Catherine Renelle
2026-02-08 20:35:57 -05:00
d49ad4aca7
Use editable default values with {placeholders} for AI prompts
Catherine Renelle
2026-02-08 20:26:07 -05:00
e742b0fbe7
Make AI categorization prompts user-configurable
Catherine Renelle
2026-02-08 19:30:26 -05:00
1c7abb7ffc
Add AI categorization with Ollama: settings, auto-classify on sync/import, and manual classify from Transactions
Catherine Renelle
2026-02-08 18:41:12 -05:00
57d1051213
Add JsonStringEnumConverter for proper enum serialization
Catherine Renelle
2026-02-08 17:12:08 -05:00
5e7c664896
Fix Unspecified DateTime kind for PostgreSQL timestamptz columns
Catherine Renelle
2026-02-08 17:02:02 -05:00
9d6a006045
Make Plaid credentials per-user, configurable via Settings UI
Catherine Renelle
2026-02-08 16:50:48 -05:00