Logo Lanfrica

Mikiyaskifle/Birrwise

Domaine:

digital infrastructure

Type de record:

software
Créateur:
Mik
Hôte:
A complete daily expense tracker Flutter app with full Amharic localization and backend API integration # Daily Expense Tracker A complete, production-ready Flutter mobile app for tracking daily expenses with real backend API integration. ## 🌟 Features - ✅ **Full CRUD Operations** - Create, Read, Update, Delete expenses - ✅ **Real Backend Integration** - Uses REST API with proper error handling - ✅ **Beautiful UI/UX** - Modern fintech-level design with Material 3 - ✅ **Light & Dark Theme** - Automatic theme switching with persistence - ✅ **Offline Support** - Proper loading states and error handling - ✅ **Smooth Animations** - Micro-interactions and transitions - ✅ **Pull to Refresh** - Refresh expense list with gesture - ✅ **Swipe Gestures** - Swipe to edit/delete expenses - ✅ **Form Validation** - Comprehensive input validation - ✅ **Ethiopian Birr (Br) currency formatting** - Proper number formatting - ✅ **Date Formatting** - Human-readable date displays - ✅ **Category Icons** - Visual category representation - ✅ **Empty States** - Beautiful empty state screens - ✅ **Loading States** - Shimmer effects and skeletons ## 🏗️ Architecture - **Clean Architecture** - Feature-based organization - **State Management** - Riverpod for reactive state - **Networking** - Dio for HTTP requests with interceptors - **Dependency Injection** - Riverpod providers - **Separation of Concerns** - Clear layer separation ## 📁 Project Structure ``` lib/ ├── models/ # Data models │ └── expense.dart # Expense model with JSON serialization ├── services/ # API services │ └── api_service.dart # Dio-based API client ├── providers/ # Riverpod state management │ ├── expense_provider.dart # Expense state management │ └── theme_provider.dart # Theme management ├── screens/ # UI screens │ ├── splash_screen.dart │ ├── home_screen.dart │ ├── add_expense_screen.dart │ ├── edit_expense_screen.dart │ └── expense_detail_screen.dart ├── widgets/ # Reusable UI components │ ├── expense_card.dart │ ├── custom_text_field.dart │ ├── gr …

Languages