This is a full stack application that allows people who live together to track their expenses in an attempt to make everything more fair
- bcrypt
- body-parser
- cookie-session
- cors
- dotenv
- express
- helmet
- pg
There is knex
in the root package.json, this can be reoved as I did not actually use it.
- material-ui/core
- material-ui/icons
- @testing-library/jest-dom
- @material-ui/core
- @material-ui/icons
- @testing-library/jest-dom
- @testing-library/react
- @testing-library/user-event
- axios
- react
- react-dom
- react-responsive
- react-scripts
- Ensure you have
PostgreSQL
installed on your local machine. (Mac:brew install postgres
to install withhomebrew
) - Enter
psql postgres
into your command line - Enter
CREATE ROLE spot_me_back WITH LOGIN PASSWORD 'development'
to create a new role in PSQL - Enter
ALTER ROLE spot_me_back CREATEDB
to grantCREATEDB
permissions onspot_me_back
role - Exit PSQL with
\q
- Enter
psql -d postgres -U spot_me_back
to connect to PSQL withspot_me_back
role - Enter
CREATE DATABASE spot_me_back_api
to create database
- Complete the database setup instructions above
- Execute
npm start
in the root directory of the app - Visit
localhost:3000
to view the application - Visit
localhost:5000
to make calls to the api server
This project is incomplete due to the timeframe given. Here are some known issues:
- Unable to display "Summary" section as intended. It is supposed to look something like
PERSON NAME contributed: AMOUNT for MONTH
- Unable to write query to parse Edit History section. The idea was to use the
created_at
column in theusers_entries
to display a chronological order of who edited what last. There may be more flushing out needed for the precise logic. - The design could be better implemented
- Project does not use TypeScript due to time constraint. I am unfamiliar with Typescript so I didn't go down that rabbit hole
- Project has yet to be deployed to Netlify due to time constraint.
- Project does not utilize AWS. I am unfamiliar with the details of AWS so I didn't go down that rabbit hole.