An easy to use financial manager. Track your revenues and expenses to learn how you spend your money and know all the time how much you have.
This is an web application with which lots of people can manage their own expenses and revenues. Below are the implemented features:
- Sign Up
- Login
- List all financial events for a user
- Add expense
- Add revenue
- Check your balance
- Logout
By using this app any user can learn how they've been using their money and always keep track of your balance.
This is a demo of the application running:
You also can test this app here: https://my-wallet-front-hamandakuntz.vercel.app/
The following tools and frameworks I used in the construction of the project:
- Delete an expense/revenue
- Refactor the code to use the concept of layered architecture
-
Clone this repository
-
Clone the front-end repository at https://github.com/hamandakuntz/my-wallet-front
-
Follow instructions to run front-end at https://github.com/hamandakuntz/my-wallet-front
-
Create a database (you can find the
dump.sql
file atdatabase
paste in this repository):- 4.1 Open your terminal in the same path as the
dump.sql
file is. - 4.2 Use the command
sudo su postgres
, enter your password to connect with PostgreSQL and then, typepsql postgres
and click enter. - 4.3 Use the command
CREATE DATABASE mywallet
to create a database and then click enter. - 4.4 Type \q and hit enter again.
- 4.5 Finally, use the command
psql mywallet < dump.sql
. This way your database will be ready.
- 4.1 Open your terminal in the same path as the
-
Now we need to set the environment variables:
- 5.1 Create a
.env
file in the folder root - 5.2 Use the
.env.example
as a model - 5.3 Alter the DATABASE_URL to this format:
"postgres://user:password@host:port/mywallet"
- 5.4 Set the
PORT
to 4000
- 5.1 Create a
-
Install all dependencies
npm i
- Run the back-end with
npm start
- You can optionally build the project running
npm run build
- To run the tests use
npm run test
- Finally the server will be listening in http://localhost:4000