Overview
A cross-platform mobile FinTech application with a web-based dashboard for admins and users. The application enables users to manage cash and assets through deposit, withdrawal, conversion, buy, and sell operations. It provides portfolio overviews, asset comparisons, historical performance insights, and real-time market data visualized through interactive charts.
Context
Academic project developed as part of my Bachelor's thesis focused on the design and implementation of a modern mobile FinTech application.
Architecture
The system follows a BaaS-driven architecture. The mobile and web clients are built with React Native and Expo, while Appwrite is used as the backend for authentication, database management, and file storage. A separate web-based admin dashboard is implemented using React and Next.js.
Features
Key features include user authentication with OAuth2, portfolio and asset management, real-time stock and ETF prices via Twelve Data APIs, historical price overviews with interactive charts and real-time graphical comparison of assets.
Development
The application is written in TypeScript and developed using Expo SDK with a focus on modular architecture, state management, and responsive UI design across mobile and web platforms.
Deployment
The application is built using EAS Build to produce Android, iOS, and web builds. The admin dashboard is developed separately and connects directly to the Appwrite backend, but the system is not deployed to production.
Security
Security is primarily handled by Appwrite as a BaaS, including authentication flows, secure token management, and backend-managed data access. The admin dashboard provides role-based access, permissions, and data management overview.
Testing
Testing was performed manually on web and Android device, focusing on user flows, data consistency, security , transaction logic, and backend communication.