/spentrace-ejs

GA-Project 2

Primary LanguageJavaScript

Project Choice (Tell us which project you're doing!)

Spentrace

This app can be used for simple budgeting tool, you can enter your earnings and expenses or expected cash flow everyday and will give you your how much you owe, your available spending and how much you'll need until the next expense.

Include:
General App Idea/Purpose

I myself have a hard time managing my money and I usually spend time just to get track of it. This app might help me and other people to manage their money better

Models including field names and their datatypes

  • Date: Date
  • Amount: Number
  • Name: String
  • Expense: Boolean
  • Notes: String

A list of routes:

Verb URL Action Description
Get /plan index Show all income and expenses
Get /plan/new new Show new form
POST /plan create Create a new income/expense
GET /plan/:id show Show income/expense with id and delete form
GET /plan/:id/edit edit Show edit form for entry with :id
PUT /plan/:id/ update Update entry with :id
DELETE /plan/:id/delete destroy Delete entry with :id

Wireframes

Main Page

image

Menu Button

image

New Entry Page

image

User Stories

User stories detailing app functionality

  • As a user, I want to be able to create an entry and add an amount, so that it will show up on the list.
  • As a user, I want to be able to toggle an entry, so I can change it from expense or income.
  • As a user, I want to be able to edit an entry, so I can change the value to be updated.
  • As a user, I want to be able to delete an entry, so I can correct any incorrect entry.
  • As a user, I want to be able to clear all entry, so I can start from a clean data.

MVP Goals

  • A working full-stack application, using Node.js, Mongoose, Express and EJS
  • Adhere to the MVC file structure: Models, Views, Controllers
  • One model with all 7 RESTful routes and full CRUD.
  • Be deployed online and accessible to the public via Heroku
  • App can show total earnings and expenses
  • App can show projected income needed for incoming expense/s

Stretch Goals

  • Include sign up/log in functionality, with encrypted passwords & an authorization flow
  • Add a second model that will make the app entries exclusive to each user only.
  • Use EJS Partials
  • Use a CSS framework
  • App can be able to sort by date, amount, by expenses or by earnings

Additional Stretch Goals / Future Implementation

  • Add Calendar View

Installation Instructions

No installation needed, click on the link below and you will be able to use the app in your browswer.

Spentrace

Unsolved Prolems

Forthcoming Features

Monthly View

Calendar View