LinguaLoop

A Modular, Tested, and Packaged Language Learning App

Jared Frazier

2026-06-07

Overview

  • Motivation
    • Practice language listening skills
    • Small segment of YouTube video
    • Your transcript vs reference
docker run -p 49152:49152 lingua-loop

System Architecture

  • API/Web Layer
    • Handle client HTTP requests
    • Handle web server responses
  • Business Logic/Services Layer
    • Parse and normalize user input
    • Compute scoring metrics for transcription attempt
  • Data Layer
    • Use “boundary” (aka integrations) to scrape reference YouTube transcripts
    • Read/write to SQLite database

Testing Strategy

tests/
├── boundary/
│   └── test_youtube_transcript_api.py
├── integration/
│   └── test_integration.py
└── unit/
    ├── api/
    ├── db/
    └── services/
  • Multi-layer testing
  • Extensive use of mocking to isolate dependencies (DB, services, external APIs)
  • Unit tests validate service logic in complete isolation
  • Integration tests run full stack: API → service → database (no mocks)
  • CI/CD on GitHub enforces all tests pass during PR

From Code to Package

Relevance

Satellite Subsystem Verification Goal LinguaLoop Equivalent
Communications Reliable communication between subsystems API endpoints and client-server communication
Payload Correct processing of mission data Language processing and business logic
Command & Data Handling Commands executed correctly and state managed Backend services, database interactions, and state

Questions?

References

  • Yeman, R., & Malaliya, Y. (2025). Accelerating Satellite Development: A Comparative Simulation of NASA’s Waterfall Process and Agile Process Using Innoslate Lifecycling Modeling Language. Naval Postgraduate School. pdf.

Appendix

Demo