Git Product home page Git Product logo

pedrolucasom / goldvision-api Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 27.4 MB

: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:

Java 97.70% HTML 1.05% Dockerfile 1.25%
spring-boot spring-security spring-cloud google-cloud-storage spring-data-jpa jwt-authentication jwt-token mailer-service scheduler swagger swagger-ui swagger2 flyway jasper-reports jaspersoft-studio tymeleaf docker docker-compose dockerfile dotenv

goldvision-api's Introduction

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: [email protected]
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.

goldvision-api's People

Contributors

pedrolucasom avatar

Stargazers

 avatar

Watchers

 avatar  avatar

goldvision-api's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.