Built to order

E-Waste Pickup Scheduling Web App with Collector Routing

This project builds an E-Waste Pickup Scheduling Web App with Collector Routing: a two-sided platform where residents book doorstep e-waste pickups from a live rate card while a dispatcher view auto-sequences the day's stops into a collector route with time windows. It uses React, Node.js with Express, PostgreSQL with PostGIS, JWT role-based auth and Leaflet maps, with SMS OTP-verified handovers, doorstep weight capture, digital disposal certificates and recycler compliance reports. Suitable for B.E./B.Tech final-year projects in Computer Science, IT and Web Development.

Web Development GitJWT authenticationNode.js · ExpressPostgreSQL · PostGISDocker deploymentTwilio · MSG91 SMSReact · ViteLeaflet · OpenStreetMapSoftware
E-Waste Pickup Scheduling Web App with Collector Routing — project thumbnail preview
More project photos (2)

The problem

E-Waste Pickup Scheduling Web App with Collector Routing is a two-sided web platform that fixes how household e-waste gets collected: residents book doorstep pickups from a transparent per-material rate card with a live payout estimate, while a dispatcher view auto-sequences the day's requests into a collector route with time windows. E-waste collection today is informal and opaque — itinerant buyers quote arbitrary prices and give no proof of where the waste goes, while scheduled services that do exist take bookings but leave routing, verification and compliance to paper. Without stop sequencing, a collector criss-crosses the city, misses slot windows and completes fewer pickups per shift. This project addresses the full chain: visible rate cards that settle trust on price, nearest-neighbor route sequencing with a 2-opt pass so each tour is explainable and fast to compute, OTP-verified handovers with doorstep weight capture for honest payouts, and digital disposal certificates plus recycler handoff records that prove the waste reached a licensed recycler.

How it works

From booking to certificate, the flow is one chain: the customer picks item categories — phones, laptops, batteries, appliances, or per-kg materials — and the React frontend multiplies estimated weights by the day's sample ₹/kg rates to show a live payout estimate before the request is confirmed. The Express backend stores the request with a geocoded PostGIS point, zone and one of three daily slot windows, and the dispatcher view loads the day's manifest and runs the sequencing engine in the browser: nearest-neighbor from the depot, then a 2-opt pass, then the numbered tour with time windows on the map. The collector works the stops in order; each stop closes only after the four checklist items, the captured weight and the customer's 6-digit OTP are all confirmed. Closed stops accumulate into a digital disposal certificate with a verification code, and the recycler handoff is recorded — audited by the admin and exported as a monthly EPR report.

  1. The customer selects item categories and quantities; the frontend computes the live payout estimate from the rate card and the customer picks one of three daily slot windows.
  2. The Express API stores the request with a geocoded PostGIS point, zone and slot, and sends an SMS booking confirmation to the customer.
  3. The dispatcher loads the day's manifest and runs the sequencing engine — nearest-neighbor construction from the depot plus a 2-opt pass — then assigns the numbered tour to a collector with a vehicle ID.
  4. The collector works the stops in visit order on the map; at each doorstep the four checklist items are completed, the items are weighed, and the customer reads out the 6-digit OTP.
  5. On OTP match the stop closes; completed stops accumulate into a digital disposal certificate with a verification code, and the recycler handoff is recorded against a licensed recycler.
  6. The admin dashboard audits the full pickup-to-collector-to-recycler chain and exports the monthly EPR report as CSV.

Tech stack:

  • React with Vite (customer portal, dispatcher and admin views)
  • Node.js with Express (REST API)
  • PostgreSQL with PostGIS (pickup points, zones, route data)
  • JWT authentication (customer, dispatcher, collector and admin roles)
  • Leaflet with OpenStreetMap (production maps)
  • Twilio / MSG91 (SMS OTP notifications)
  • Docker (deployment)
  • Git (version control)
