Skip to content
MKA Available for PFE / 2027
WorkAboutContactResume FR
Main menu
WorkAboutContactResume FR

Have an ambitious product in mind?

Let's build something
worth remembering.

© 2026 Mohamed Khalil Ajlani
GitHubLinkedInLegal
Tunis / Tunisia
All projects

Machine learning · Sustainability / 2026

WasteWise

A machine-learning platform helping restaurants predict and reduce food-waste risk before service.

Role

Academic full-stack ML project — product interface, NestJS API, FastAPI model service and data analytics.

Core stack

React / TypeScript / NestJS / FastAPI / Python

Source repository
WasteWise interface overview

The product

Engineering clarity
into complexity.

WasteWise translates restaurant and event factors into an actionable Low, Moderate or High waste-risk forecast. The experience combines confidence-aware predictions, personalized recommendations, history and analytics.

  • Balanced Random Forest classification pipeline
  • Confidence scores and per-class probability distribution
  • Personalized reduction recommendations
  • Interactive operational and seasonal analytics

01 / The challenge

The problem behind
the interface.

Restaurant teams need a prediction early enough to change preparation decisions, not another retrospective sustainability dashboard. WasteWise turns operational context into an explainable risk level and practical recommendations.

Project constraints

  • Mixed numerical and categorical inputs
  • Imbalanced waste-risk classes
  • Prediction confidence must remain understandable
  • Small-service deployment footprint
  • History and analytics must remain user-specific
3risk classes
200decision trees
4containerized layers

02 / Architecture

Clear boundaries.
Purposeful layers.

01

Experience

React prediction journey, history, recommendations and analytics dashboard.

02

Application

NestJS API for authentication, prediction records and reporting.

03

Model service

FastAPI endpoint wrapping a serialized scikit-learn preprocessing and Random Forest pipeline.

04

Data

MongoDB persistence and Docker Compose orchestration for the complete system.

03 / Engineering decisions

Trade-offs made
explicit.

Predict three operational risk bands

Low, Moderate and High are easier to connect to preparation decisions than a raw waste quantity without context.

Package preprocessing with the model

Scaling and one-hot encoding stay identical between training and inference, reducing training-serving skew.

Expose probabilities, not only a label

Confidence and class distribution help users understand borderline predictions and avoid false certainty.

04 / System toolkit

A stack assembled
for the problem.

Every technology earns its place in the architecture. The interactive field represents the system's core building blocks.

ReactTypeScriptNestJSFastAPIPythonRandom Forestscikit-learnMongoDBRechartsDocker

05 / Outcomes

What the project
actually delivered.

Delivered

  • A containerized React–NestJS–FastAPI product
  • Prediction confidence and personalized recommendations
  • CSV history export and multi-dimensional analytics
  • A class-balanced Random Forest pipeline with 200 trees

Next validation steps

  • Publish validation metrics and confusion matrices
  • Add drift monitoring and model-version traceability
  • Measure actual food-waste reduction with partner restaurants

06 / Product in context

Designed as a system,
not a collection of screens.

WasteWise enlarged interface view 1

1 / 5

Next case study

QuaLeadx