Upbranched

Type

personal

Timeframe

In-progress

Overview

A lightweight social platform built for independent communities. Users create and join 'branches' — collections of user-moderated groups — and share text, image, and video posts, vote them up or down, and reply through nested comments. Currently in development, with a release planned soon.

Tech Stack

TypeScript

Vue 3

Nuxt

Sass

PostgreSQL

NginX

design

Using Reddit as a starting point, I focused on the areas I felt it was lacking — building something more visually polished, easier to navigate, and far more customisable for the people running their own communities.

Nuxt 3 powers a fast, maintainable frontend that blends SSG and SPA rendering to stay responsive and highly SEO-friendly. The stack pairs Vite with the latest Vue 3 and TypeScript features, with Sass for structured, nested styling.

development

A social platform needs structured, relational data, so I chose PostgreSQL over the non-relational databases I'd worked with before. Every query is written in plain SQL, and all user-submitted content is validated and sanitised to guard against SQL injection.

To keep communities healthy, I integrated Google's Perspective API for automated comment moderation. Other features include full Auth0 authentication with Google and GitHub, a custom image uploader and compressor, and an Imgur web-scraper for cross-posting content while easing the load on Upbranched's own storage.