This repository serves as the main project for Urlzinha, a URL shortener application. It combines two microservices as Git submodules:
- URL Generation: Handles the creation of shortened URLs.
- URL Redirection: Manages redirection based on the shortened URLs.
URLzinha is designed as a microservices architecture to demonstrate practical integration of AWS services. Each subproject has its own repository and purpose:
- URL Generation: Provides a POST endpoint to generate shortened URLs with an expiration time.
- URL Redirection: Offers a GET endpoint to redirect users to the original URL or return an error if expired.
- Language: Java (AWS SDK v2, Jackson)
- AWS Services: Lambda, S3, API Gateway
- Version Control: Git submodules
To clone this repository and initialize the submodules:
git clone https://github.com/Vogon38/urlzinha.git
cd urlzinha
git submodule update --init --recursive
If the submodules have been updated, you can pull the latest changes:
git submodule update --remote
When the submodules are updated, add and commit the changes in the main repository:
git add .
git commit -m "Updated submodules"
git push origin main
You can navigate into the submodule directories and work on the projects individually:
cd url-generation
# Make changes
git add .
git commit -m "Your changes"
git push origin main
cd ../url-redirection
# Make changes
git add .
git commit -m "Your changes"
git push origin main
This project was developed as part of a course offered by RocketSeat. It demonstrates the integration of AWS services with microservices architecture.