Skip to content

iapex-org/mobile-app

IAPEX — Mobile App (Family)

React Ionic TypeScript Capacitor Vite

Mobile application for families to search for missing loved ones using hybrid AI matching.

Repository · Report Bug · Research Paper

🇬🇧 English · 🇪🇸 Español


About IAPEX

IAPEX (Hybrid AI for Missing Patient Identification) is a validated system that helps healthcare institutions identify and manage unidentified or missing patients through a fusion of facial recognition and textual analysis.

This repository contains the Mobile App — a cross-platform application (Android/iOS) for families to:

  • Upload photos of missing loved ones for facial recognition
  • Enter physical descriptions (morphological traits, clothing, etc.)
  • View potential matches ranked by similarity percentage
  • Submit contact requests to institutions when a match is found

Ecosystem

Component Repository Stack
Mobile App (this) iapex-org/mobile-app React 18, Ionic 8, Capacitor
Web Portal iapex-org/web-app Angular 19, Bootstrap, TypeScript
Core API iapex-org/core-api Spring Boot 3, PostgreSQL, MongoDB

Features

  • Hybrid Search — Combines facial recognition (75%) with text analysis (25%)
  • Facial Recognition — CNN-based identification via dlib
  • Text Matching — Levenshtein and Jaro-Winkler algorithms for morphological descriptions
  • Ranked Results — Matches ordered by similarity percentage
  • Contact Requests — Submit inquiries to institutions when a match is found
  • Secure Data — JWT authentication and end-to-end encryption
  • Cross-Platform — Android and iOS via Capacitor

Quick Start

Prerequisites

  • Node.js 18+
  • npm or yarn

Setup

git clone https://github.com/iapex-org/mobile-app.git
cd mobile-app
npm install

Create a .env file from the example:

cp .env.example .env

Configure your environment variables:

VITE_API_REST_BASE_URL=http://localhost:8080/api/v1
VITE_API_SEARCH_BASE_URL=http://localhost:8000/api/v1

Run the development server:

npm run dev

The app will be available at http://localhost:5173

Mobile Build

npm run build
npx cap sync
npx cap open android   # Android Studio
npx cap open ios       # Xcode (macOS)

Architecture

┌───────────────────────────────────────────────┐
│            Mobile App (React + Ionic)          │
│  ┌─────────┐ ┌──────────┐ ┌──────────────┐   │
│  │ Camera  │ │  Search  │ │   Results    │   │
│  │ Module  │ │  Module  │ │   Module     │   │
│  └────┬────┘ └────┬─────┘ └──────┬───────┘   │
│       │           │              │            │
│  ┌────▼───────────▼──────────────▼───────┐    │
│  │         HTTP Services (Axios)         │    │
│  └────────────────┬──────────────────────┘    │
└───────────────────┼──────────────────────────┘
                    │ JWT Auth
         ┌──────────┴──────────┐
         ▼                     ▼
┌──────────────┐     ┌──────────────┐
│  Core API    │     │  Search API  │
│  (Spring)    │     │  (FastAPI)   │
└──────────────┘     └──────────────┘

Contributing

Please read CONTRIBUTING.md for our branch naming, commit conventions, and PR workflow.

License

This project is licensed under the GNU General Public License v3.0 — see the LICENSE file for details.

Acknowledgments

Authors:

Collaborators:

  • Chávez Moreno Jose Eduardo
  • Fernández López Kevin Noé

Advisor:

  • Escobar García Arturo

Stakeholders:

  • Guarneros Nolasco Luis Rolando
  • Cruz Ramos Nancy Aracely

Academic Support:

  • Universidad Tecnológica del Centro de Veracruz

About

Mobile application for families to search for missing loved ones using hybrid AI matching (React 18, Ionic 8, Capacitor)

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages