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

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

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