Skip to content

dev-mauricioAB/imersao-fullstack-fullcycle

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Imersão Fullstack Full Cycle 🚀

This repository gathers all the projects developed during the Imersão Fullstack / Full Cycle program.
It represents a complete full-stack environment, combining backend, frontend, messaging, and cloud deployment with modern technologies such as Go, TypeScript, Kafka, Docker, and Kubernetes.


🧩 Overview

The goal of this repository is to integrate multiple components of a distributed architecture — from APIs and services to user interfaces and deployment pipelines.
Each folder corresponds to a distinct module that can be explored, studied, and executed independently.

Main Modules

Module Description Main Tech
bank-api Backend API responsible for account management, transactions, and core business logic. Go / REST API
bank-frontend Frontend interface that allows users to interact with accounts and view transactions. TypeScript / React / SCSS
codepix Payment microservice that simulates PIX-like transactions using event-driven communication. Go / Kafka
apache-kafka Kafka setup and sample producer/consumer implementations. Go / Docker
k8s Kubernetes manifests to deploy and orchestrate all services. YAML / Kubernetes

🏗️ Architecture

The repository demonstrates a simplified microservices-based banking system.
Each component communicates through REST APIs or message streams handled by Kafka.


[ bank-frontend ]  →  [ bank-api ]  →  [ codepix ]  →  [ Kafka ]
↓
[ k8s cluster ]

  • Frontend: Consumes the backend API for user operations.
  • Backend (Go): Handles business logic, data persistence, and message publishing.
  • Kafka: Enables asynchronous communication between services.
  • Kubernetes: Manages containerized deployments for scalability and fault tolerance.

⚙️ Tech Stack

Layer Technologies
Frontend TypeScript, React, SCSS
Backend Go (Golang), REST
Messaging Apache Kafka
Infrastructure Docker, Docker Compose, Kubernetes
Databases PostgreSQL / SQLite (depending on module)
Version Control Git & GitHub

🧠 Learning Objectives

This project demonstrates how to design, build, and deploy scalable applications with modern tools:

  • Create microservices with clear communication boundaries.
  • Develop backend services in Go, handling business logic and event streaming.
  • Build frontend applications with TypeScript and modern UI patterns.
  • Implement asynchronous communication with Kafka.
  • Manage containers and deployments using Docker and Kubernetes.
  • Apply infrastructure as code concepts for consistent environments.

🚀 Running Locally

Prerequisites

Before running, ensure you have the following installed:

Setup Steps

  1. Clone this repository

    git clone https://github.com/dev-mauricioAB/imersao-fullstack-fullcycle.git
    cd imersao-fullstack-fullcycle
  2. Choose a module to run

    cd bank-api     # or bank-frontend, codepix, etc.
  3. Start the services

    docker compose up
  4. Access the applications


📁 Repository Structure

.
├── bank-api/             # Go backend API
├── bank-frontend/        # TypeScript frontend
├── codepix/              # Go microservice for PIX-like transactions
├── apache-kafka/         # Kafka config and message examples
├── k8s/                  # Kubernetes manifests and deployment files
└── README.md             # Project documentation

🧾 Example Use Cases

  • Bank API: Create and manage accounts, handle balances, and process transactions.
  • CodePix: Simulate payment transfers between accounts using event-driven patterns.
  • Kafka: Process and consume messages asynchronously to decouple services.
  • Kubernetes: Deploy and scale all microservices in a containerized environment.

🔍 Future Improvements

  • Add unit and integration tests for all services
  • Implement CI/CD pipeline (GitHub Actions)
  • Improve API documentation (Swagger / OpenAPI)
  • Add observability (logs, metrics, tracing)
  • Introduce authentication and user management
  • Add infrastructure diagrams and deployment guide

👨‍💻 About the Author

Maurício Alexandre Barroso Frontend & Fullstack Engineer passionate about scalable architectures, clean code, and continuous learning.

  • 🌐 LinkedIn
  • 💻 GitHub
  • ✉️ Always open to connect and collaborate on projects involving frontend, backend, or distributed systems.

📚 Credits

This repository is based on the Imersão Fullstack / Full Cycle program, which explores full-stack concepts and modern software architecture. All projects were implemented for educational and portfolio purposes.


🪪 License

This repository is shared for educational use. Feel free to explore, fork, and experiment with the code.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 51.3%
  • Go 36.4%
  • SCSS 10.0%
  • Other 2.3%