From Manual to Automated: Building Real Small Business Workflows in Kenya with Python and AWS
# Smart Inventory Assistant
A serverless cloud inventory system for small businesses, built with Python and AWS.
Demonstrated live at **AWS Community Day Kenya 2026 (Pwani Edition)** — July 4, Mombasa.
---
## The Problem
Small businesses in Kenya and across Africa track inventory manually notebooks, WhatsApp messages, spreadsheets. This causes:
- Stockouts because nobody noticed what was running low
- Overstocking because there was no clear view of what was already there
- Wasted time on manual calculations and updates
- Human errors that compound over time
## The Solution
A lightweight, cloud-hosted inventory system that lets a shop owner manage products and stock levels from any browser, with automatic low-stock warnings and a full movement history, all built on serverless AWS infrastructure.
---
## Architecture
```
Streamlit UI
↓ HTTPS
API Gateway
↓
Lambda Functions (Python 3.12)
├── products_handler — add, view, update, delete products
└── stock_handler — restock, record sales, view history
↓
DynamoDB (single-table design)
↓
CloudWatch (logs + alarms + dashboard)
GitHub Actions → CI/CD pipeline → automated deploy
Terraform → all infrastructure as code
S3 → Terraform state with native locking
```
---
## Tech Stack
| Layer | Technology |
|---|---|
| Frontend | Streamlit (Python) |
| Backend | FastAPI + Lambda handlers |
| Database | AWS DynamoDB |
| IaC | Terraform 1.10+ |
| CI/CD | GitHub Actions |
| Monitoring | CloudWatch Logs + Alarms + SNS |
| Security | IAM least privilege, Secrets Manager pattern |
| Code quality | Black, Ruff, pytest (23 automated tests) |
---
## Features (MVP)
### Product Management
- Add products with name, category, price, starting stock, and low-stock threshold
- View all products at a glance with live low-stock warnings
- Search by name or category
- Update product details
- Delete products
### Inventory Tracking
- Record restocks — increases stock and logs the movement
- Record sales — de …