Skip to content

dpereiraaa/financeerapp

Repository files navigation

Finance app


Description

Personal finance platform to manage and track personal finances trough out the month.


User Stories

  • 404 - As a user I want to see a nice 404 page when I go to a page that doesn’t exist so that I know it was my fault
  • 500 - As a user I want to see a nice error page when the super team screws it up so that I know that is not my fault
  • homepage - As a user I want to be able to see a nice logo and a brief description ( catchPhrase: example: "Smart way to manage your personal finances"), LOG IN and LOG OUT
  • sign up - As a user I want to sign up on the web page so that I can view and manage my finances, (if possible, view finances news)
  • login - As a user I want to be able to log in on the web page so that I can get back to my account
  • logout - As a user I want to be able to log out from the web page so that I can make sure no one will access my account
  • add-delete-edit - As a user I want to add and delete and edit my expenses, add my income, etc so that I can keep track of my finances trough out the month
  • edit user - As a user I want to be able to edit my profile. (maybe add a profile photo)
  • reports - As a user I want to be able to see reports(graphs how my total income is growing/declining).

Server Routes (Back-end):

Method Route Description Request - Body
GET / Main page route. Renders home index view.
GET /login Renders login form view.
POST /login Sends Login form data to the server. { username, password }
GET /signup Renders signup form view.
POST /signup Sends Sign Up info to the server and creates user in the DB. { name, username, password }
GET /main app Main app view. Renders main app view.
POST /main-app Private route. Sends main app view info, expenses, costs, money received, etc in DB.
GET /reports Private route. Render the reports view.
GET /logout Executes logout function and renders index view.

Models

User model:

const users = new Schema ({
    name: String,
    username: String,
    password: password
})

Expenses model:

const expensesSchema = new Schema ({ 

    
    description: { type: String, required: true },
    value: { type: Number, required: true },
    date: { type: Date, default: Date.now },
    category: {
        type: String,
        enum: ["clothes", "entertainment", "travel", "gifts", "pets", "investments", "education", "debts", "health", "purchases", "house", "bars", "restaurants", "subscriptions", "food", "transport", "other"]
        }    
})

Received:

const receivedSchema = new Schema ({ 

    description: { type: String, required: true },
    value: { type: Number, required: true },
    date: { type: Date, default: Date.now },
    category: { 
        type: String, 
        enum: ["salary", "loans", "wage", "others"] 
    }

})

Links

Git

The url to your repository and to your deployed project

Repository Link

Deploy Link


Contributors

Raissa Damasceno - GitHubUsername - LinkedinLink
David Pereira - GitHubUsername - LinkedinLink

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published