/GoldVision-API

:computer: API for controlling finances with statistical data :bar_chart:, routines, e-mail release notices :mailbox_with_no_mail:, security with OAuth2 using JSON Web Tokens :closed_lock_with_key: and usability documentation with SwaggerAPI :clipboard:

Primary LanguageJava

Logo: GoldVision

Version documentation maintenance Twitter: PedroLucasOM

💻 API for controlling finances with statistical data 📊, routines, e-mail release notices 📭, security with OAuth2 using JSON Web Tokens 🔐 and usability documentation with SwaggerAPI 📋.


Prerequisites

  • docker

Install

Environment settings

Google Cloud

You will need to create a Google Cloud account to be able to access Google Cloud Storage and run the application.

To do this, you will need to generate and download the authentication keys in the JSON file.

Follow the steps:


If you do not already have a service account, create it by clicking on the top option. If you already have it, proceed to the next step by clicking on the corresponding service account:


Find the Keys tab and click on the option to add:


Click the option to create a new key:


Select the JSON option to download and click create:


After downloading the keys.json to your local machine, paste it at the root of the project and rename it to goldvision-credentials.json.

Environment variables

You will also need to create a .env file in the root path of the project to configure the application execution. The content of the .env must be like this:

DOCKER_DATABASE_USERNAME= it's recomended set "root" like the example in the picture bellow
DOCKER_DATABASE_PASSWORD= here you can put any password that you prefer

LOCAL_DATABASE_URL= here you will set your database url connection (it's only necessary if you want to run the application locally without docker, if not, you can let it empty)
LOCAL_DATABASE_USERNAME= here you will put your local database username (it's only necessary if you want to run the application locally without docker, if not, you can let it empty)
LOCAL_DATABASE_PASSWORD= here you will put your local database password (it's only necessary if you want to run the application locally without docker, if not, you can let it empty)

ORIGEM_PERMITIDA= here you will put the frontend client url that will consume your application

MAIL_EMAIL= here you will put the email address that will send emails in the application
MAIL_PASSWORD= here you will put the email password

PROJECT_ID= this information can be found in the Google Cloud Storage Service tab
BUCKET_ID= this information can be found in the Google Cloud Storage Service tab

Example values:

Run

With the docker started, execute this command at the project root:

docker-compose up -d --build

If you don't want to use the docker, you can run this application locally in your IDE. You just need add this configuration in VM_OPTIONS of your IDE:

-Dspring.profiles.active=local

Usage

Go to http://localhost:8080/swagger-ui.html

Login

Follow the following action so that you can authenticate yourself in the system and make requests in the API.

User: admin@gmail.com
Password: admin

login

Resources requests

Follow the action to make requests on the available resources:

resources

Models view

Follow the action to view the structure of the models carried in the requisitions:

models

Logout

Follow the action to logout:

logout

Schedule for sending expired entries

Author

👤 Pedro Lucas

🤝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2021 Pedro Lucas.