Inspiration
About the Project
WiseCredit is an iOS financial application aimed at simplifying personal finance management while giving users the tools to make better-informed credit decisions. The app integrates features like real-time credit comparison, chatbot support, and notifications about changes in bank rates, all powered by Firebase for backend management and Google AI's generative models for smart assistance. Our focus is to provide an intuitive and user-friendly interface, offering relevant financial insights to help people manage their finances effectively.
What it does
User Features
- Track Expenses: Users can add, edit, and delete their expenses, categorized under various financial labels like "Food", "Transport", etc.
- Credit Simulator: Compare banks and see which one provides the best credit conditions based on the user's credit score, loan amount, and repayment period. The app dynamically calculates the CAT (Costo Anual Total), interest rates, and monthly payments for each bank.
- Profile Management: Users can view and update their profile details, including their username and other account preferences.
- Notifications: Real-time notifications about important financial updates, such as changes in bank interest rates or special offers.
- Chatbot Support: A personalized AI-driven chatbot helps users with frequently asked questions and provides recommendations for credit and financial queries. The chatbot can also escalate the conversation to human support if needed.
- Visual Dashboard: Track balances and expenses visually through an integrated graph and budget tracker. This dashboard makes it easy for users to get an overview of their financial status at a glance.
Admin Features
- Admin Dashboard: Admins can manage financial data such as updating interest rates, adding new banks, and monitoring financial simulations for different loan options.
- Bank Management: Admins can add and remove banks, upload bank logos, and edit the loan rates and fees for each bank through the admin interface.
- Notifications for Clients: Admins can send notifications to users about changes in bank rates or special offers using Firebase Cloud Messaging. These notifications are then displayed in the user’s notifications tab in real time.
- Track Bank Data: Admins can see which banks are most favorable for users at a given time based on real-time data. ## How we built it ### Technologies Used
Frontend:
- SwiftUI for the user interface.
- Custom components for card layouts, buttons, and profile pages.
- AsyncImage for fetching and displaying bank logos.
Backend:
- Firebase for user authentication, Firestore database, and real-time data updates.
- Firebase Firestore for managing user data and bank loan information.
- Firebase Cloud Messaging (FCM) for sending real-time notifications to users.
- Firebase Storage for storing and retrieving bank logos and user profile images.
AI Integration:
- Google AI's Generative API for chatbot functionality, providing intelligent financial guidance and support.
Additional Tools:
- Custom-built PDF generation for loan amortization schedules.
- Cloud Functions for backend logic related to updating bank rates and sending notifications.
Challenges we ran into
- FirebaseFirestoreSwift Module Issues: At first, we faced a problem where the FirebaseFirestoreSwift module wasn’t being recognized. We decided to manually parse the data instead of using Codable, which helped us gain more control over the data parsing process.
- Dynamic Notifications: One of the most challenging aspects was implementing real-time notifications for rate changes. Ensuring that new messages in Firestore were dynamically updated in the app required careful listener management and testing.
- Chatbot Integration: Integrating the Google AI generative model for the chatbot was complex, especially in getting it to provide relevant and helpful financial advice. We had to tune it for specific queries and responses to ensure a great user experience.
- Multi-Platform Testing: Testing on multiple devices and iOS versions to ensure smooth performance was a task we had to continuously revisit, especially when working with real-time data synchronization.
Accomplishments that we're proud of
- Real-Time Credit Simulation: Implementing a fully functional credit simulator that calculates CAT and monthly payments based on live data from multiple banks is something we are incredibly proud of. This feature provides users with actionable insights when selecting loan offers.
- Chatbot Integration: The integration of Google AI's generative model for our chatbot was a huge success. The chatbot provides dynamic responses and significantly improves the overall user experience by answering common financial queries.
- Firebase Real-Time Updates: Successfully using Firebase for real-time notifications and data synchronization allowed us to build a dynamic and responsive application where users stay informed of important updates instantly.
What we learned
- Firebase Integration: We learned the intricacies of working with Firebase, from real-time data syncing to user authentication, and even managing cloud functions for notifications.
- AI Implementation: Implementing and training an AI-driven chatbot was a huge learning curve. We learned how to integrate third-party AI services, adjust their responses to user queries, and ensure they provide meaningful insights.
- Real-Time Notifications: Implementing a notification system for critical financial updates was a valuable experience in understanding real-time communication within apps.
- SwiftUI Advanced Concepts: Working with dynamic views, bindings, and custom components in SwiftUI pushed our understanding of UI design and structure, allowing us to create a highly customizable app.
What's next for FSCrew-CapitalOne
- Multi-Language Support: We plan to add support for multiple languages, making the app accessible to a broader audience.
- More Financial Products: We want to expand the app to include more financial products, such as savings accounts and investment options, making it a full-featured financial management tool.
- Machine Learning for User Insights: Implementing machine learning models to give users personalized recommendations based on their spending habits and loan choices.
- Dark Mode & Themes: Adding more themes and a dark mode option to provide users with a more personalized experience.
- Social Sharing Features: Enabling users to share financial milestones or loan comparisons directly to their social media profiles.
Log in or sign up for Devpost to join the conversation.