Skip to content

A simple web service that continuously collects latest currency exchange rates from open APIs and provides them like its own RESTful API (json/xml). Python, Flask, CI/CD with GitHub Actions to Azure.

valerii-martell/golden-eye

Repository files navigation

Golden Eye

Codacy Badge Flake8 Pytest CodeQL Deploy

https://golden-eye.azurewebsites.net/

A simple web service that continuously collects current currency exchange rates from open banking and crypto exchange APIs, displays them on the website and provides them in JSON and XML formats through its own RESTful API. Manually editing exchange rates and manually requesting the latest updates is also available. The system automatically collects all required currency exchange rates and updates them in the database every hour.

Technology stack:

  • Language: Python
  • Framework: Flask
  • Databases: 2 PostgreSQL separated for main data and for external APIs logs
  • ORM: Peewee
  • Jobs scheduler: APScheduler
  • Frontend: Jinja2 and Bootstrap 4
  • WSGI: Gunicorn
  • Testing: Pytest and Coverage
  • Logging: core - Python build-in logging, web - Flask logging
  • Linter: Flake8
  • Containerization: Docker
  • Deployment: Azure
  • CI/CD: GitHub Actions

External APIs used (JSON and XML):

DBs structure: https://drawsql.app/kpi-6/diagrams/golden-eye drawSQL-export-2022-07-23_15_32

About

A simple web service that continuously collects latest currency exchange rates from open APIs and provides them like its own RESTful API (json/xml). Python, Flask, CI/CD with GitHub Actions to Azure.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published