Felix Gomez Guillamon Jurado

Full Stack Banking System with CI/CD

Developed a comprehensive application, «Bank System», designed to simulate a banking environment, encompassing a backend API, a frontend interface, and associated infrastructure configurations. Here’s a detailed breakdown of the tasks involved:

 

Backend API Development

  • Engineered the backend using Python, serving as the API responsible for handling and processing all the business logic related to banking operations.
  • Structured the backend with essential files like __init__.py for initializing the Python package, models.py for defining data models, and routes.py for containing route definitions and associated handlers.
  • Ensured robust functionality by incorporating a suite of tests, including configurations in conftest.py, functional tests for route handlers in test_routes.py, and unit tests for data models in test_model.py

 

Frontend Development

  • Developed the frontend using Vue.js, providing a user interface for interacting with the bank system.
  • Established the structure with App.vue as the main component, main.js for initializing the application, index.js for defining routes, and various Vue components like AppAccounts.vue, HomePage.vue, and Skull.vue.
bank system frontend
felix gomez guillamon
resources azure
Accounts

Infrastructure Management

  • Defined infrastructure-as-code configurations in the app-service.bicep file for deploying the application.

 

Testing

  • Ensured the functionality of the backend API with a series of tests located in the backend/tests directory.

 

Deployment

  • Configured deployments to Azure, ensuring that only the production code is deployed when a new release in the main branch is created, while all development code is deployed in the dev branch.
  • Defined deployment configurations and workflows in the .github/workflows/full-stack-bank.yml file, setting up a CI/CD pipeline for the application using GitHub Actions.