Expenseo leverages modern cloud technologies to deliver a seamless experience in managing personal finances. The app listens for incoming bank email notifications, processes the transaction details, and updates the user's financial data in real-time.
Expenseo listens for incoming Gmail notifications related to bank transactions. Using AWS Lambda, the app processes these emails and extracts transaction details, which are then stored in Amazon DynamoDB.
A flexible and efficient GraphQL API, powered by AWS AppSync, allows users to manage transactions and query their financial data easily.
A native iOS app built with SwiftUI displays the user's transaction data in an intuitive and visually appealing interface. Users can view, update, and manage their transactions effortlessly.
- Gmail API: For reading and receiving notifications about bank transactions.
- Google Pub/Sub: To forward Gmail notifications.
- AWS API Gateway: To receive Pub/Sub notifications.
- AWS Lambda: For processing email transaction details.
- AWS AppSync: GraphQL API for querying and managing transaction data.
- TypeScript: Backend language for Lambda functions.
- Amazon DynamoDB: Scalable and reliable database for storing transactions and user data.
- SwiftUI: Native iOS UI framework for building the app interface.
- Apollo Client for Swift: Integration for GraphQL API.
- Gmail API: Configured to read and push notifications for new emails.
- Google Pub/Sub: Forwards notifications to AWS.
- AWS API Gateway: Receives Pub/Sub notifications.
- AWS Lambda: Processes email notifications, extracts transaction details, and updates DynamoDB.
- Amazon DynamoDB: Stores transaction details.
- AWS AppSync: Provides a GraphQL API for querying and managing transaction data.
- iOS Application: Built using SwiftUI, provides an intuitive user interface for viewing and managing transactions.
- Apollo Client for Swift: Connects the iOS app to the GraphQL API for seamless data interaction.