Full-Stack Architecture · Google Developer Ecosystem · Agentic Velocity

Solo-development, redefined.Enterprise velocity powered by the Google Ecosystem.

SenaySoft Holdings is engineered around a modern thesis: by combining Google Gemini architectural reasoning, Antigravity CLI (agy) autonomous execution, cost-audited Firebase infrastructure, and Vertex AI multimodal speech pipelines, a disciplined studio can ship and scale multi-platform language ecosystems across iOS, Android, and Web.

Solo-Development Redefined & The Google AI Workflow
Gemini · Antigravity CLI (agy) · Google Flow

Pillar 01 · Production Stack

Solo-Development Redefined & The Google AI Workflow

Gemini & NotebookLM Architecture SpecsAntigravity CLI (agy) Sandboxed ExecutionGoogle Flow Lip-Synced Video Pipeline
01 · Agentic Engineering · Multi-Repo Orchestration

Solo-Development Redefined & The Google AI Workflow

What traditionally required separate mobile, web, cloud, and media production teams is orchestrated through a tightly disciplined, human-directed Google AI engineering pipeline—allowing a single architect to ship and maintain four synchronized production codebases with zero compromise in code quality.

01 · Google Gemini & Gemini Notebook for Master Architecture

Every architectural phase, cross-app schema contract, and bilingual pedagogical blueprint is synthesized in Google Gemini and Gemini Notebook—maintaining living context across our iOS, Android, and Next.js repositories before a single line of code is written.

02 · Antigravity CLI (agy) Autonomous Multi-Repo Execution

We pair-program with Google DeepMind's Antigravity CLI (agy) inside strict, terminal-reviewed sandboxes. Companion repositories are mounted as read-only reference sources while every multi-file refactor is verified against strict TypeScript compilation (npx tsc --noEmit) prior to commit.

03 · Google Flow Tools for Automated Lesson Illustration & Avatar Video

Hundreds of culturally authentic dialogue scenes, lexical illustrations, and lip-synced conversational avatar clips (.m4v) are generated and normalized through Google Flow creative pipelines—turning studio scripts into interactive video lessons at a fraction of traditional studio overhead.

Universal Mobile Core & Multi-Store Release Pipeline
React Native 0.81.5 · Expo SDK 54 · EAS Build

Pillar 02 · Production Stack

Universal Mobile Core & Multi-Store Release Pipeline

React Native 0.81.5 + Expo SDK 54Zustand + NativeWind Light/Sepia ThemesSentry JSI Monitoring + EAS Multi-Store
02 · Native Mobile Runtime · iOS & Android Flagships

Universal Mobile Core & Multi-Store Release Pipeline

Our mobile flagships—Learn Tigrinya Complete, LinguaHabesha (English ብትግርኛ), and Tigrinya Basics—run on a unified React Native New Architecture runtime engineered for deterministic 60fps Ge'ez typography, offline media caching, and continuous multi-store delivery.

01 · React Native 0.81.5 (New Architecture), Expo SDK 54 & TypeScript

Built strictly on the React Native 0.81.5 New Architecture with Expo SDK 54, Zustand persistent state stores, and NativeWind utility tokens supporting instant switching between high-contrast Light Mode and eye-soothing Warm Sepia Dark Mode.

02 · Device Ergonomics & Programmatic Tablet Portrait Locks

Using expo-screen-orientation and dynamic viewport scaling, our 50-step video dialogue theater and Ge'ez keyboard grids enforce deterministic portrait ergonomics across iPhones, iPads, and Android tablets while isolating Ethiopic script runs via <TigText> and <MixedText>.

03 · Sentry Stability Telemetry & EAS Multi-Store Deployment

Every production build integrates Sentry native exception and JSI audio watchdog telemetry, and ships through automated Expo Application Services (EAS Build) pipelines directly to Apple App Store Connect (com.senaysoft.tigrigna101, com.senaysoft.learnenglish) and Google Play Console (com.senaysoft.fidelatlearner).

Firebase Cloud Infrastructure, Cost-Audited Firestore & RevenueCat Sync
Cloud Functions v2 · firestoreTracer.ts · RevenueCat

