Hello,
We’re continuing to make great progress on Zeme Team. Today we’ve completed the setup process for our infrastructure (Milestone 3). Below is a break down on what our technical stack looks like.
React.js
We’re writing the ZT web application in Next.js (https://nextjs.org/). Next is a popular react framework that makes React easier, while also coming with its own feature set and extensions.
Supabase
We’ve spun up a Postgres database via Supabase (https://supabase.io/) and connected in to our React app. Supabase comes with crud APIs for each db table, eliminating the need for us to manage and write our own APIs.
Cloudinary
Asset management is one of the most tricky parts to ZT. We considered rolling a s3 bucket and managing all assets directly. However, we needed a lot more flexibility to easily convert asset file types, dimensions and sizes. Writing our own logic to convert the assets into many different sizes and formats introduced more complexity than we were willing to take on right now.
ZT will be a very bandwidth/resource heavy application (never ending scrolling of images, animated gifs and eventually videos) and to ensure the application performs well enough on most devices, we need to convert image assets to WebP format (in browsers that support it).
For example, gifs are terrible when it comes to performance and Cloudinary (https://cloudinary.com/) allows us to easily convert them into WebP or MP4 — saving up to 80% on file size and bandwidth.
Amazon Rekognition
We’ll be using Amazon Rekognition (Machine Learning Image and Video Analysis - Amazon Rekognition - Amazon Web Services) to programmatically check each user uploaded image for nudity, extreme violence, etc. Any image that gets flagged by Rekognition will be marked as ‘in review’ and will require a human to check on it before displaying it to the public. This will help ensure ZT is a safe place to browse content.
Vercel
ZT will be hosted on Vercel (https://vercel.com/). Vercel easily connects to GitHub repos making it painless to deploy changes to production in one command. We have it hooked up to the ZT web repo, which will auto deploy upon master
build updates.
GitHub
All of our code will be managed in GitHub. All code will be open source.
That’s mostly it. All of our infrastructure is up and running and development of ZT has started. I’m expecting we’ll have much more to share with everyone by the end of June.
Thank you!
Ziga