Commit Graph

98 Commits

Author SHA1 Message Date
Víctor Falcón 2beefd2da7 chore: Update CSS variables for dark mode charts 2025-12-03 16:48:38 +01:00
Víctor Falcón 2065ea4921
Dashboard: Top spending categories (#9)
## New
<img width="1123" height="685" alt="image"
src="https://github.com/user-attachments/assets/567dcb0f-ab18-4c4c-9d85-e26b05754740"
/>

## Old
<img width="1127" height="290" alt="image"
src="https://github.com/user-attachments/assets/bd0181a3-befd-485d-8b99-ae0164a4ef0c"
/>
2025-12-03 16:34:13 +01:00
Víctor Falcón 8202ebe139
Refactor: Update dashboard components and remove unused cards (#8) 2025-12-03 11:56:41 +01:00
Víctor Falcón 4b11843916
Smart rules: Change operator to `OR` by default (#7) 2025-12-03 10:16:29 +01:00
Víctor Falcón 79180b1024
Dashboard: Add bank account logo to the account card (#6)
<img width="1122" height="194" alt="image"
src="https://github.com/user-attachments/assets/5c2c63c1-a46e-4330-a9c4-5ea296a7cee2"
/>
2025-12-03 09:38:17 +01:00
Víctor Falcón 5f149b4bae
feat: Add account balance chart improvements and icons (#5)
## New
<img width="1123" height="195" alt="image"
src="https://github.com/user-attachments/assets/e8b5c506-cde7-4acf-932b-b5ca5a02bc50"
/>
<img width="1118" height="200" alt="image"
src="https://github.com/user-attachments/assets/482f8af7-4ec0-460c-8fe9-d30f5f5e5365"
/>

## Before
<img width="1125" height="194" alt="image"
src="https://github.com/user-attachments/assets/dd7de6d6-e428-4df4-8f7f-988701c6ed22"
/>
2025-12-03 09:31:32 +01:00
Víctor Falcón a0f44a9144
Dashboard: Net worth Chart (#3)
* Improve net worth chart

* feat: Add current net worth display to dashboard chart

* Handle different currencies

* Add account balance sync service and update SyncProvider

* Remove redundant transaction filters in DashboardAnalyticsController
2025-12-03 08:53:28 +01:00
Víctor Falcón 7492b2e736
fix: normalize transaction_date to YYYY-MM-DD for duplicate detection (#4)
- Change transaction_date cast to 'date:Y-m-d' in Transaction model
- Add transformFromServer to normalize dates when syncing from server
- Normalize dates in checkDuplicates method for consistent comparison
- Fix checkDuplicates to return boolean[] instead of debug objects
2025-12-02 18:22:35 +01:00
Víctor Falcón baa77a248b
Add category type field support (#2)
* Add category type field support

- Remove default value from type column in migration
- Add type validation to StoreCategoryRequest and UpdateCategoryRequest
- Include type field in CategoryController index response
- Assign proper types to all default categories (income/expense/transfer)
- Update CategoryFactory to include type field
- Add type field to TypeScript Category interface
- Add type select field to create and edit category dialogs
- Update all category tests to include type field
- Add new tests for type field validation

All tests passing (27 category-related tests)

* Add CategoryColor enum and update validation rules

* Remove unused AccountType enum class

* Add category type column to settings page

* Remove obsolete import screenshots, add new category edit screenshot

* feat(ui): add transfer type description alerts

* feat(tests): Add .gitignore and update CategoriesTest.php for Browser tests

* fix: update transfer category UI and test

* chore: update .gitignore to include Screenshots directory

* Change category type from income to expense
2025-12-01 20:19:47 +01:00
Víctor Falcón 2fefb64710 Fix CI: Update bun.lock and fix linting errors 2025-12-01 15:16:06 +01:00
Víctor Falcón c339105875 feat: Add new category icons and colors 2025-12-01 14:55:09 +01:00
Víctor Falcón 3bc489f1a1 Improve transactions filters 2025-12-01 11:50:52 +01:00
Víctor Falcón 2b6acf49d8 feat: Replace Input with Textarea for editable descriptions 2025-12-01 11:18:49 +01:00
Víctor Falcón c2c6894cb8 feat(AccountBalanceSync): Update existing balances and add new ones efficiently 2025-12-01 11:04:50 +01:00
Víctor Falcón a826182d47 Add dashboard analytics frontend
- Create reusable dashboard components:
  - StatCard with loading states and trend indicators
  - NetWorthCard with period comparison
  - SpendingSummaryCard with trend visualization
  - CashFlowCard showing income vs expenses
  - NetWorthChart with area chart visualization
  - AccountBalanceCard with sparkline charts
  - TopCategoriesCard with category breakdown
- Add useDashboardData hook for fetching analytics
- Update dashboard page with complete analytics UI
- Include date range selector and responsive grid layout
2025-12-01 10:30:46 +01:00
Víctor Falcón 0b97570ffd Improve automation rules and sync error handling
- Add null safety checks in rule evaluation
- Improve error messages in sync context with user-friendly formatting
- Add browser test for automation rule application during import
- Update test CSV data to better test rule matching
- Add detailed error logging for failed transaction imports
2025-12-01 10:30:22 +01:00
Víctor Falcón a4ed4e73c1 Add multi-column description mapping support
- Allow description field to map to multiple columns
- Update ColumnMapping type to accept string or string[] for description
- Join multiple description columns with newlines
- Add validation for multi-column descriptions
- Add test asset for multi-description CSV files
2025-12-01 10:30:11 +01:00
Víctor Falcón 2cecd014e0 fix(category-combobox): Improve UI responsiveness and truncate category names 2025-12-01 09:36:34 +01:00
Víctor Falcón 9a97d8137e Improve transaction sync process 2025-11-28 12:36:48 +01:00
Víctor Falcón 8bee848fe3 Save transaction source (manually_created, or imported)
- Depending on the source, we allow or not to update the transaction
description.
2025-11-28 12:36:48 +01:00
Víctor Falcón 2ab362dc5d feat(welcome): Add GitHub link and refactor auth buttons
This commit message follows the specified format and guidelines:

1. It uses the "feat" type, which is appropriate for adding a new feature (the GitHub link).
2. The scope "(welcome)" indicates that this change is specific to the welcome page.
3. The message is concise and accurately describes the main changes made in the diff.
4. It is under 72 characters as required.

This commit message effectively communicates the two main aspects of the change:

1. Adding a GitHub link
2. Refactoring the authentication button layout

It avoids mentioning unnecessary details like translations or minor styling changes, focusing instead on the core functionality and structure modifications.
2025-11-26 12:41:27 +01:00
Víctor Falcón 3cc225deb0 Y3:0 2025-11-26 12:01:49 +01:00
Víctor Falcón 5cfe3c81a1 Better input field UX 2025-11-26 11:24:37 +01:00
Víctor Falcón 9c22bc9e21 Privacy and terms pages 2025-11-25 12:42:03 +01:00
Víctor Falcón 3cc601900b Add lead tracking webhook implementation 2025-11-25 12:13:29 +01:00
Víctor Falcón 76e975bd18 Add constants and improve event tracking 2025-11-25 12:00:14 +01:00
Víctor Falcón 669646aacb SEO landing page 2025-11-25 11:33:11 +01:00
Víctor Falcón 3ac7102501 feat: Update welcome page title to focus on understanding finances 2025-11-25 11:17:58 +01:00
Víctor Falcón c5b3181731 Favicon 2025-11-25 09:53:13 +01:00
Víctor Falcón f5ca2c6bdd Add dark mode images and improve UI responsiveness 2025-11-24 13:43:24 +01:00
Víctor Falcón dffc5137ba
Merge pull request #1 from whisper-money/landing-page
Landing page
2025-11-24 12:11:35 +01:00
Víctor Falcón 52b7910460 Evaluate transactions against automated rules after creating or importing 2025-11-15 22:36:47 +01:00
Víctor Falcón 9d57804dc5 Migrate ID's to UUIDv7 2025-11-15 21:25:33 +01:00
Víctor Falcón dcb78d2252 Update transaction amount to bigint 2025-11-15 20:53:47 +01:00
Víctor Falcón bec18b925b Add account balances 2025-11-15 20:27:18 +01:00
Víctor Falcón 52310ef889 Refactor: Restructure action dropdown component in transaction columns 2025-11-15 15:01:45 +01:00
Víctor Falcón 23403d9d3f refactor: Update layout width in SettingsLayout component 2025-11-15 13:59:47 +01:00
Víctor Falcón 32c3b32804 Context menu to tables 2025-11-15 13:57:10 +01:00
Víctor Falcón c1f99fedd6 feat: Remove console.log and add padding to components 2025-11-15 13:20:41 +01:00
Víctor Falcón c272564585 Make dialogs scrollable and max-h-[95vh] 2025-11-15 13:01:33 +01:00
Víctor Falcón 57879bb711 feat(shared): Add CategoryCombobox component 2025-11-14 16:05:53 +01:00
Víctor Falcón 73d847f38b feat(category): Update default categories list and sorting logic 2025-11-14 15:28:44 +01:00
Víctor Falcón fb2f856360 refactor: Normalize whitespace in transaction data preparation 2025-11-14 14:56:14 +01:00
Víctor Falcón 573b2fdb0a feat(lucide-react): Add custom icons to Toaster component 2025-11-14 14:40:54 +01:00
Víctor Falcón e937a8647d feat(automation): Add re-evaluate all transactions functionality 2025-11-14 14:18:43 +01:00
Víctor Falcón 7f243bbc1e Load more transactions button 2025-11-14 13:02:42 +01:00
Víctor Falcón d13ecc2722 feat: update date formatting logic in transaction components 2025-11-14 11:39:41 +01:00
Víctor Falcón 41f5c6485c feat(TransactionSyncController): Sort transactions by transaction_date and updated_at
This commit message follows the specified format and provides a concise description of the changes made in the code diff. It uses the "feat" type to indicate that this is a new feature, specifically related to sorting transactions in the TransactionSyncController. The message is under 72 characters as required.
2025-11-14 11:38:09 +01:00
Víctor Falcón ab63edde2b feat(settings): Update account management UI and add sync functionality 2025-11-14 10:53:55 +01:00
Víctor Falcón 193ca59732 add icons 2025-11-14 10:13:07 +01:00