Full-Stack Product Project

Translatinator

Overview

Translatinator is a full-stack language learning platform designed to help users refresh a familiar language while learning a new one through interleaved translation, synchronized text-to-speech, and interactive practice games.

The application supports typed input, file uploads, speech-to-text, multi-language output, downloadable audio, premium subscriptions, and a points-based system tied to games, themes, and a global leaderboard.

Key Features

  • Raw text, PDF/TXT upload, and speech-to-text input
  • Translation into multiple target languages
  • Per-language voice and speed controls
  • Sentence or paragraph-level alternating playback
  • Clickable synchronized text highlighting during audio playback
  • Downloadable and cloud-saved MP3 output
  • Premium subscriptions, points, themes, and leaderboard
  • Interactive language-learning games

What I Learned

This project taught me how to design a user-facing product that combines frontend UX, backend orchestration, third-party APIs, cloud services, monetization, and gamification. It pushed me to think about both the technical architecture and the long-term product experience for users. Prior projects did not have as much emphasis on user experience in comparison, so building a web-app with users as the primary focus was a fresh learning experience.

Product Workflow

The core experience is organized around three steps: input, language settings, and output. Users provide text, configure how translations should be generated, and then listen through a full-play interface that highlights text in sync with the generated audio.

Home Workflow

Translatinator home page workflow

Main workflow showing input, language settings, and output in a single interface.

Language Settings

Translatinator language settings

Users can configure input language, target languages, voices, speed, and alternating frequency, with premium tiers allowing more target languages.

Full Play Mode

Translatinator full play mode with highlighted output

Generated translations are read aloud with synchronized highlighting, and users can click into the text to jump within playback.

Input & Translation Pipeline

Users can enter text manually, upload PDF or TXT documents, or use speech-to-text for supported languages. The app then translates the input into one or more target languages and generates MP3 output with configurable voices and playback speed.

Learning-Oriented Output

A core design decision was interleaved translation: instead of only showing the final translation, the application alternates between the original and translated content at the sentence or paragraph level to reinforce comprehension and retention.

Interactive Games

To reinforce learning beyond passive listening, premium users can access three language-focused games: Greeting Practice, Word Match, and Bingo. These activities connect pronunciation, vocabulary recognition, and listening comprehension to a shared point and rewards system.

Greeting Practice

Greeting Practice game

Pronunciation-focused practice with feedback, replay, and repeated attempts.

Word Match

Word Match game

Matching words across languages with a life system to discourage guessing.

Bingo

Bingo listening game

Audio-to-word matching designed to strengthen listening comprehension.

Subscriptions & Monetization

Premium tiers unlock additional target languages, higher quality voices, games, themes, fonts, and increased daily translation limits. Stripe is used to manage subscription upgrades and billing flows.

Retention & Rewards

The application includes a global leaderboard, point accumulation from translation and gameplay, and a shop for themes, fonts, and even a free month of membership, giving users a reason to continue engaging beyond one-time use.

Engagement Systems

Leaderboard

Translatinator leaderboard

Top users are ranked by points earned through gameplay and translation activity.

Point Shop

Translatinator point shop

Users can spend earned points on themes, fonts, and membership rewards.

System Architecture

The architecture combines a React frontend with a Node/Express backend, Firebase for hosting, authentication, storage, and database services, plus integrations with Google Translate, Google Text-to-Speech, Stripe, and Redis. The architecture diagram in the guide maps those relationships directly.

Translatinator system architecture overview

Design Goals

The project was motivated by a gap in existing language-learning products: beginner-oriented tools often do not work well for users who want both a refresher in one language and guided exposure to another. Translatinator was designed around customization, interleaving, and repeatable practice to address that gap.

Challenges & Constraints

The product had to balance API cost, storage, rate limits, multi-step media generation, and privacy/security concerns around authentication and billing. Also had to cut out some features, such as full MP4 generation with TTS highlighting, remained in beta due to technical complexity within timeframe.

Notes

Source code snippets available upon request due to collaboration constraints and final product being property of the client who requested it. This project was developed as a team product and documented through a full user guide and requirements appendix.

Tech Stack

  • Frontend: React
  • Backend: Node.js / Express
  • Database / Hosting: Firebase (Firestore, Auth, Hosting, Storage)
  • APIs: Google Translate, Google Text-to-Speech
  • Payments: Stripe
  • Caching: Redis