<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Chiedu Asine</title>
    <description>The latest articles on DEV Community by Chiedu Asine (@chiedu).</description>
    <link>https://dev.to/chiedu</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3939221%2F2c618a09-01a9-46e8-8fee-cfe3058ab975.png</url>
      <title>DEV Community: Chiedu Asine</title>
      <link>https://dev.to/chiedu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/chiedu"/>
    <language>en</language>
    <item>
      <title>Building an AI-Powered Supply Chain Platform with FastAPI, React Native, and Data Science</title>
      <dc:creator>Chiedu Asine</dc:creator>
      <pubDate>Tue, 19 May 2026 03:40:19 +0000</pubDate>
      <link>https://dev.to/chiedu/building-an-ai-powered-supply-chain-platform-with-fastapi-react-native-and-data-science-2hp4</link>
      <guid>https://dev.to/chiedu/building-an-ai-powered-supply-chain-platform-with-fastapi-react-native-and-data-science-2hp4</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;br&gt;
A couple of weeks ago, I built a full-stack mobile and AI-powered supply chain optimization app designed to simulate the real world. The goal of the project was to build an intelligent system that combines:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mobile development&lt;/li&gt;
&lt;li&gt;Backend engineering&lt;/li&gt;
&lt;li&gt;Data analytics&lt;/li&gt;
&lt;li&gt;Machine learning
into a single production-style architecture. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The platform built with&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;React Native (Expo + TypeScript)&lt;/li&gt;
&lt;li&gt;Zustand&lt;/li&gt;
&lt;li&gt;TanStack Query&lt;/li&gt;
&lt;li&gt;FastAPI (Backend)&lt;/li&gt;
&lt;li&gt;MySQL (Database)&lt;/li&gt;
&lt;li&gt;SQLAlchemy for ORM and database relationships&lt;/li&gt;
&lt;li&gt;Pandas for analytics and data processing&lt;/li&gt;
&lt;li&gt;Scikit-learn (Model)
was designed to support advanced logistic features such as Route optimization, Warehouse analytics, Demand forecasting, Anomaly detection and Shipment delay predictions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why I Built This Project&lt;/strong&gt;&lt;br&gt;
One of the most interesting parts of this project has been bridging mobile engineering with AI engineering. Instead of building isolated ML notebooks, I wanted to build a system where AI was integrated directly into a real application. A system where users can interact with predictions and analytics, get real live operational insights all within the mobile app.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The backend follows a modular structure:app/&lt;/strong&gt;&lt;br&gt;
app/&lt;br&gt;
 ├── models/&lt;br&gt;
 ├── api/&lt;br&gt;
 ├── schemas/&lt;br&gt;
 ├── services/&lt;br&gt;
 ├── analytics/&lt;br&gt;
 ├── core/&lt;br&gt;
 ├── db/&lt;br&gt;
 ├── utils/&lt;br&gt;
 └── scripts/&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Database Design&lt;/strong&gt;&lt;br&gt;
The system currently contains three major entities:&lt;br&gt;
&lt;strong&gt;Shipments&lt;/strong&gt;&lt;br&gt;
class ShipmentCreate(BaseModel):&lt;br&gt;
    product_name: str&lt;br&gt;
    origin: str&lt;br&gt;
    destination: str&lt;br&gt;
    status: str&lt;br&gt;
    distance_km: float&lt;br&gt;
    expected_delivery_days: int&lt;br&gt;
    actual_delivery_days: int&lt;br&gt;
    warehouse_id: Optional[int] = None&lt;br&gt;
    driver_id: Optional[int] = None&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Warehouses&lt;/strong&gt;&lt;br&gt;
class WarehouseCreate(BaseModel):&lt;br&gt;
    name: str&lt;br&gt;
    city: str&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Drivers&lt;/strong&gt;&lt;br&gt;
class DriverCreate(BaseModel):&lt;br&gt;
    name: str&lt;br&gt;
    truck_number: str&lt;/p&gt;

&lt;p&gt;These relationships allowed me to model a simplified logistics network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Building the Analytics Layer&lt;/strong&gt;&lt;br&gt;
This was where the project started transitioning from a CRUD application into an AI-powered system.&lt;br&gt;
I used Pandas to convert logistics data into analytics-ready DataFrames.&lt;br&gt;
&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
shipments_df = pd.read_sql(&lt;br&gt;
    "SELECT * FROM shipments",&lt;br&gt;
    engine&lt;br&gt;
)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Shipment Analytics&lt;/strong&gt;&lt;br&gt;
Some of the analytics currently implemented include:&lt;br&gt;
&lt;strong&gt;Shipment Status Analysis&lt;/strong&gt;&lt;br&gt;
shipments_df["status"].value_counts()&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Delivery Performance&lt;/strong&gt;&lt;br&gt;
shipments_df[&lt;br&gt;
    "expected_delivery_days"&lt;br&gt;
].mean()&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Route Analysis&lt;/strong&gt;&lt;br&gt;
shipments_df.groupby(&lt;br&gt;
    ["origin", "destination"]&lt;br&gt;
).size().sort_values(ascending=False).head()&lt;/p&gt;

&lt;p&gt;result = [{&lt;br&gt;
            "hospital": hospital, &lt;br&gt;
            "state": state,&lt;br&gt;&lt;br&gt;
            "count": count&lt;br&gt;&lt;br&gt;
          }for (hospital, state), count in delayed_routes.items()&lt;br&gt;
         ]&lt;/p&gt;

&lt;p&gt;shipments_df.groupby(&lt;br&gt;
    ["destination"]&lt;br&gt;
).size().sort_values(ascending=False).head()&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Product Analysis&lt;/strong&gt;&lt;br&gt;
result = (&lt;br&gt;
    df["product_name"]&lt;br&gt;
    .value_counts(normalize=True)&lt;br&gt;
    .mul(100)&lt;br&gt;
    .round(2)&lt;br&gt;
).head()&lt;/p&gt;

&lt;p&gt;These analysis were exposed through FastAPI APIs and consumed directly by the React Native app.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Seeding Large Logistics Datasets&lt;/strong&gt;&lt;br&gt;
To simulate real logistics operations, I generated synthetic shipment data using Faker and Mockaroo. This allowed me to create:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Thousands of shipments&lt;/li&gt;
&lt;li&gt;Multiple drivers&lt;/li&gt;
&lt;li&gt;Multiple warehouses&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This was important because AI models require larger datasets for meaningful analysis.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Transitioning Into AI&lt;/strong&gt;&lt;br&gt;
The most exciting part of the project was the machine learning roadmap.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Route Optimization&lt;/strong&gt;&lt;br&gt;
Identify more efficient logistics routes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Warehouse Efficiency Scoring&lt;/strong&gt;&lt;br&gt;
Analyze warehouse performance and congestion.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Demand Forecasting&lt;/strong&gt;&lt;br&gt;
Predict future shipment volumes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Anomaly Detection&lt;/strong&gt;&lt;br&gt;
Detect unusual shipment behaviors.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;br&gt;
This project taught me how backend systems and AI systems interact. What started as a logistics CRUD system evolved into something much bigger. I've been able to build a project that reflects both software engineering and AI engineering workflows. Links to the project can be found here : &lt;a href="https://github.com/Anniez94/supplychain_mobile" rel="noopener noreferrer"&gt;mobile&lt;/a&gt;, &lt;a href="https://github.com/Anniez94/supplychain_backend" rel="noopener noreferrer"&gt;backend&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>datascience</category>
      <category>reactnative</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
