Skip to content

AlsoWallet is an app to manage your investment portfolio and control your finances. abstract: consider this repository refers to the functional software development source code base. arch: this project user a modular arquitecture wich makes it easy to scalate by creating new features the easiest way.

Notifications You must be signed in to change notification settings

afrancocedeno/also_wallet

Repository files navigation

Also Wallet

AlsoWallet is an app to manage your investment portfolio and control your finances. abstract: consider this repository refers to the functional software development source code base. arch: this project user a modular arquitecture wich makes it easy to scalate by creating new features the easiest way.

NPM Version Package License NPM Downloads CircleCI Coverage Backers on Open Collective Sponsors on Open Collective

Availavle branches

please principal branchesvisit:

Installation

git clone https://github.com/afrancocedeno/social-app-backend
# optional - you can run from main branch
git checkout dev
$ npm install

create your .env file and set up the following variables:

DATABASE_URL
DATABASE_NAME
DATABASE_PORT
API_KEY
JWT_SECRET

take a look to the dependencies for this prokect on package.json file or list them as follows:

npm list

Running the app

# development
$ npm run start

# rise the server in watch mode
$ npm run start:dev

# production mode
$ npm run start:prod

Documentation

if you are in development environment you can access the documentation from your browser by using this link: localhost:3000/docs

if you are in production environment you can access the documentation from your browser by using this link: also-wallet-backend.onrender.com/docs

Typeorm

create new migrations

  1. package.json
  2. command
npm run migrations:generate ./src/database/migration/<change_description_name>

please visit TypeORM offitial documentation.

also add these lines to your package.json scripts an test them with npm run <pckge.json_script>

  "scripts": {
    /* ... */
    "typeorm": "typeorm-ts-node-esm -d src/<path_to>/data-source.ts",
    "migrations:generate": "npm run typeorm -- migration:generate",
    "migrations:run": "npm run typeorm -- migration:run",
    "migrations:show": "npm run typeorm -- migration:show",
    "migrations:drop": "npm run typeorm -- schema:drop"
  }

patron repository -> typeorm

migrations usage

first create npm run migrations:show npm run migrations:generate <path-to-migrations-dir/migration-name> then run npm run migrations:show npm run migrations:run after making changes to entities run again npm run migrations:show npm run migrations:generate <path-to-migrations-dir/migration-name>

Test

# unit tests
$ npm run test

# e2e tests
$ npm run test:e2e

# test coverage
$ npm run test:cov

Contribute

# get this repo to your machine
git clone https://github.com/afrancocedeno/also_wallet.git
# set the development branch to dev
git checkout <feature/your_feature>

docker commands

  1. Start docker desktop (for this we are using WSL)

  2. raise the service

sudo docker-compose up -d postgres
  1. check status service
sudo docker-compose ps
  1. check logs of build
sudo docker-compose logs
sudo docker-compose logs -f postgres
  1. access container
# access manually
docker-compose exec postgres bash
   also_wallet
  1. stop container
sudo docker-compose down
  1. sql
psql -h localhost -d also_wallet -U root
  1. sql
# list all relations
\d+

tools used

postman tableplus

things to master

  • Frontend
  • an AI that allows to register investments or downpayments
  • an membership module to educate in all topics of the app
  • add base model
  • deploy to cloud room
  • production database ?

Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

Stay in touch

License

Nest is MIT licensed.

About

AlsoWallet is an app to manage your investment portfolio and control your finances. abstract: consider this repository refers to the functional software development source code base. arch: this project user a modular arquitecture wich makes it easy to scalate by creating new features the easiest way.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published