Visual Source

Real-time soccer match operations and social graphic automation.

Project Overview

Visual Source is a multi-tenant platform for soccer clubs to manage matchday operations, generate dynamic graphics, and automate social media posting. Built as a production Turborepo monorepo with containerized deployment.

My Contribution

The problem: Coordinate match events, branded graphics, and social publishing for soccer clubs.

My role: Full-stack platform development, graphic rendering, data synchronization, and deployment.

The result: Clubs can log match events, generate graphics, and schedule social publishing from one workspace.

Key Features

  • ✓Architected a multi-tenant soccer club dashboard with isolated workspaces for multiple sports organizations.
  • ✓Engineered a headless canvas rendering pipeline with Fabric.js, node-canvas, and Sharp, storing compiled matchday graphics in Cloudflare R2.
  • ✓Integrated Facebook, Instagram, and Twitter Graph APIs with polling and media chunking for automated matchday posting.
  • ✓Designed a Sportmonks API synchronizer using PostgreSQL advisory locks to prevent write collisions.
  • ✓Developed a live event logging UI with game-state tracking, automatic score override mechanisms, and a cron-scheduled graphic publishing queue.
  • ✓Deployed a containerized stack with Docker Compose, PostgreSQL, Next.js, and Caddy for SSL and reverse proxying.

Technologies Used

Next.js
Turborepo
Better Auth
PostgreSQL
Fabric.js
node-canvas
Sharp
Cloudflare R2
Docker Compose
Caddy