Pillar 03 · Production Stack

Firebase Cloud Infrastructure, Cost-Audited Firestore & RevenueCat Sync

Custom firestoreTracer.ts Read AuditingOnce-Per-Launch Cooldown GuardsRevenueCat → Firebase Custom Claims
03 · Serverless Cloud · Read-Audited Persistence

Firebase Cloud Infrastructure, Cost-Audited Firestore & RevenueCat Sync

Scale in consumer education requires strict cloud cost discipline. We pair Firebase Cloud Functions (v2), Firebase Auth, Firebase Storage, and Cloudflare-fronted Firebase App Hosting with custom client-side read-audit instrumentation and server-verified entitlement claims.

01 · Custom firestoreTracer.ts & Once-Per-Launch Cooldown Guards

To eliminate redundant document billing and snapshot listener leaks, our custom firestoreTracer.ts utility audits every Firestore query in development and enforces throttled session cooldown guards—ensuring paid server reads (such as user notification preferences and catalog manifests) execute at most once per app launch.

02 · Firebase Cloud Functions (v2), Storage & Cloudflare DNS

All lesson audio (.mp3) and dialogue video (.m4v) assets are served from Firebase Storage with aggressive local disk caching (AudioCacheManager & VideoCacheManager), while our web platforms deploy on Firebase App Hosting fronted by Cloudflare DNS.

03 · RevenueCat Webhook Sync & Server-Side Firebase Custom Claims

In-app subscriptions across iOS and Android are unified via RevenueCat webhooks that write server-side Firebase Auth Custom Claims—securely gating premium 50-step Dialogue tiers while keeping foundational Ge'ez Alphabets (ፊደላት) and Numbers (0–99,999,999) 100% free for the community.

Vertex AI Speech Fine-Tuning & Next.js Studio CMS
Gemini 2.5 / 3.6 Flash · Chirp 3 · Studio CMS

Pillar 04 · Production Stack

Vertex AI Speech Fine-Tuning & Next.js Studio CMS

Dual-Write AI Audit Pipeline (.jsonl)Vertex AI Gemini 2.5 & 3.6 Flash ScoringGoogle Cloud STT V2 (Chirp 3) Adaptation
04 · Multimodal Speech AI · Next.js 16 Authoring Studio

Vertex AI Speech Fine-Tuning & Next.js Studio CMS

Standard speech recognition models fail on East African Semitic ejectives (ቀ, ጠ, ጸ, ጨ) and pharyngeal consonants (ሐ, ዐ). Our companion Next.js 16 Studio CMS (linguahabesha.com) doubles as a live curriculum publisher and a human-in-the-loop acoustic dataset factory.

01 · Next.js 16 Admin Studio CMS & Push Broadcast Engine

Content authors use our authenticated Studio CMS at linguahabesha.com to publish scenarios, configure concord grammar tables, normalize sound effects, and broadcast targeted push notifications across iOS and Android via expo-server-sdk and firebase-admin.

02 · Human-in-the-Loop Acoustic Audit & JSONL Dataset Curation

Live learner voice submissions and phonetic evaluations are logged to ai_feedback_audit. Linguists review, correct, and approve clean Tigrinya/English audio-transcript pairs into ai_dataset_curated, exporting standardized JSONL training bundles with a single click.

03 · Fine-Tuning Vertex AI (Gemini Flash) & Cloud STT V2 (Chirp 3)

Those curated JSONL datasets directly power our multimodal pronunciation grading functions on Vertex AI (Gemini 2.5 & 3.6 Flash) and acoustic model adaptation for Google Cloud Speech-to-Text V2 (Chirp 3)—building a proprietary Semitic speech moat that improves with every learner.

Un-Mocked Production Data · Real Firestore Snapshots

Inspect the real Firestore schemas powering our apps.

Explore the actual production JSON documents authored in our Studio CMS and consumed by our React Native and Next.js learning engines—complete with bilingual word breakdowns, 5-form gender/plural concords, rich-text grammar explanations, and deterministic media paths.

Live Production Firestore Dataset Selector
Path: scenarios/greetings-street-1-2 (10 records)

