PayWise -Android Application

Nihar javiya
5 min readAug 9, 2021

Overview

This is an Android Application named “PayWise”, which is developed using the Flutter SDK. This application can be used to keep the record of the expenses between two person or friends. For example, if friend A pay money at a restaurant and if he wants to split the money between him and Friend B and want to keep track of it, then he can do it through this app.

Project Scope and Goal

This project is very useful to the person to keep the track of his personal expense as well as to keep the of expenses between two person so that they don’t have to remember the expenses between them, by just adding the expenses between them into the application and can see anytime “Who have to pay whom?” and “How much to pay?”.

Flutter

Flutter is a cross-platform UI toolkit that is designed to allow code reuse across operating systems such as iOS and Android, while also allowing applications to interface directly with underlying platform services. The goal is to enable developers to deliver high-performance apps that feel natural on different platforms, embracing differences where they exist while sharing as much code as possible.

Firebase Firestore

Cloud Firestore is a flexible, scalable database for mobile, web, and server development from Firebase and Google Cloud. Like Firebase Realtime Database, it keeps your data in sync across client apps through realtime listeners and offers offline support for mobile and web so you can build responsive apps that work regardless of network latency or Internet connectivity. Cloud Firestore also offers seamless integration with other Firebase and Google Cloud products, including Cloud Functions.

Implementation

Dataflow Diagram

Splash Screen

We have developed the Splash Screen with Intro Slider where the new user gets the introduction to our application by sliding the tabs.

Registration/Sign Up Page

We have given three option to a new user to Sign Up in the application

  1. Google Sign Up
  2. Sign Up with Mobile Number
  3. Sign Up with Email Id and Password

Login/Sign In Page

After Completing the Sign Up/Registration Process the user can now sign in to the application. Here also same as in Sign Up page the user has three option to sign in and can use the option through which they have signed up

The three options are:

1. Sign in with Google

2. Sign in with Mobile Number

3. Sign in with Email-Id

Friends Dashboard

We have Created Fully Functional Friends Module

The actions that we can perform in this module is:

1.Add Friend
2.View All Friends
3.Delete Friends
4.Add Expenses
5.View Expenses
6.Delete Expenses

To add new friend when we click on the “+ Friend” button for the first time it will ask for the permission to access the contacts.We can select the contact and add as friend.And Confirming before sending the request.

Now if we there is no expense added than it will show “No Expenses Yet”.

To add expense, when we click on “Add Expense” button this dialog box will pop and we have to fill all the details and click on “Save” button.

The expense that we add will be shown here. It will also show in “From” that who gave the money and “To” who lent the money.

If we want to remove friend from the list we can swipe towards left and can remove that friend.Similarly we can also delete particular expense between you and your friend.

Activity Page

On this page, all the expense activity of a user with each friend is shown in one page.

Personal Expense Tracker

This is a personal expense tracker, were a user can track his personal monthly expense. The user first need to input the monthly income and then he can daily add his personal expense. On dashboard we can see the remaining balance also.

When we click on “Create Own Expense” button we come to this page and then we can select income or expense from drop down list.

We can add description and amount to add income.We can add description and amount to add expense.

Profile Page

We have also created the Profile Page, where we can set our own profile photo and can see the account details. “Logout” button is also there.

Database

--

--