PerishLess

PerishLess is a full-stack web application built to reduce food waste and strengthen local community support.

It combines an AI-assisted pantry tracker with a Global Feed where users can share food giveaways, recipe recommendations, and helpful posts related to food sustainability.


Inspiration

Food waste often happens not because people do not care, but because they lack visibility and guidance.

Many households (including me!):

  • Forget what they already have
  • Let items expire without realizing
  • Throw away food that could have been used or shared

I wanted to build a system that helps users:

  • Track perishables before they expire
  • Get intelligent guidance on how to use what they have
  • Share surplus food with nearby community members

PerishLess turns pantry management into a proactive, AI-supported experience.


What It Does

PerishLess provides:

Pantry Management

  • Add items manually, by barcode, or by receipt scan
  • Track expiration timelines
  • Filter items by category, days until expiry, or whether you can donate it
  • Maintain consumption and trash history

AI Assistance

  • Generate recipe recommendations from expiring items
  • Produce “PerishThreats” (priority meal suggestions)
  • Analyze potential health impacts of stored foods
  • Chat-style AI assistant for pantry-based questions
  • Text-to-speech and speech-to-text integration

Global Feed

  • Create community posts (food giveaway, recipe recommendation, misc.)
  • Tag-based filtering and sorting
  • Multi-reaction interactions (kind, love, celebrate, support)
  • Optional location metadata with Google Maps embed

The system connects personal food management with community-level collaboration.


How I Built It

Perishless is a Dockerized, production-style architecture.

Frontend

  • React + TypeScript (Vite)
  • Single-page application
  • Served through nginx

Backend

  • FastAPI (Python)
  • Asynchronous endpoints
  • Modular service structure (AI logic, datastore logic, RDB utilities, OCR, etc.)

Database & Auth

  • Firebase Authentication
  • Firestore NoSQL database for pantry items, posts, and user interactions
  • Google Cloud SQL database for managing food details from OpenFoodFacts (very slow API)

Infrastructure

  • Docker + Docker Compose orchestration
  • nginx reverse proxy with centralized /api routing
  • Isolated backend service within Docker network

Challenge(s) I Ran Into

Docker and Nginx on the DigitalOcean VPS

It actually took me around 8 hours just to make a dockerfile and deploy it on a VPS😔. Other than that everything was great though, I learned a whole lot about all of the libraries I used!

Built With

Share this project:

Updates