1. Select Lesson / Lexical Node

#1 of 10

2. Extracted Lesson Metadata

lesson_1 · order #1

Target Phrase (content)

Hi, do you live around here?

Native Translation (translation)

ሰላም፡ ኣብዚ ድዩ ገዛውትኺ፧

Quizzes

3 nodes

Concords

5 variants

About Notes

1 blocks

Deterministic Media Paths

video: /assets/dialogue/greetings-street-1-2/videos/greetings-street-1-2-one.m4v

audio: /assets/dialogue/greetings-street-1-2/audios/greetings-street-1-2-one.mp3

3. Cross-Platform Runtime Consumers

React Native 0.81.5 (iOS & Android): Hydrated once via cost-audited Firestore reads, cached to local disk by AudioCacheManager & VideoCacheManager, and compiled into a 50-step spaced-repetition sequence inside useDialogueStore.

Next.js 16 Web App & Studio CMS: Authored in LessonEditorModal / WordItemEditorModal, normalized via mediaUtils.ts, and played through our single-channel playUrlAndWait HTML5 sequencer.

scenarios/greetings-street-1-2 → lessons[0]
{
  "wordBreakdown": {
    "tigrinya": [
      "Hi",
      ",",
      "do you live around here",
      "?"
    ],
    "english": [
      "ሰላም",
      "፡",
      "ኣብዚ ድዩ ገዛውትኺ",
      "፧"
    ]
  },
  "imageFile": "",
  "type": "video_lesson",
  "order": 1,
  "video": "/assets/dialogue/greetings-street-1-2/videos/greetings-street-1-2-one.m4v",
  "concords": [
    {
      "id": "concord_1",
      "content": "Hi, do you live around here?",
      "translation": "ሰላም፡ ኣብዚ ድዩ ገዛውትኺ፧",
      "tigrinya": "Hi, do you live around here?",
      "english": "ሰላም፡ ኣብዚ ድዩ ገዛውትኺ፧",
      "imageFile": "/assets/dialogue/greetings-street-1-2/images/greetings-street-1-2-one-1.jpg",
      "order": 1,
      "imageFilename": "greetings-street-1-2-one-1.jpg"
    },
    {
      "id": "concord_2",
      "content": "Hi, do you live around here? ",
      "translation": "ሰላም፡ ኣብዚ ድዩ ገዛውትኻ፧",
      "tigrinya": "Hi, do you live around here? ",
      "english": "ሰላም፡ ኣብዚ ድዩ ገዛውትኻ፧",
      "imageFile": "/assets/dialogue/greetings-street-1-2/images/greetings-street-1-2-one-2.jpg",
      "order": 2,
      "imageFilename": "greetings-street-1-2-one-2.jpg"
    },
    {
      "id": "concord_3",
      "content": "Hi, do you live around here?",
      "translation": "ሰላም፡ ኣብዚ ድዩ ገዛውትኽን፧",
      "tigrinya": "Hi, do you live around here?",
      "english": "ሰላም፡ ኣብዚ ድዩ ገዛውትኽን፧",
      "imageFile": "/assets/dialogue/greetings-street-1-2/images/greetings-street-1-2-one-3.jpg",
      "order": 3,
      "imageFilename": "greetings-street-1-2-one-3.jpg"
    },
    {
      "id": "concord_4",
      "content": "Hi, do you live around here?",
      "translation": "ሰላም፡ ኣብዚ ድዩ ገዛውትኹም፧",
      "tigrinya": "Hi, do you live around here?",
      "english": "ሰላም፡ ኣብዚ ድዩ ገዛውትኹም፧",
      "imageFile": "/assets/dialogue/greetings-street-1-2/images/greetings-street-1-2-one-4.jpg",
      "order": 4,
      "imageFilename": "greetings-street-1-2-one-4.jpg"
    },
    {
      "id": "concord_5",
      "content": "Hi, do you live around here?",
      "translation": "ሰላም፡ ኣብዚ ድዩ ገዛውትኹም፧",
      "tigrinya": "Hi, do you live around here?",
      "english": "ሰላም፡ ኣብዚ ድዩ ገዛውትኹም፧",
      "imageFile": "/assets/dialogue/greetings-street-1-2/images/greetings-street-1-2-one-5.jpg",
      "order": 5,
      "imageFilename": "greetings-street-1-2-one-5.jpg"
    }
  ],
  "content": "Hi, do you live around here?",
  "audioFile": "/assets/dialogue/greetings-street-1-2/audios/greetings-street-1-2-one.mp3",
  "about": [
    {
      "word": "do you live around here",
      "translation": "ኣብዚ ድዩ ገዛውትኺ",
      "explanation": {
        "richText": [
          {
            "type": "sub_heading",
            "content": "You - ፍልልይ ጾታን ቁጽርን ኣብ ትግርኛን እንግሊዝኛን "
          },
          {
            "content": "ዝርዝር መግለጺ\n🗣️ መብርሂ - ተዛረብቲ ትግርኛ ከተኩሩሉ ዘለዎም ሜላ ትምህርቲ\n\nኣምር ሰዋስው: You ንኹሉ ጾታ/ቁጽሪ ዘመልክት ቃል እንግሊዝ\n\nኣብ ትግርኛ፡ ግሲ (verb) ከምኡውን ክንዲ-ስም (pronoun) ምስ ጾታን ቁጽርን ናይቲ ዘመልክቶ ይፈላለ። ንኣብነት፡ \nንስኻ -› You \nንስኺ -› You \nንስኻትኩም -› You \nንስኻትክን -› You \n\nኣብ እንግሊዝኛ ግን፡ You ኣድማሳዊ ክንዲ-ስም (Uinversal pronoun) ኮይኑ የገልግል።  ከምኡውን እቲ ግሲ do ኣብ do you live ምስኡ ሓቢሩ ይኸይድ። \n\nስለዚ You ንወዲ ይኹን ንጓል፡  ንሓደ ይኹን ንብዙሕ የገልግል። \n\nምስትውዓል ዘድልዮ፡\nበዚ ምኽንያት ትግርኛ  ኣብ ጾታን/ቁጽርን ብዝርዝር ዝፈላሊ (very gender specific) ክኸውን ከሎ፡ እንግሊዝኛ ግን ኣብ ጾታን/ቁጽርን ብዙሕ ኣይፈላልን። ነዚ ምስትውዓል፡ ንቕልጡፍ ምልከት እንግሊዝኛ ሓጋዚ’ዩ።\n",
            "type": "paragraph"
          },
          {
            "type": "sub_heading",
            "content": "ቃል ብቓል ምትርጓም ኣወግድ: "
          },
          {
            "content": "ንኣብነት፡ \"ሰላም፡ ኣብዚ ድዩ ገዛውትኺ\" ንእትብል ዘረባ፡ \"Peace, your neighbourhood here?\" ኢልና ቃል-ብቓል ክንትርጉማ የብልናንን፡ ጌጋ ድማ'ዩ። ንቕልጡፍን ኣድማዕን ምልከት እንግሊዝኛ፡ ነዞም ዝስዕቡ ነጥብታት ንጠቐም፡-\n\nምሉእ ሓሳብ ከም ሓደ ስእሊ ምርዳእ፦ \nነቲ ዘረባ ወይ ዲያሎግ ቃል ብቓል ካብ ምትርጓም ተቖጠብ። ኣብ ክንድኡ ግን፡ ነቲ ምሉእ ሓሳብ ብጥሙሩ ንምርዳእ ፈትን።\n\nምስማዕን ምንባብን ምልምማድ፦ \nኣብቲ ናይ እንግሊዝኛ ዝርርብ ብብዝሒ ምስማዕን ምንባብን ኣተኩር። እቲ ናይ ትግርኛ ትርጉም ሓፈሻዊ ትሕዝቶ ናይቲ ትምህርቲ ንምእማት ጥራይ ተጠቐመሉ።\n\nብእንግሊዝኛ ምሕሳብ ምልምማድ፦ \nእቲ ናይ እንግሊዝኛ ቅርጺ ሰዋስው ካብ ትግርኛ ፍጹም እተፈልየ ብምዃኑ፡ ቃላት ብቕደም-ተኸተል ትግርኛ ክንሰርዖም ኣይንፈትን።\n\nባህርያዊ ኣገባብ እንግሊዝኛ ምልምማድ፦ \n\"ሰላም፡ ኣብዚ ድዩ ገዛውትኺ\" ንምባል ኣብ ክንዲ ቃል ብቓል እናመዓራረኻ ምርኣይ፡ ሓደ ተዛራባይ እንግሊዝ ብባህርዩ \"Hi, do you live around here?\" ወይ \"Hello, is this your neighborhood?\" ዝጥቀመሉ ሓሳብ ቁልብ ኣቢልካ ምውሳድ፡ ንቕልጡፍ ምልከት እንግሊዝኛ ኣዝዩ ጠቓሚ'ዩ።\n",
            "type": "paragraph"
          }
        ]
      }
    }
  ],
  "quizzes": [
    {
      "correctAnswer": 0,
      "video": "/assets/dialogue/greetings-street-1-2/videos/greetings-street-1-2-one.m4v",
      "id": "quiz_l1_1",
      "options": [
        "Hi, do you live around here?",
        "Hi, where is your house?",
        "Hello, do you know this place?",
        "Hi, do you stay today?"
      ],
      "type": "video_quiz_button_tig",
      "order": 1,
      "videoFilename": "greetings-street-1-2-one.m4v"
    },
    {
      "options": [
        "ሰላም፡ ኣብዚ ድዩ ገዛውትኺ፧",
        "ሰላም፡ ከመይ ኣለኺ፧",
        "ሰላም፡ ኣብዚ ድዩ ገዛውትኹም፧",
        "ሰላም፡ ኣብዚ ድዩ ገዛውትኽን፧"
      ],
      "order": 2,
      "type": "video_quiz_button_eng",
      "video": "/assets/dialogue/greetings-street-1-2/videos/greetings-street-1-2-one.m4v",
      "correctAnswer": 0,
      "id": "quiz_l1_2",
      "videoFilename": "greetings-street-1-2-one.m4v"
    },
    {
      "video": "/assets/dialogue/greetings-street-1-2/videos/greetings-street-1-2-one.m4v",
      "type": "video_text_quiz_typing",
      "correctAnswer": "Hi, do you live around here?",
      "options": [],
      "order": 3,
      "id": "quiz_l1_3",
      "videoFilename": "greetings-street-1-2-one.m4v"
    }
  ],
  "id": "lesson_1",
  "concordMeta": {
    "caseType": 1,
    "count": 5
  },
  "mode": "video",
  "focus_phoneme": "",
  "literalTranslation": "ሰላም፡ ኣብዚ ድዩ ገዛውትኺ፧",
  "translation": "ሰላም፡ ኣብዚ ድዩ ገዛውትኺ፧",
  "videoFilename": "greetings-street-1-2-one.m4v",
  "audioFilename": "greetings-street-1-2-one.mp3"
}
Source: Un-mocked production Firestore snapshot in lib/data/UTF-16 Ge'ez (ግዕዝ) + Latin Bilingual Schema
Production Engineering Guarantees

Built for cloud efficiency, native responsiveness, and acoustic precision.

Every layer of our stack—from once-per-launch Firestore cooldown guards to our curated JSONL speech fine-tuning pipeline—is engineered for sustainable, long-term scale.

1 Read / Launch

Cost-Audited Firestore

Throttled cooldown guards and firestoreTracer.ts prevent runaway cloud read billing.

4 Codebases

Agentic Solo Velocity

iOS, Android, Web Learning App, and Studio CMS orchestrated via Gemini & Antigravity CLI.

100% Free

Fidel & Numbers Tier

RevenueCat custom claims gate advanced dialogues while keeping foundational literacy open to all.

JSONL → Chirp 3

Proprietary Speech Corpus

Studio CMS curates real Ge'ez transcripts and audio for Vertex AI & Google Cloud STT V2.

Experience the Architecture Live

Test our live interactive learning engines or explore SenaySoft Labs.

Try the 50-step video dialogue engine, sentence builder, Fidelat studio, and hands-free AI Tutor directly in your browser on our Products showcase.