Skip to content

Mobile App Reference: apps/mobile (B2B companion app)

There are two Expo apps. This page is about the B2B one.

This page documents apps/mobile, the B2B companion app (package com.vidyanet.app, React Navigation): faculty, K-12, attendance, face enrollment, online classes.

For the B2C consumer app (apps/mobile-b2c, package ai.kwilo.b2c, expo-router) see Mobile B2C App Reference and the B2C mobile app feature doc.

The two apps share the backend and nothing else. Commands, package ids, and build config below apply to apps/mobile only.

Operational reference for version numbers, commands, screen inventory, and environment details.

Package Identifiers & Versions

Item Value
Package com.vidyanet.app
Framework React Native 0.81.5 + Expo SDK 54
React 19.1.0
Navigation React Navigation v7
Styling NativeWind 4.2
State Zustand 5.0 + TanStack Query 5.90
Screens 39
Services 20 API modules
Components 30
API URL https://api-staging.kwilo.ai/api/v1

Development Commands

# Start dev server
npm start
npx expo start --clear            # with cache cleared

# Android emulator
emulator -avd Medium_Phone_API_36.1 &
adb devices

# Build & install debug APK
cd apps/mobile/android && ./gradlew assembleDebug
adb install -r app/build/outputs/apk/debug/app-debug.apk
adb shell am start -n com.vidyanet.app/.MainActivity

# One-liner rebuild
cd apps/mobile/android && ./gradlew assembleDebug && adb install -r app/build/outputs/apk/debug/app-debug.apk && adb shell am start -n com.vidyanet.app/.MainActivity

# TypeScript check
npx tsc --noEmit

EAS Build Profiles

eas build --platform android --profile development   # Dev APK
eas build --platform android --profile preview        # Internal testing APK
eas build --platform android --profile production     # Play Store AAB

Troubleshooting

npx expo start --clear              # Metro cache issues
adb kill-server && adb start-server # ADB issues
adb uninstall com.vidyanet.app      # Install conflicts
cd android && ./gradlew clean       # Gradle issues
adb logcat -s ReactNative:V         # Crash logs

Screen Inventory

apps/mobile/src/screens/
├── auth/            # Login, Register, ForgotPassword
├── dashboard/       # Dashboard, Leaderboard, Achievements
├── courses/         # CourseList, Detail, Lesson
├── lessons/         # StandaloneLessonsList, LessonFeed
├── presentations/   # PresentationsList, Viewer
├── assignments/     # AssignmentList, Detail, Create, SubmissionsReview
├── ai-tutor/        # ConversationList, AIChat, DeepResearch, Sessions
├── messages/        # MessagesList, Chat
└── more/            # Settings, Calendar, Attendance, CollegeAttendance,
                     # FaceEnrollment, FaceEnrollmentManagement, FaceScan,
                     # GroupScan, OnlineClass, Profile, SchoolAnalytics
RootNavigator
├── Auth: Login, Register, ForgotPassword
└── Main (BottomTabs)
    ├── Home: Dashboard, Leaderboard, Achievements, Notifications
    ├── Courses: CourseList, Detail, Lesson, Assignments, Presentations...
    ├── AITutor: ConversationList, AIChat, DeepResearch
    ├── Messages: ConversationsList, Chat
    └── More: Settings, Calendar, Attendance, FaceEnrollment, OnlineClass,
              SchoolAnalytics, Profile...

Courses and AITutor tabs are hidden for parents.

Component Inventory

apps/mobile/src/components/
├── ui/              # Button, Card, Input, Avatar, Badge, Loading, Progress
├── ai-tutor/        # CodeOutput, ToolCall, SearchResults, RAGSources, GeneratedImage
├── college/         # CollegeProgramBanner, SubjectAttendanceCard
├── attendance/      # AttendanceTargetSelector, TargetingSelector
├── quiz/            # MCQQuestion, FillBlank, TrueFalse, ShortAnswer, MatchInput
└── misc/            # MockTestCard, MockTestResults, NotionEditor, FeatureGate,
                     # CountdownTimer, FileUploadInput, QuestionRenderer

Key Features

  • AI Tutor: SSE streaming via react-native-sse, multi-tool support
  • Face Recognition: On-device ONNX Runtime (MobileFaceNet, 512-dim embeddings)
  • Face Enrollment Management: Manage enrolled faces, group scanning
  • Deep Research: Downloadable reports, lesson publishing
  • Online Classes: 100ms HMS via WebView
  • College Support: Subject-based attendance, program/branch/semester navigation
  • Mock Tests: Practice test cards and results display
  • School Analytics: Admin analytics dashboard
  • Gamification: Achievements, leaderboard, XP system