A simple app which stores the daily expense of an user and displays the data on a dashboard.
The app is built with the help of Flask and Plotly Dash library.
It uses MongoEngine, a Document Object Mapper to connect the app with the NoSQL database MongoDB for storing and retrieving the data.
Tha app allows for creating and storing the data in the database as well as displaying the data with option of filtering the data by Date (Date type), Expense (Numeric type) or Comment (String type).
The app also consists of a dashboard created using Plotly Dash where the user can view the data as well as the forecast of the data for the next 7 days graphically.
app.py
contains the basic code for setting up the web pages using Flask as well as the connection with the MongoDB database using MongoEngine.
dashboard.py
contains the code for dashboard used for fetching and displaying the query required by the user.
- The dashboard displays the time series data in a table along with a line chart showing the data as well as the forecast for the next 7 days.
- The method used for forecasting the data in Holt Winters Seasonal Exponential Smoothing
data_ops.py
contains the code for:
- Adding the data
- Fetching and displaying the data filtered by Date
- Fetching and displaying the data filtered by Expense
- Fetching and displaying the data filtered by Comment
wsdgi.py
and run.py
contains the code for running the Dash app along with the Flask app