Documentation

Complete platform documentation, guides, and technical resources

What is Vigil Track?

Vigil Track is a next-generation missing person identification platform that combines advanced AI-powered facial recognition technology with verified law enforcement databases. Our system helps reunite families by enabling rapid matching between missing person reports and community sightings.

The platform is built on the principle of collaborative safety - bringing together government agencies, law enforcement officials, and the public under one secure, transparent system. We leverage state-of-the-art machine learning algorithms to analyze facial features, physical characteristics, and contextual data to identify potential matches with unprecedented accuracy.

All data is protected with military-grade encryption and complies with international privacy standards. Our commitment to security and accuracy ensures that every match is reviewed by qualified law enforcement professionals before any action is taken.

Key Features

AI-Powered Matching

Advanced facial recognition analyzes biometric markers with 94% accuracy to match sightings against missing person database in real-time.

Official Verification

All cases are verified and reviewed by law enforcement officials with dedicated collaboration tools for seamless communication.

Secure Data Handling

Military-grade encryption with end-to-end protection ensures all personal data remains confidential and complies with privacy regulations.

Community Intelligence

Enable the public to report sightings safely and securely, creating a collaborative network for identifying missing individuals.

Real-Time Notifications

Instant alerts to relevant parties when high-confidence matches are detected, enabling immediate investigation and follow-up.

Case Management

Comprehensive tools for managing case information, tracking updates, and maintaining detailed timelines of all activities.

Technology Stack

Frontend & Client

Next.js 16

React framework with App Router for optimized performance

TypeScript

Type-safe development for robust code quality

Tailwind CSS

Modern utility-first styling framework

AI & Machine Learning

Facial Recognition

Deep learning models for biometric analysis and matching

Computer Vision

Image processing and feature extraction algorithms

ML Pipeline

Automated training and model optimization systems

Backend & Infrastructure

PostgreSQL

Secure relational database for case management

REST APIs

Scalable API architecture for integrations

Cloud Infrastructure

Enterprise-grade hosting with redundancy

Security & Compliance

AES-256 Encryption

Military-grade data encryption at rest

TLS 1.3

Secure end-to-end communication protocol

GDPR & CCPA

Full compliance with international privacy laws

How It Works

01

Report Missing Person

Law enforcement or authorized personnel submit detailed missing person reports with photos, physical descriptions, and contextual information.

02

Community Reports Sighting

Public members report sightings they believe match missing persons, uploading photos and location data through our secure platform.

03

AI Analysis & Matching

Our advanced facial recognition engine analyzes submitted images, comparing biometric features against the missing persons database.

04

Confidence Scoring

The system generates match confidence scores, prioritizing high-probability matches for immediate law enforcement review.

05

Official Verification

Qualified law enforcement officials review all matches, verify information, and take appropriate investigative action.

06

Reunification

Confirmed matches lead to identification and reunification efforts, with secure communication channels for all parties.

VigilTrack – Missing Person Tracking & AI Matching Platform

1. Project Overview

VigilTrack is a web-based platform designed to help authorities, law enforcement, and the general public:

  • Report missing persons with photos and detailed information
  • Store and manage missing person data securely in the cloud
  • Automatically generate AI embeddings for uploaded photos
  • Perform AI-based facial recognition matching to identify missing persons quickly
  • Track sightings and check matches via API requests or image uploads

Key Goals:

  • Provide a fast and reliable missing person reporting system
  • Enable AI-powered matching for accurate identification
  • Ensure secure storage and scalable architecture
  • Offer a user-friendly and responsive interface for all users

2. Tech Stack

Frontend

React 18, Next.js 13, Tailwind CSS, shadcn/ui, Lucide icons

Backend

Node.js 20, Express.js

Database

MongoDB Atlas

AI Service

Python 3.11, FastAPI, face-recognition

Storage

Cloudinary (image storage)

Deployment

Render (HTTPS, env variables)

3. System Architecture

User (Frontend)

Frontend (React + Next.js)

↓ POST /api/missing

Backend (Node.js + Express)

├─ Upload image to Cloudinary

├─ Send image URL to AI Service

├─ Store person + embedding

MongoDB Atlas (Database)

& Cloudinary (Storage)

4. Database Schemas

Missing Person Collection

FieldType | Description

_id → ObjectId | Unique record ID

name → string | Full name

age → number | Age of person

