Skip to main content

ExpireEye Backend API

A powerful FastAPI backend service for food expiry tracking with AI-powered object detection, barcode scanning, and real-time notifications.

JWT Authentication
Secure token-based auth
Product Tracking
Smart expiry management
AI Detection
YOLO-powered recognition

Quick start

Get your ExpireEye backend up and running in minutes

1

Clone and install dependencies

Clone the repository and install the required Python packages.
git clone https://github.com/adgator101/ExpireEye-backend
cd ExpireEye-backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
2

Configure environment variables

Create a .env file with your database and API credentials.
cp .env.example .env
You’ll need to configure database credentials, JWT secret, Cloudinary settings for image uploads, and other API keys.
3

Run database migrations

Initialize your database schema using Alembic.
alembic upgrade head
4

Start the server

Launch the FastAPI development server.
uvicorn app.main:app --reload
Your API is now running at http://localhost:8000/api
FastAPI provides automatic interactive API documentation:
5

Make your first API request

Test the API by creating a user account.
curl -X POST "http://localhost:8000/api/auth/signup" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "John Doe",
    "email": "[email protected]",
    "password": "securepass123",
    "dob": "1990-01-01"
  }'
{
  "message": "User created successfully",
  "userId": "550e8400-e29b-41d4-a716-446655440000",
  "email": "[email protected]",
  "dob": "1990-01-01",
  "created_at": "2024-03-04T10:30:00.000000"
}

Explore by feature

Discover what you can build with ExpireEye Backend

Authentication

Secure JWT-based authentication with token management and session handling

Product tracking

Manage product inventory with categories, barcodes, and nutrition information

Expiry detection

Automated expiry monitoring with scheduled checks and smart alerts

AI detection

YOLO-based object recognition for identifying food items from images

Barcode scanning

Scan product barcodes and QR codes to quickly add items to inventory

Real-time notifications

WebSocket-based push notifications for expiry alerts and updates

API resources

Complete reference for all API endpoints

Authentication

User signup, login, and token management endpoints

Product inventory

Manage the global product catalog with CRUD operations

User inventory

Track user-specific products with quantities and expiry dates

Detection

AI-powered object detection and barcode scanning APIs

Notifications

Real-time notifications via WebSocket and REST endpoints

Statistics

User statistics and analytics data

Ready to get started?

Follow our quickstart guide to set up your ExpireEye backend in minutes and start tracking product expiration dates with AI-powered detection.

View quickstart guide

Build docs developers (and LLMs) love