@@ -5,23 +5,26 @@ A simple yet powerful personal finance tracking app built with React Native and
5
5
## Features
6
6
7
7
### 🏠 Home Dashboard
8
- - ** Total Balance** : View your overall financial position across all accounts
8
+ - ** Total Balance** : View your overall financial position across all accounts with smooth animations
9
9
- ** Monthly Summary** : Quick overview of income, expenses, and savings for the current month
10
10
- ** Account Balances** : See individual balances for each money source (Cash, GPay, Bank)
11
- - ** Recent Transactions** : Last 5 transactions with quick access to full history
11
+ - ** Recent Transactions** : Last 5 transactions with improved visual hierarchy and better spacing
12
+ - ** Quick Actions** : Easy access to add transactions and view history
12
13
13
14
### ➕ Add Transactions
14
- - ** Simple Form** : Easy input for daily transactions
15
+ - ** Simple Form** : Easy input for daily transactions with consistent spacing
15
16
- ** Transaction Types** : Income or Expense with color-coded indicators
16
17
- ** Categories** : Predefined categories for both income and expenses
17
18
- ** Multiple Sources** : Track transactions across different accounts
19
+ - ** Account Impact Preview** : Real-time balance validation and warnings
18
20
- ** Optional Notes** : Add context to your transactions
19
21
20
22
### 📋 Transaction History
21
- - ** Search & Filter** : Find transactions by category, type, or source
23
+ - ** Search & Filter** : Find transactions by category, type, or source with enhanced filter modal
22
24
- ** Date-based Viewing** : Browse transactions chronologically
23
- - ** Delete Transactions** : Remove incorrect entries with confirmation
25
+ - ** Delete Transactions** : Remove incorrect entries with themed confirmation popups
24
26
- ** Pull to Refresh** : Update data with a simple swipe
27
+ - ** Improved UI** : Better transaction cards with circular icons and cleaner layout
25
28
26
29
### 📊 Insights & Analytics
27
30
- ** Category Spending** : Pie chart showing where your money goes
@@ -30,6 +33,13 @@ A simple yet powerful personal finance tracking app built with React Native and
30
33
- ** Monthly Selector** : View insights for different months
31
34
- ** Account Breakdown** : Individual account balance tracking
32
35
36
+ ### 🎨 Enhanced User Experience
37
+ - ** Custom Modal System** : Themed popups replacing native alerts
38
+ - ** Balance Validation** : Real-time warnings for insufficient funds
39
+ - ** Smooth Animations** : Balance change animations and transitions
40
+ - ** Consistent Spacing** : Standardized margins and padding throughout
41
+ - ** Better Visual Hierarchy** : Improved typography and layout consistency
42
+
33
43
## Tech Stack
34
44
35
45
- ** Frontend** : React Native with Expo
@@ -38,7 +48,9 @@ A simple yet powerful personal finance tracking app built with React Native and
38
48
- ** State Management** : Zustand
39
49
- ** Database** : SQLite (expo-sqlite)
40
50
- ** Charts** : React Native Chart Kit
41
- - ** Forms** : React Hook Form (planned)
51
+ - ** Forms** : React Hook Form
52
+ - ** Icons** : Lucide React Native
53
+ - ** Blur Effects** : Expo Blur
42
54
43
55
## Installation & Setup
44
56
@@ -78,16 +90,29 @@ Cashalyst/
78
90
├── screens/ # Main app screens
79
91
│ ├── HomeScreen.jsx # Dashboard with overview
80
92
│ ├── AddTransactionScreen.jsx # Transaction input form
93
+ │ ├── EditTransactionScreen.jsx # Transaction editing
81
94
│ ├── HistoryScreen.jsx # Transaction history & search
82
- │ └── InsightsScreen.jsx # Analytics & charts
95
+ │ ├── InsightsScreen.jsx # Analytics & charts
96
+ │ ├── AccountsScreen.jsx # Account management
97
+ │ └── SetupScreen.jsx # Initial setup
83
98
├── components/ # Reusable UI components
99
+ │ ├── AppButton.jsx # Custom button component
100
+ │ ├── AppTextField.jsx # Custom text input
101
+ │ ├── AppDropdown.jsx # Custom dropdown
102
+ │ ├── AppSearchBar.jsx # Search functionality
103
+ │ ├── AppSegmentedButton.jsx # Segmented controls
104
+ │ ├── AppModal.jsx # Custom modal system
105
+ │ └── SplashScreen.jsx # App splash screen
84
106
├── hooks/ # Custom React hooks
85
107
│ └── useStore.js # Zustand state management
86
108
├── db/ # Database layer
87
109
│ ├── initDB.js # Database initialization
88
- │ └── transactionService.js # Database operations
110
+ │ ├── transactionService.js # Database operations
111
+ │ └── asyncStorageService.js # Local storage
89
112
├── utils/ # Utility functions
90
- │ └── formatCurrency.js # Currency & date formatting
113
+ │ ├── formatCurrency.js # Currency & date formatting
114
+ │ ├── scale.js # Responsive scaling
115
+ │ └── theme.js # App theming
91
116
├── App.js # Main app component
92
117
└── README.md # This file
93
118
```
@@ -100,6 +125,7 @@ Cashalyst/
100
125
- ` type ` : 'income' or 'expense'
101
126
- ` category ` : Transaction category
102
127
- ` source ` : Account/source identifier
128
+ - ` sourceId ` : Account ID reference
103
129
- ` note ` : Optional transaction note
104
130
- ` date ` : Transaction date
105
131
- ` created_at ` : Timestamp
@@ -125,8 +151,9 @@ The app comes with three default accounts:
125
151
3 . Select transaction type (Income/Expense)
126
152
4 . Choose a category from the dropdown
127
153
5 . Select the source account
128
- 6 . Add an optional note
129
- 7 . Tap "Save Transaction"
154
+ 6 . Review the account impact preview
155
+ 7 . Add an optional note
156
+ 8 . Tap "Save Transaction"
130
157
131
158
### Viewing Insights
132
159
1 . Navigate to the "Insights" tab
@@ -138,7 +165,13 @@ The app comes with three default accounts:
138
165
1 . Go to "Transaction History" to see all entries
139
166
2 . Use search to find specific transactions
140
167
3 . Apply filters by type, category, or source
141
- 4 . Delete incorrect transactions with confirmation
168
+ 4 . Edit or delete transactions with themed confirmations
169
+
170
+ ### Account Management
171
+ 1 . Access account settings from the home screen
172
+ 2 . View individual account balances
173
+ 3 . Monitor account-specific transactions
174
+ 4 . Track balance changes over time
142
175
143
176
## Future Enhancements
144
177
@@ -151,13 +184,17 @@ The app comes with three default accounts:
151
184
- [ ] Multiple currency support
152
185
- [ ] Bill reminders
153
186
- [ ] Financial goals tracking
187
+ - [ ] Transaction templates
188
+ - [ ] Advanced analytics
154
189
155
190
### Technical Improvements
156
191
- [ ] Offline-first architecture
157
192
- [ ] Performance optimizations
158
193
- [ ] Unit and integration tests
159
194
- [ ] Accessibility improvements
160
195
- [ ] Internationalization (i18n)
196
+ - [ ] Push notifications
197
+ - [ ] Data backup/restore
161
198
162
199
## Contributing
163
200
@@ -185,6 +222,7 @@ If you encounter any issues or have questions:
185
222
- Charts powered by React Native Chart Kit
186
223
- State management with Zustand
187
224
- Database operations with SQLite
225
+ - Icons from Lucide React Native
188
226
189
227
---
190
228
0 commit comments