Challenge for Belvo Application

kaajavi 1710ad644d Fix> Change some parts of readme (texts) %!s(int64=5) %!d(string=hai) anos
application b25c346391 Solve some pylint problems %!s(int64=5) %!d(string=hai) anos
transactions b25c346391 Solve some pylint problems %!s(int64=5) %!d(string=hai) anos
users b25c346391 Solve some pylint problems %!s(int64=5) %!d(string=hai) anos
.dockerignore f28d0a275b * Change Readme.md %!s(int64=5) %!d(string=hai) anos
.gitignore 913e0c200c Add gitignore file %!s(int64=5) %!d(string=hai) anos
Dockerfile f28d0a275b * Change Readme.md %!s(int64=5) %!d(string=hai) anos
Readme.md 1710ad644d Fix> Change some parts of readme (texts) %!s(int64=5) %!d(string=hai) anos
docker-compose.yml f28d0a275b * Change Readme.md %!s(int64=5) %!d(string=hai) anos
entrypoint.sh f28d0a275b * Change Readme.md %!s(int64=5) %!d(string=hai) anos
manage.py fda69d4b77 Project start and app users %!s(int64=5) %!d(string=hai) anos
requirements.txt 4311f408cc * Add transaction application %!s(int64=5) %!d(string=hai) anos

Readme.md

Belvo challenge

Author: Javier Guignard

You can see demo in https://demo.kaajavi.com/

If you want to see the admin panel, the default email is admin@admin.com and their password is admin

Setup

This application was developed with python 3.8

The first thing to do is to clone the repository:

$ git clone https://gogs.kaajavi.com/kaajavi/BelvoApp.git
$ cd BelvoApp

Create a virtual environment to install dependencies in and activate it:

$ virtualenv --no-site-packages env
$ source env/bin/activate

Then install the dependencies:

(env)$ pip install -r requirements.txt

Note the (env) in front of the prompt. This indicates that this terminal session operates in a virtual environment set up by virtualenv.

Once pip has finished downloading the dependencies:

(env)$ python manage.py migrate
(env)$ python manage.py create_superuser
(env)$ python manage.py runserver

And navigate to http://127.0.0.1:8000/.

The home page is the API documentation.

What do you need know about the challenge

I removed the session authentication and I didn't set up the authentication by JWT or similar token, so the API is open for everybody.

To run in docker-compose

I suppose you have installed docker and docker-compose. If not, try here

Run:

$ docker-compose up

and server runs in development mode.
When docker-compose runs, call commands for DB migrations, create superuser if not exists, and then run the server in 8080 port.

Tests

To run the tests, cd into the directory where manage.py is:

(env)$ python manage.py test users
(env)$ python manage.py test transactions

or for all:

(env)$ python manage.py test