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.
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.
| 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 |
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.
| 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 |
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.
Before running, ensure you have the following installed:
- Docker
- Docker Compose
- Go ≥ 1.19
- Node.js ≥ 18
-
Clone this repository
git clone https://github.com/dev-mauricioAB/imersao-fullstack-fullcycle.git cd imersao-fullstack-fullcycle -
Choose a module to run
cd bank-api # or bank-frontend, codepix, etc.
-
Start the services
docker compose up
-
Access the applications
- Frontend: http://localhost:3000
- Backend API: http://localhost:8080 (or as configured per module)
.
├── 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
- 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.
- 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
Maurício Alexandre Barroso Frontend & Fullstack Engineer passionate about scalable architectures, clean code, and continuous learning.
- 💻 GitHub
- ✉️ Always open to connect and collaborate on projects involving frontend, backend, or distributed systems.
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.
This repository is shared for educational use. Feel free to explore, fork, and experiment with the code.