Parameter Value
Stops in demo route 12 (demo dataset)
Sequencing time Under 2 ms (measured in the demo's browser run)
Route distance Approximately 16.3 km (demo map, not to scale)
Estimated e-waste Approximately 439 kg (demo dataset)
Rate-card entries 14 (sample ₹/kg rates)
Slot windows 3 per day (design: morning, afternoon, evening)
Handover OTP 6 digits (design)
Checklist per stop 4 checks (design)
Disposal certificate Unique ID + verification code (design)

Project features

The platform's centerpiece is the dispatcher route engine: the day's pickup requests are sequenced into visit order by nearest-neighbor construction from the depot, refined by a 2-opt pass that removes crossed legs, and rendered on an interactive map with numbered stops, time windows and a per-stop panel — the tour rebuilds in under 2 ms in the browser (measured on the demo's 12-stop set). Around it sit the capabilities that make the system trustworthy: a live rate-card booking flow where per-material sample ₹/kg rates and per-item estimated weights produce an instant payout estimate; an OTP-verified handover where a 6-digit code sent by SMS must be confirmed before a stop can close; and doorstep weight capture that feeds a digital disposal certificate with a verification code plus a recycler handoff record. Together they cover the full pickup-to-collector-to-recycler chain.

  • [Live rate-card booking] Fourteen item categories — phones, laptops, batteries, appliances and per-kg materials — each with an estimated unit weight and a sample ₹/kg rate; the payout estimate recomputes live as quantities change, and the confirmed request stores zone, address and slot.
  • [Nearest-neighbor route sequencing] The dispatcher engine builds the day's tour from the depot with nearest-neighbor construction, then runs a 2-opt improvement pass that removes crossed legs; sequencing completes in under 2 ms in the demo's browser run and the stop order stays explainable.
  • [Interactive dispatcher map] The sequenced tour renders on a map with a depot marker, numbered stop pins in visit order, the route polyline, area labels and a stop panel grouped by morning, afternoon and evening time windows.
  • [Collector checklist workflow] Each stop walks the collector through four checks — items match the booking, weigh in front of the customer, OTP verified, handover photo noted — and a stop cannot close until all four pass.
  • [OTP-verified handover] A 6-digit OTP (design) is sent to the customer's phone by SMS (Twilio/MSG91 in production); the customer reads it out at the door and the stop closes only on a match, so neither side can dispute the handover.
  • [Digital disposal certificate] Completed stops accumulate into a certificate carrying a unique ID and verification code, total kilograms collected and the date — proof of responsible disposal the customer can keep or forward.
  • [Recycler network & compliance trail] The admin console manages licensed recyclers with license numbers and status, records every recycler handoff, and tracks OTP-verified handovers, doorstep weights and certificates issued, exportable as a monthly EPR report.

What is included

  • Complete source code: React frontend, Express backend, PostgreSQL/PostGIS schema and seed data
  • Working single-file demo build of the booking, routing, collector and admin views
  • Setup and hosting guide (local run and Docker deployment notes)
  • Project report PDF (background, rate-card model, routing heuristic, methodology, demo results)
  • Abstract PDF (10-section)
  • PPT presentation for final review
  • Viva Q&A preparation document (routing heuristics, JWT roles, PostGIS, OTP flow, EPR compliance)

Limitations & prerequisites

  • Rate-card figures are labeled samples in the demo; live ₹/kg rates must come from recycler bids or a pricing admin.
  • The demo map is a stylized street grid, not real geography — production routing needs the Leaflet/OpenStreetMap layer with real road distances.
  • Nearest-neighbor with 2-opt is a heuristic, not an optimal TSP solver; very large manifests would need a dedicated routing engine such as OSRM or VROOM.
  • SMS OTP requires a Twilio or MSG91 account with credits; the demo simulates the OTP step locally.
  • Weight capture assumes a weighing scale at the doorstep; without one, payouts remain estimates.
  • The EPR report maps to India's E-Waste (Management) Rules, 2022 framework as a demo trail, not a certified compliance filing.

Frequently Asked Questions

Why nearest-neighbor instead of an exact route optimizer?

Because at a dispatcher's stop count it buys almost nothing. With fewer than 25 stops per collector route, nearest-neighbor builds the tour in under 2 ms in the browser (measured), a 2-opt pass removes the obvious crossings, and the stop order stays explainable — the dispatcher can see why stop 7 follows stop 6. An exact TSP solver would add complexity for a gain the driver would never notice.

Are the rate-card prices real?

They are labeled samples. The demo ships with 14 per-material entries (for example ₹350/kg for phones and ₹220/kg for PCB boards) so the payout estimator and booking flow work end to end. In production the figures come from recycler bids or a pricing admin — the built-to-order report documents exactly where to plug the live feed in.

How does the OTP handover work?

When the collector arrives, a 6-digit OTP is sent to the customer's phone by SMS (Twilio/MSG91 in production; simulated locally in the demo). The customer reads it out, the collector enters it, and the stop closes only on a match — so neither side can later dispute that the handover happened.

Can it be hosted online?

Yes. The stack is a standard React + Express + PostgreSQL application with a Docker deployment path documented in the setup guide. The demo itself runs fully offline — its map is a self-drawn canvas grid with no external tile dependency, a deliberate choice so it works in college demo rooms without internet.

Can more roles or modules be added?

Yes. The JWT auth already separates four roles, so a recycler login, a customer mobile view, UPI payout settlement after weight confirmation, or live recycler bidding on the rate card can be added as modules. The report lists these as extensions with the affected layers for each.

Is this project suitable for a final-year project?

Yes — for Computer Science, IT and Web Development programs. It demonstrates full-stack development with role-based JWT auth, spatial data in PostGIS, a real routing heuristic implemented and measured in the browser, third-party SMS integration design, and a compliance reporting trail — all concrete viva material with no borrowed AI or dataset claims.

Components & software requirements
  • React with Vite (customer portal, dispatcher and admin views)
  • Node.js with Express (REST API)
  • PostgreSQL with PostGIS (pickup points, zones, route data)
  • JWT authentication (customer, dispatcher, collector and admin roles)
  • Leaflet with OpenStreetMap (production maps)
  • Twilio / MSG91 (SMS OTP notifications)
  • Docker (deployment)
  • Git (version control)
Delivery information

Built-to-order project. Delivery timeline is shared after order confirmation based on current queue.

Support terms

Complete documentation, setup guide, and viva preparation included. Support for setup and explanation provided.

Download free synopsis (PDF)

Enter your name and WhatsApp number — the synopsis PDF downloads immediately. We may send occasional project updates on WhatsApp; no spam.

Get a quotation