Portfolio Facens

Published At: 1-Jul-2022
Modified At: 27-Dec-2022
1 min read / 166 words
Author: Vinícius Lourenço

React
NestJS
TypeScript

Portfolio Facens is a project to show the solutions developed by Liga and other sectors that are within the Facens company.

In this project, I developed the frontend using React and used libraries like Zustand and React Query to handle state and requests. The site was hosted within AWS using AWS S3 and AWS Cloudfront.

For the backend, I used NestJS and TypeScript and it was hosted inside AWS Lambda using AWS RDS as database service.

In this project I also use services like AWS S3 to host the files, I added OAuth2 authentication and I integrate with Cloudflare Stream to serve all the video files.

The Cloudflare Stream integration was very interesting because I structured the API using some design patterns that made it easy to integrate with Cloudflare Stream without much effort. The workflow for this integration is: whenever a video file link is sent, I emit an event. I have a listener that checks if it is hosted inside our S3 Bucket, if so I send a request to Cloudflare Stream to process the video inside that S3 Bucket, then Cloudflare sends it back to me a notification when processing is complete.


Architecture

Images