gender → string | Male/Female/Other

lastSeenLocation → string | Last known location

contactInfo → string | Email or phone

notes → string | Distinguishing features

imageUrl → string | Cloudinary image URL

embeddingId → ObjectId | Reference to embedding

createdAt → Date | Record creation timestamp

Embeddings Collection

FieldType | Description

_id → ObjectId | Unique embedding ID

personId → ObjectId | Reference to person

embedding → array[128] | 128-d vector

createdAt → Date | Creation timestamp

5. API Documentation

POST /api/missing

Submit missing person report with image upload to Cloudinary and embedding generation

Request Fields: name, age, gender, lastSeenLocation, contactInfo, notes, image (file)

Response: success status, person object with embeddingId, imageUrl, createdAt

POST /ai/embedding

Generate 128-dimensional embedding from image URL (internal and external use)

Request: {image_url: "https://..."}

Response: {embedding: [...128 values], dimension: 128}

GET /api/sightings

Retrieve all missing person reports from database

Response: Array of all missing person objects with details and imageUrl

POST /api/match

Check for matches using embeddingId or new image URL (cosine similarity matching)

Request Option 1: {embeddingId: "...

Request Option 2: {imageUrl: "https://..."}

Response: matches array with personId, name, contact, similarityScore (0.8+ = strong match)

6. AI Service Details

Technology Stack: Python 3.11, FastAPI, face-recognition library

Functionality: Accepts image URL, downloads image, extracts 128-dimensional embedding vector

Endpoint: POST /ai/embedding

Matching Algorithm: Cosine similarity on 128-d vectors. Score ≥ 0.8 is strong match

Note: AI service accepts only image URLs to prevent overload and ensure scalability across requests.

7. Frontend Features & Flow

Report Missing Person Form:

Name, Age, Gender, Last Seen Location, Contact Info, Notes, Photo upload with preview

Complete User Flow:

  1. User fills missing person form (all required fields)
  2. User uploads clear face photo with preview
  3. Backend receives multipart form data, uploads image to Cloudinary
  4. AI service generates 128-d embedding from image URL
  5. Backend stores missing person record + embedding in MongoDB
  6. UI displays unique Case ID (#MPFXXXXX) for reference
  7. Users can check matches using embeddingId or upload new image

8. Deployment & Environment

Platform: Render (supports HTTPS, environment variables, automatic deployments)

Live URLs:

Backend: https://vigiltrack.onrender.com

AI Service: https://vigil-track-ai-service.onrender.com

Required Environment Variables:

• CLOUDINARY_CLOUD_NAME

• CLOUDINARY_API_KEY

• CLOUDINARY_API_SECRET

• NEXT_PUBLIC_API_BASE_URL

• MONGODB_URI

• AI_SERVICE_URL

• PORT (for AI service)

Deployment Steps:

  1. Push backend code to GitHub repository
  2. Connect repository in Render dashboard
  3. Add all environment variables in Render settings
  4. Deploy backend service with auto-restart on failure
  5. Deploy AI service separately with same process
  6. Update AI_SERVICE_URL in backend environment

9. Security Considerations

  • • Images stored in Cloudinary with private/signed URLs
  • • Contact information stored securely in MongoDB
  • • AI service accepts only image URLs to prevent overload
  • • Input validation on all endpoints
  • • JWT/API key authentication for admin endpoints (future scope)

10. Future Scope & Enhancements

  • • Admin dashboard for tracking missing cases
  • • Notification system for nearby users/police
  • • Facial recognition for partial faces
  • • Mobile app integration (React Native)
  • • Map-based last-seen location visualization

Key Features

  • ✓ Accurate AI-based matching (128-d embeddings, cosine similarity)
  • ✓ Secure image & data handling (Cloudinary + MongoDB)
  • ✓ Easy deployment on cloud (Render, Docker-ready)
  • ✓ Expandable for law enforcement and public usage

Getting Started

For Public Users

  1. Create a secure account on our platform
  2. Browse active missing person cases
  3. Report any sightings you believe match missing individuals
  4. Upload clear photos and location information
  5. Receive updates on your reports

For Law Enforcement

  1. Request official agency account with verification
  2. Submit missing person reports with full case details
  3. Access real-time matching dashboard
  4. Review and verify AI-generated matches
  5. Manage case communications and updates

Need Help?

Access our comprehensive support resources and documentation