Back to projects
Full-Stack 2026 / 04

TV Canaria

Full-stack news video platform with role-based access and live moderation

Overview

TV Canaria is a full-stack news video platform built for Canary Islands local media. Reporters publish video articles (stored on Cloudinary), readers watch, rate, and comment, and moderators review flagged content — all under a four-role system (READER, REPORTER, MODERATOR, ADMIN). Led the full frontend product cycle on top of a Spring Boot 3 / Java 21 backend built by a teammate.

Highlights

  • Four-role system (READER / REPORTER / MODERATOR / ADMIN) enforced on both frontend and backend — RoleGuard component redirects unauthorised users at the layout level
  • Dual auth strategy: local JWT (JJWT + HMAC-SHA256) stored in AsyncStorage + Google OAuth 2.0 via expo-auth-session, with a separate server-side token-exchange endpoint for mobile
  • File-based routing with Expo Router: (auth)/ and (app)/ layout groups handle auth redirects automatically without manual guards on every screen
  • Fully separated API layer — all HTTP calls live in dedicated api/ modules (articleApi, authApi, commentApi…); screens never call fetch directly
  • Accessibility-first: full accessibilityRole/Label/Hint props throughout + a user-togglable OpenDyslexic font via FontContext
  • Backend: classic layered architecture (controller → service → repository) with DTOs per operation and a GlobalExceptionHandler covering 8 domain-specific exceptions

Screenshots