Skip to content

A beautifully designed personal finance app built with React Native and Expo, offering multi-language and multi-currency support, glassmorphism UI, and JSON import/export functionality.

Notifications You must be signed in to change notification settings

SergioBonatto/FlowCash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

43 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

FlowCash (Work in Progress)

FlowCash Logo

Build Status Version License PRs Welcome

FlowCash is a modern and elegant personal finance management app built with React Native and Expo. Designed with a premium glassmorphism-inspired UI and fully offline architecture, it empowers users to track, analyze, and manage their daily finances securely and intuitively โ€” all without depending on cloud services.


โœจ Key Features

  • ๐Ÿ’ธ Transaction Management Create, edit, and delete income and expense entries with full categorization and notes support.

  • ๐ŸŒ Internationalization (i18n) Available in 10+ languages with real-time dynamic locale switching and full RTL support.

  • ๐Ÿ’ฑ Multi-Currency with Live Conversion Supports USD, BRL, EUR, GBP โ€” with exchange-rate based conversions to improve precision.

  • ๐Ÿ“Š Analytics Dashboard View spending patterns, top categories, and income vs. expense charts.

  • ๐Ÿ“œ Advanced Transaction History Filterable, sortable, and chronologically organized records.

  • ๐Ÿ“ค Data Export / Import Backup and restore data via standardized JSON format, with validation and conflict resolution.

  • โš™๏ธ Personalization Options Choose preferred language, currency, layout display, and more.

  • ๐Ÿ’พ Local-Only Persistent Storage All financial data is securely stored on-device using AsyncStorage โ€” no internet required.

  • ๐ŸŽจ Premium Glassmorphism UI Aesthetic and responsive design optimized for both performance and visual appeal.

  • ๐Ÿ” Privacy-First Architecture No cloud sync by default โ€” users retain full control over their financial data.


๐Ÿš€ Tech Stack

  • React Native & Expo โ€“ Universal mobile app development
  • TypeScript โ€“ Strict type safety across the codebase
  • React Context API โ€“ Modular and efficient state management
  • AsyncStorage โ€“ Offline local data storage
  • React Navigation โ€“ Seamless navigation system with native transitions
  • Expo BlurView โ€“ Smooth glassmorphic UI effects
  • date-fns โ€“ Lightweight date utilities
  • Expo File System & Document Picker โ€“ File I/O support
  • React Hooks โ€“ Declarative logic in functional components

๐Ÿ“ฑ Screenshots

Transaction Dashboard Exchange Screen
Reports screen Settings Screen
---

๐Ÿ—บ๏ธ Roadmap

โœ… Released Features (v1.0.0)

Core

  • CRUD for income and expense transactions
  • Multi-currency with real-time exchange rates
  • Category management (default + custom)
  • Data export/import
  • Persistent local storage

UX & UI

  • Glassmorphism design
  • Gesture support
  • Performance optimizations
  • Responsive layout

i18n & Localization

  • Language switching (10+ languages)
  • Locale-aware currency and date formatting
  • RTL support

๐Ÿšง Upcoming Features (v1.1.0 โ€“ Q3 2025)

  • Budget planning system
  • Enhanced analytics dashboard
  • In-app transaction search
  • Transaction templates
  • Quick actions (e.g., swipe to add recurring expense)
  • Dark mode support
  • Custom transaction categories

๐Ÿ”ฎ Future Plans (v2.0.0)

Innovation

  • Investment tracking (manual + real-time for stocks/crypto)
  • Receipt scanning via OCR
  • Biometric authentication

Enhancements

  • Recurring transactions
  • Multiple accounts and transfers
  • Budget forecasting
  • Cloud sync (optional)
  • Home screen widgets (iOS + Android)

๐Ÿ“‚ Project Structure

  .
  โ”œโ”€โ”€ assets/ # App icons, fonts, images
  โ”œโ”€โ”€ src/
  โ”‚ โ”œโ”€โ”€ components/ # UI components (shared & domain-specific)
  โ”‚ โ”œโ”€โ”€ context/ # Context providers (Preferences, Transactions)
  โ”‚ โ”œโ”€โ”€ localization/ # i18n setup and translation files
  โ”‚ โ”œโ”€โ”€ navigation/ # App navigation
  โ”‚ โ”œโ”€โ”€ screens/ # Main screen views
  โ”‚ โ”œโ”€โ”€ services/ # Business logic (storage, import/export)
  โ”‚ โ”œโ”€โ”€ styles/ # Theme and design system
  โ”‚ โ”œโ”€โ”€ types/ # Global TypeScript types
  โ”‚ โ””โ”€โ”€ utils/ # Utility functions (e.g. currency formatting)
  โ”œโ”€โ”€ App.tsx # Entry point
  โ”œโ”€โ”€ babel.config.js
  โ””โ”€โ”€ package.json

๐Ÿง  Architecture Overview

State Management

  • Component State for isolated UI logic
  • React Context API for shared preferences and financial data
  • AsyncStorage for local persistence
  • Optimistic Updates and state normalization for performance

Component Design

  • Container/Presenter separation for clean responsibility
  • Shared and domain-specific UI components
  • Prop drilling avoidance with context
  • Strategic use of React.memo and useMemo

๐ŸŒ Internationalization

  • Real-time dynamic language switching
  • Support for date/currency/number localization
  • RTL layout support
  • String interpolation with placeholders
  • Languages fully supported:
    • English (en)
    • Portuguese โ€“ Brazil (pt-BR)
    • Portuguese โ€“ Portugal (pt-PT)
    • Spanish (es)
    • French (fr)
    • German (de)
    • Italian (it)
    • Japanese (ja)
    • Chinese โ€“ Simplified (zh-CN)
    • Russian (ru)

โš™๏ธ Installation

Requirements

  • Node.js 14+
  • Yarn or npm
  • Expo CLI:
    npm install -g expo-cli

Setup

  git clone https://github.com/sergiobonatto/flowcash.git
  cd flowcash
  yarn install    # or npm install
  yarn start      # or npm start

Run on Device

1 - Install Expo Go on your iOS or Android device.

2 - Scan the QR code displayed in the terminal.

3 - App will open inside Expo Go.


๐Ÿงช Development Workflow

Scripts

  yarn start       # Start dev server
  yarn ios         # Run on iOS simulator
  yarn android     # Run on Android emulator
  yarn lint        # Run linter
  yarn typescript  # Type checking

Best Practices

  • Conventional commits (feat:, fix:, chore:)
  • Focus on:
    • Type safety
    • Component reuse
    • Architectural consistency
    • Performance-conscious updates
  • Unit testing for critical logic (coming soon)

๐Ÿค Contributing

FlowCash is an open-source project โ€” contributions are welcome! 1 - Fork the repository 2 - Create a feature branch:

  git checkout -b feature/amazing-feature

3 - Implement your changes with tests 4 - Submit a PR with a clear description

๐Ÿ“ฆ Deployment

The app is currently under active development and has not yet been published to the App Store or Play Store.

๐Ÿ‘จโ€๐Ÿ’ป Lead Developer

  • Sergio Bonatto โ€“ Development, design, and architecture

๐Ÿ“ฌ Contact & Support

For issues, questions, or suggestions, feel free to:

  • Open an issue on the GitHub repository
  • Contact the developer via email (for private security concerns)

Built with โค๏ธ using React Native, TypeScript, and modern design principles.

About

A beautifully designed personal finance app built with React Native and Expo, offering multi-language and multi-currency support, glassmorphism UI, and JSON import/export functionality.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published