@@ -279,8 +279,8 @@ export default function StrategySection({ connected = false }: { connected?: boo
{/* STAGE 05 — STRATEGY COMPARISON (red, hero) */}
- Happier riders. Higher fulfillment.
- EV Aware wins — the best fulfillment with feasible, battery-safe routes for every rider.
+ Happier fleet drivers. Higher fulfillment.
+ EV Aware wins — the best fulfillment with feasible, battery-safe routes for every fleet driver.
🏆 EV Aware
88% Score
diff --git a/src/data/blog.ts b/src/data/blog.ts
index 10e4406..c553681 100644
--- a/src/data/blog.ts
+++ b/src/data/blog.ts
@@ -43,7 +43,7 @@ function templateContent(post: {
return [
{
type: "paragraph",
- text: `In last-mile logistics, a missed SLA is rarely caused by one big failure. It usually comes from small delays adding up across a route. ${post.title} looks at how delivery teams can spot those delays early and plan around them before vehicles leave the hub.`,
+ text: `In last-mile logistics, a missed SLA is rarely caused by one big failure. It usually comes from small delays adding up across a route. ${post.title} looks at how logistics teams can spot those delays early and plan around them before vehicles leave the hub.`,
},
{
type: "heading",
@@ -52,14 +52,14 @@ function templateContent(post: {
},
{
type: "paragraph",
- text: "Every extra kilometre costs money. It uses fuel or charge, adds rider time, wears down vehicles, and increases the chance of a late delivery. When routes are built from fixed zones or old habits, those costs repeat every day.",
+ text: "Every extra kilometre costs money. It uses fuel or charge, adds driver time, wears down vehicles, and increases the chance of a late shipment. When routes are built from fixed zones or old habits, those costs repeat every day.",
},
{
type: "list",
items: [
"Fewer vehicles needed for the same number of drops",
"Lower cost per drop through better stop sequencing",
- "ETAs that match traffic, distance, and delivery windows",
+ "ETAs that match traffic, distance, and arrival windows",
"Less fuel or charge used per completed order",
],
},
@@ -70,7 +70,7 @@ function templateContent(post: {
},
{
type: "paragraph",
- text: `A good dispatch plan starts with the basics: order locations, promised delivery windows, rider capacity, vehicle range, and known traffic trouble spots. MileTruth™ checks those inputs before dispatch so the team is not fixing avoidable mistakes on the road.`,
+ text: `A good dispatch plan starts with the basics: order locations, promised arrival windows, driver capacity, vehicle range, and known traffic trouble spots. MileTruth™ checks those inputs before dispatch so the team is not fixing avoidable mistakes on the road.`,
},
{
type: "image",
@@ -80,7 +80,7 @@ function templateContent(post: {
},
{
type: "quote",
- text: "A route should be checked before the rider leaves, not explained after the customer calls.",
+ text: "A route should be checked before the driver leaves, not explained after the customer calls.",
cite: "Doormile Operations",
},
{
@@ -90,21 +90,21 @@ function templateContent(post: {
},
{
type: "paragraph",
- text: "The best improvements usually start with simple measurements. Track distance per route, failed delivery windows, rider idle time, and orders moved between vehicles after dispatch. Those numbers show where the operation is leaking time.",
+ text: "The best improvements usually start with simple measurements. Track distance per route, failed arrival windows, driver idle time, and orders moved between vehicles after dispatch. Those numbers show where the operation is leaking time.",
},
{
type: "list",
ordered: true,
items: [
"Benchmark today's distance, fleet size, and on-time rate.",
- "Include vehicle capacity, delivery windows, rider shifts, and battery charge.",
+ "Include vehicle capacity, arrival windows, driver shifts, and battery charge.",
"Check routes against traffic and customer commitments before dispatch.",
"Compare the next dispatch cycle against the old plan.",
],
},
{
type: "paragraph",
- text: "Better routing is not about pushing riders harder. It is about giving them a plan that already accounts for the real day ahead.",
+ text: "Better routing is not about pushing drivers harder. It is about giving them a plan that already accounts for the real day ahead.",
},
];
}
@@ -124,14 +124,14 @@ const seeds: SeedPost[] = [
// ── Flagship 1 ───────────────────────────────────────────────────────────
{
slug: "how-ai-is-transforming-last-mile-ev-delivery",
- title: "How Better Planning Improves Last-Mile EV Delivery",
+ title: "How Better Planning Improves Last-Mile EV Logistics",
excerpt:
- "A practical look at how EV fleets can plan routes, manage charging, and keep delivery promises without adding unnecessary vehicles.",
+ "A practical look at how EV fleets can plan routes, manage charging, and keep service promises without adding unnecessary vehicles.",
category: "Technology",
image: "/images/blog-post-pic-17.webp",
date: "2025-10-02",
intro:
- "The last mile is already difficult to plan. With electric vehicles, the team also has to think about battery range, charging time, rider load, traffic, and delivery windows. Good planning turns those moving parts into a workable dispatch plan.",
+ "The last mile is already difficult to plan. With electric vehicles, the team also has to think about battery range, charging time, driver load, traffic, and arrival windows. Good planning turns those moving parts into a workable dispatch plan.",
content: [
{
type: "paragraph",
@@ -144,15 +144,15 @@ const seeds: SeedPost[] = [
},
{
type: "paragraph",
- text: "A fixed-zone plan may look clean in the morning, but the road rarely follows the plan. A rider may get delayed near Hitec City, a gated community may hold a vehicle for ten extra minutes, or a battery may drain faster because the load is heavier than usual.",
+ text: "A fixed-zone plan may look clean in the morning, but the road rarely follows the plan. A driver may get delayed near Hitec City, a gated community may hold a vehicle for ten extra minutes, or a battery may drain faster because the load is heavier than usual.",
},
{
type: "list",
items: [
"Order volumes by area, time slot, and customer type",
"Travel times based on the city's actual traffic patterns",
- "Battery use by vehicle type, rider load, and route length",
- "Feedback from completed deliveries, failed attempts, and late arrivals",
+ "Battery use by vehicle type, driver load, and route length",
+ "Feedback from completed shipments, failed attempts, and late arrivals",
],
},
{ type: "heading", level: 3, text: "Adjusting during the day" },
@@ -162,14 +162,14 @@ const seeds: SeedPost[] = [
},
{
type: "paragraph",
- text: "During peak traffic hours in Hyderabad, some vehicles were arriving 20 to 30 minutes later than planned. By adjusting routes based on live traffic and battery levels, the hub reduced missed delivery windows and improved on-time performance.",
+ text: "During peak traffic hours in Hyderabad, some vehicles were arriving 20 to 30 minutes later than planned. By adjusting routes based on live traffic and battery levels, the hub reduced missed arrival windows and improved on-time performance.",
},
{
type: "image",
src: "/images/ev-paradox.webp",
- alt: "Electric delivery vehicle routing visualisation",
+ alt: "Electric fleet vehicle routing visualisation",
caption:
- "EV route plans need to account for range, load, traffic, and charging time before riders leave the hub.",
+ "EV route plans need to account for range, load, traffic, and charging time before drivers leave the hub.",
},
{
type: "quote",
@@ -183,21 +183,21 @@ const seeds: SeedPost[] = [
},
{
type: "paragraph",
- text: "For a fleet manager, this is not about fancy software. It is about fewer emergency calls, fewer mid-route swaps, and fewer customers asking why their delivery missed the promised window.",
+ text: "For a fleet manager, this is not about fancy software. It is about fewer emergency calls, fewer mid-route swaps, and fewer customers asking why their shipment missed the promised window.",
},
{
type: "list",
ordered: true,
items: [
- "Record delivery times, failed attempts, traffic delays, and charging cycles.",
- "Build travel-time estimates from the areas your riders actually serve.",
+ "Record arrival times, failed attempts, traffic delays, and charging cycles.",
+ "Build travel-time estimates from the areas your drivers actually serve.",
"Check every route against battery capacity before dispatch.",
"Replan when traffic, orders, or vehicle availability changes.",
],
},
{
type: "paragraph",
- text: "The fleets that improve fastest are usually not the ones adding vehicles first. They are the ones removing wasted distance, planning charging properly, and giving riders routes they can complete on time.",
+ text: "The fleets that improve fastest are usually not the ones adding vehicles first. They are the ones removing wasted distance, planning charging properly, and giving drivers routes they can complete on time.",
},
],
},
@@ -207,7 +207,7 @@ const seeds: SeedPost[] = [
slug: "42-less-distance-insights-from-our-hyderabad-hub",
title: "42% Less Distance: Insights from Our Hyderabad Hub",
excerpt:
- "A practical look at how one Hyderabad hub reduced distance, used fewer vehicles, and protected delivery windows with better route planning.",
+ "A practical look at how one Hyderabad hub reduced distance, used fewer vehicles, and protected arrival windows with better route planning.",
category: "Case Study",
image: "/images/blog-post-pic-15.webp",
date: "2025-09-18",
@@ -216,7 +216,7 @@ const seeds: SeedPost[] = [
content: [
{
type: "paragraph",
- text: "Hyderabad is not an easy city for delivery planning. Dense commercial areas, fast-growing suburbs, flyover work, narrow service lanes, apartment security checks, and sudden traffic build-up can all change the day.",
+ text: "Hyderabad is not an easy city for logistics planning. Dense commercial areas, fast-growing suburbs, flyover work, narrow service lanes, apartment security checks, and sudden traffic build-up can all change the day.",
},
{
type: "heading",
@@ -225,11 +225,11 @@ const seeds: SeedPost[] = [
},
{
type: "paragraph",
- text: "Before MileTruth, the hub planned routes in the usual way. Zones were drawn from experience, dispatchers sequenced stops manually, and riders adjusted on the road when something changed.",
+ text: "Before MileTruth, the hub planned routes in the usual way. Zones were drawn from experience, dispatchers sequenced stops manually, and drivers adjusted on the road when something changed.",
},
{
type: "paragraph",
- text: "That process worked, but it carried hidden costs. Two riders might cross the same area in the same hour. A vehicle might take a longer loop to avoid one late stop. A dispatcher might hold back an order because the best vehicle was not obvious in the moment.",
+ text: "That process worked, but it carried hidden costs. Two drivers might cross the same area in the same hour. A vehicle might take a longer loop to avoid one late stop. A dispatcher might hold back an order because the best vehicle was not obvious in the moment.",
},
{
type: "list",
@@ -237,7 +237,7 @@ const seeds: SeedPost[] = [
"Zone-based allocation that missed nearby cross-zone drops",
"Manual stop sequencing during busy dispatch windows",
"ETAs checked after routing instead of before dispatch",
- "Traffic and delay handling that depended on phone calls from riders",
+ "Traffic and delay handling that depended on phone calls from drivers",
],
},
{
@@ -247,18 +247,18 @@ const seeds: SeedPost[] = [
},
{
type: "paragraph",
- text: "The main change was treating the day's orders as one connected plan instead of separate zone lists. The route plan considered distance, rider capacity, delivery windows, traffic, and vehicle availability together.",
+ text: "The main change was treating the day's orders as one connected plan instead of separate zone lists. The route plan considered distance, driver capacity, arrival windows, traffic, and vehicle availability together.",
},
{
type: "paragraph",
- text: "During peak traffic hours in Hyderabad, some vehicles were arriving 20 to 30 minutes later than planned. By adjusting routes based on live traffic and battery levels, we reduced missed delivery windows and improved on-time performance.",
+ text: "During peak traffic hours in Hyderabad, some vehicles were arriving 20 to 30 minutes later than planned. By adjusting routes based on live traffic and battery levels, we reduced missed arrival windows and improved on-time performance.",
},
{
type: "image",
src: "/images/last-mile-approach.webp",
- alt: "Hyderabad delivery hub routing analysis",
+ alt: "Hyderabad logistics hub routing analysis",
caption:
- "Planning the day's deliveries together removed repeated cross-town travel.",
+ "Planning the day's shipments together removed repeated cross-town travel.",
},
{
type: "heading",
@@ -269,14 +269,14 @@ const seeds: SeedPost[] = [
type: "list",
items: [
"42% reduction in total distance travelled across the hub",
- "37% fewer vehicles required for the same delivery volume",
+ "37% fewer vehicles required for the same shipment volume",
"No SLA misses during the measured deployment window",
"Lower fuel use and fewer unnecessary kilometres per parcel",
],
},
{
type: "quote",
- text: "The improvement did not come from asking riders to work harder. It came from giving the team a better route plan before the vehicles left.",
+ text: "The improvement did not come from asking drivers to work harder. It came from giving the team a better route plan before the vehicles left.",
cite: "Hyderabad Hub Operations",
},
{
@@ -300,16 +300,16 @@ const seeds: SeedPost[] = [
slug: "miletruth-ai-10-stages-to-smarter-dispatch",
title: "MileTruth™: 10 Stages to Smarter Dispatch",
excerpt:
- "From order intake to final route output, here is how a dispatch plan is checked before riders leave the hub.",
+ "From order intake to final route output, here is how a dispatch plan is checked before drivers leave the hub.",
category: "MileTruth",
image: "/images/blog-post-pic-31.webp",
date: "2025-09-05",
intro:
- "Behind every Doormile dispatch is a step-by-step route planning process. Each stage removes a common source of error before the plan reaches the rider.",
+ "Behind every Doormile dispatch is a step-by-step route planning process. Each stage removes a common source of error before the plan reaches the driver.",
content: [
{
type: "paragraph",
- text: "A dispatch plan has to be fast, but it also has to be usable. A quick route that ignores a bad address, low battery, or tight delivery window creates problems later in the day.",
+ text: "A dispatch plan has to be fast, but it also has to be usable. A quick route that ignores a bad address, low battery, or tight arrival window creates problems later in the day.",
},
{
type: "heading",
@@ -320,15 +320,15 @@ const seeds: SeedPost[] = [
type: "list",
ordered: true,
items: [
- "Order intake: new orders, rider availability, and vehicle status are collected.",
- "Address check: delivery points, time windows, and service notes are verified.",
- "Stop planning: each stop gets an expected service time and delivery priority.",
+ "Order intake: new orders, driver availability, and vehicle status are collected.",
+ "Address check: drop points, time windows, and service notes are verified.",
+ "Stop planning: each stop gets an expected service time and stop priority.",
"Travel-time check: routes are compared against time-of-day traffic.",
"Constraint check: capacity, shift time, customer windows, and range are applied.",
"Route options: several possible plans are built for the same order set.",
"Plan selection: the lowest-cost workable route plan is selected.",
"Battery check: EV routes are checked against real charge capacity.",
- "ETA check: promised delivery times are verified before dispatch.",
+ "ETA check: promised arrival times are verified before dispatch.",
"Dispatch output: the final route is sent to the operations team.",
],
},
@@ -339,14 +339,14 @@ const seeds: SeedPost[] = [
},
{
type: "paragraph",
- text: "When everything is checked in one step, small errors slip through. A wrong pin, a missing apartment note, or a low battery warning can reach the rider and become a customer issue.",
+ text: "When everything is checked in one step, small errors slip through. A wrong pin, a missing apartment note, or a low battery warning can reach the driver and become a customer issue.",
},
{
type: "image",
src: "/images/blog-post-pic-31.webp",
alt: "MileTruth routing pipeline diagram",
caption:
- "A staged dispatch process catches address, range, and ETA issues before riders leave.",
+ "A staged dispatch process catches address, range, and ETA issues before drivers leave.",
},
{
type: "quote",
@@ -360,14 +360,14 @@ const seeds: SeedPost[] = [
},
{
type: "paragraph",
- text: "The useful part is not only building one route. It is comparing a few workable route options before choosing the plan. One option may save distance, another may protect a tight delivery window, and another may keep an EV closer to a charger.",
+ text: "The useful part is not only building one route. It is comparing a few workable route options before choosing the plan. One option may save distance, another may protect a tight arrival window, and another may keep an EV closer to a charger.",
},
{
type: "list",
items: [
"Several route plans checked before dispatch",
"Distance, time windows, capacity, and range considered together",
- "Range and ETA checked before the route reaches the rider",
+ "Range and ETA checked before the route reaches the driver",
"Fast output that still leaves room for dispatcher review",
],
},
@@ -403,7 +403,7 @@ const seeds: SeedPost[] = [
},
{
slug: "fleet-reduction-without-compromising-delivery-volume",
- title: "Fleet Reduction Without Compromising Delivery Volume",
+ title: "Fleet Reduction Without Compromising Shipment Volume",
excerpt:
"Handling the same order volume with fewer vehicles starts by removing avoidable kilometres and overlapping routes.",
category: "Fleet Management",
@@ -416,12 +416,12 @@ const seeds: SeedPost[] = [
slug: "building-a-greener-city-the-future-of-urban-logistics",
title: "Building a Greener City: The Future of Urban Logistics",
excerpt:
- "Cities are asking for cleaner delivery. The practical challenge is planning EV routes that can meet customer windows without wasting charge.",
+ "Cities are asking for cleaner logistics. The practical challenge is planning EV routes that can meet customer windows without wasting charge.",
category: "Sustainability",
image: "/images/blog-post-pic-6.webp",
date: "2025-07-10",
intro:
- "Cleaner delivery is becoming an operating requirement, not just a brand message. It depends on EV adoption and route plans that make those vehicles practical every day.",
+ "Cleaner logistics is becoming an operating requirement, not just a brand message. It depends on EV adoption and route plans that make those vehicles practical every day.",
},
{
slug: "how-doormile-maintains-99-9-sla-compliance-at-scale",
@@ -432,18 +432,18 @@ const seeds: SeedPost[] = [
image: "/images/last-mile-approach.webp",
date: "2025-06-26",
intro:
- "Strong SLA performance is not luck. It comes from planning the day so late deliveries are the exception, not the expected risk.",
+ "Strong SLA performance is not luck. It comes from planning the day so late shipments are the exception, not the expected risk.",
},
{
slug: "battery-simulation-the-secret-to-ev-route-pre-validation",
title: "Battery Simulation: The Secret to EV Route Pre-Validation",
excerpt:
- "Before a rider leaves the hub, every EV route should be checked against real charge capacity and the expected return plan.",
+ "Before a driver leaves the hub, every EV route should be checked against real charge capacity and the expected return plan.",
category: "EV Fleet",
image: "/images/blog-post-pic-3.webp",
date: "2025-06-12",
intro:
- "A stranded EV is not just a late delivery. It means a vehicle is out of service, a customer is waiting, and the hub has to arrange recovery. Range checks need to happen before dispatch.",
+ "A stranded EV is not just a late shipment. It means a vehicle is out of service, a customer is waiting, and the hub has to arrange recovery. Range checks need to happen before dispatch.",
},
];