Back to Portfolio

Relationship Platform

Tulia

Tulia is a full-stack relationship platform built to explore how trust, real-time interaction, and structured user flows can improve modern connection experiences. The project combines product thinking with scalable backend architecture and real-time communication.

Tulia

The Problem

Many existing platforms prioritize engagement metrics over meaningful interaction, leading to low trust and shallow user experiences. The challenge was to design a system that supports intentional connections while handling real-time interaction and scalable user flows.

The Solution

I built Tulia as a modern full-stack application using Next.js and NestJS, with a focus on authentication, user verification, matching flows, and real-time communication using WebSockets. The architecture was designed to support both product experimentation and scalability.

Challenges & Decisions

  • • Designing real-time communication workflows
  • • Structuring backend services for scalability
  • • Managing relational data with Prisma
  • • Balancing product design with technical implementation

Outcome

Tulia demonstrates my ability to build a real-time full-stack product from the ground up, combining frontend UX, backend architecture, database design, and live communication systems into a cohesive platform.

What I Learned

This project strengthened my ability to think beyond individual features and design complete systems around user flows, data integrity, scalability, maintainability, and real-world product needs.

Key Features

  • • User authentication and verification flows
  • • Matching and connection system
  • • Real-time messaging with Socket.IO
  • • Structured backend architecture with NestJS
  • • Database modeling using Prisma and PostgreSQL

Tech Stack

Next.jsNestJSTypeScriptPrismaPostgreSQLJWTSocket.IO

Architecture Overview

Next.js Frontend

Handles the user interface, onboarding, discovery, profiles, and client-side product experience.

NestJS API

Provides structured backend services for authentication, users, matching, moderation, and platform workflows.

Prisma ORM

Manages typed database access and keeps backend models aligned with the PostgreSQL schema.

PostgreSQL Database

Stores users, profiles, matches, messages, verification states, and platform activity.

Socket.IO Gateway

Powers real-time communication, messaging, typing indicators, and live interaction flows.

Project Focus

Role: Full-Stack Developer
Ownership: Architecture, UI, API, Database & Deployment
Focus: Product thinking + scalable implementation

Product Walkthrough

A glimpse into the key experiences that shape the product journey.

System Flow ⭐⭐⭐⭐

1

User Registration

A user creates an account and enters the platform through structured onboarding.

2

Verification

Trust-building flows help support safer and more intentional user interaction.

3

Profile Setup

Users complete profile information that supports matching and discovery.

4

Matching

The platform connects users through structured discovery and intentional interaction flows.

5

Real-Time Messaging

Matched users communicate through live messaging powered by Socket.IO.

Authentication

Authentication

Secure onboarding designed to establish trust from the first interaction.

Discovery

Discovery

Structured matching focused on intentional and meaningful connections.

Real-Time Messaging

Real-Time Messaging

Live conversations powered by Socket.IO for seamless communication.

Interested in building something like this?

I design, develop, test, deploy, and automate scalable systems for real-world products and business workflows.

Get In Touch