A web app that converts any URL to a short "byte-link", which can easily be used and shared. Below are some examples:
- https://bytesize.link/cron - Online Cron Formatter
- https://bytesize.link/devops - DevOps Periodic Table
- https://bytesize.link/pytorch - Medium Article on Lyft & PyTorch
Website: https://bytesize.link
There are Terraform modules to deploy the web client, CI/CD pipeline, and infrastructure to AWS. These modules are found in tf_modules.
The Lambda functions can be found in the lambda_src
directory.
- The web servers auto-scale based on CPU to handle traffic.
- The servers are behind a load balancer to distribute web traffic to the scaling web servers.
- GenerateURL uses TensorFlow's Toxicity Classifier Model to filter out inappropriate custom links.
- The link to the source repository is here.
- This library had to be included as a Lambda Layer. to work with AWS Lambda
- CodePipeline is automatically triggered whenever it detects a change in this GitHub repository:
-
- The code is compiled with CodeBuild, and unit tests are executed against it.
-
- Once the code is built, and the unit tests pass, the build artifacts are stored in an S3 bucket.
-
- CodeDeploy uses the stored artifacts and deploys the updated app into the web servers.
- CodeDeploy uses a Blue/Green Deployment, using two live environments:
- Blue: Uses the existing code
- Green: Uses the new code
- After validating that the green environment works properly, I can choose to remove the blue environment
- If the green environment has issues, I can quickly switch back to the blue environment