mediaflip.io

Technology Stack

An overview of the modern technologies powering the mediaflip.io architecture.

Built for performance, scalability, and security in the data world.

Next.js 15

Server-side rendering and API routing

PostgreSQL & Prisma

Application data storage using a relational database

groq

Groq

API for running language models used for content analysis and moderation

Redis & BullMQ

Caching and background task queuing

Chakra UI v3

User interface component library

TypeScript

Programming language ensuring strict type control

tRPC & React Query

Data communication between the server and the browser

nextauth

NextAuth.js

User authentication and login

zustand

Zustand

In-memory browser state management

Framer Motion

Interface animations handling

Server-Sent Events

Asynchronous communication and real-time notifications based on Redis Pub/Sub

gorse

Gorse

Go-based content recommendation engine

Technical Details

Key architecture pillars:

Scalability

Security

Performance

The service runs on Next.js 15, enabling server-side rendering (SSR) and search engine optimization (SEO). The user interface is written in TypeScript using the Chakra UI v3 library to ensure a responsive design on both mobile and desktop devices.

Data is stored in a PostgreSQL database using Prisma ORM. Redis handles background task queuing in BullMQ. Additionally, the architecture utilizes Server-Sent Events (SSE) in conjunction with Redis Pub/Sub for real-time notifications.

Automated content moderation and meme tagging are handled by language models accessed via the Groq API. The in-browser application state is managed by the Zustand library. The entire architecture is containerized in Docker and deployed in the cloud with Docker Swarm, featuring automated deployments through GitHub CI/CD.

Rafał Łukawski