It was Halloween day, but in this self-restraint mode, it's hard to go out and enjoy dressing up in costumes.
So I made an app that lets you enjoy Halloween online!
Halloween has already passed, but you can even enjoy this app!
The usage is as shown in the following slide.
First, when you visit to https://ohmyface.ai/, you can choose a favorite style from this week's popularity ranking or the overall ranking.
This ranking is based on the number of styles converted, and is updated daily at 9pm (JTC).
Once you have selected a style, all you have to do is just upload the image you want!
The loading process will run automatically and the image will be converted.
Don't worry, the uploaded images are not retained by the server.
The configuration is as follows.
Infrastructure...AWS (API gateway, Lambda, dynamo DB, s3)
Frontend...Next.js + TypeScript + Chakra UI
In order to develop the ranking, I created an API to post which style the image was converted in, along with a timestamp, then store the data in dynamo.
In order to aggregate the data, I create a Lambda function that returns the style data sorted by the number of conversions, and save the results in another table in dynamo.
That Lambda function is run once a day by EventBridge.
Then, I also created an API to access the dynamo table where the aggregate results are stored and retrieve the data, and call it from the client side to display the ranking order.
For the frontend, I used the usual Next.js + TypeScript, but this time I used Chakra UI for the first time.
It was very easy to use, and I'll use again for sure!
Halloween is over, but I think it's an app that can be enjoyed even after Halloween, so I'd be happy if you could play it!
Please send me a message if you need.