All projects
my-website

my-website

Personal website with a CMS-style admin panel, multilingual blog, and portfolio — built as a full-stack monorepo.

View on GitHub

Stack

Next.jsReactNestJSTypeScriptPrismaPostgreSQLTailwindCSSFirebaseZodTipTapTurborepo

About the project

A personal website featuring a public portfolio, multilingual blog (EN/PT), and a fully custom admin dashboard for managing all content. Built end-to-end with a NestJS API, Next.js frontend with SSR, TipTap rich-text editor, and Firebase authentication — self-hosted on a VPS with automated CI/CD. - Multilingual content — Full EN/PT support with locale-prefixed URLs and per-entity translations - Custom admin dashboard — CRUD for profile, career, projects, and blog posts, protected by Firebase Auth - Rich-text editor — TipTap WYSIWYG editor for writing and formatting blog posts - Security logging — Dashboard view for auth failures, rate limits, and internal errors - Self-hosted — Docker Compose + Nginx on a VPS, deployed via GitHub Actions