Interactive web application that replaces the manually maintained IT asset & software inventory spreadsheet for CSP Abu Dhabi Terminal L.L.C with a proper database-backed tool.
- CRUD inventory — search, add, edit, and remove software licenses, hardware assets, laptops, and contracts.
- Expiry / renewal radar — a dashboard surfacing what is expired, expiring soon, or flagged for action.
- Ask in English — a natural-language (text-to-SQL) query layer over the inventory.
The application reads and writes exactly one data source: the Supabase Postgres database, which is populated only by the importer from the source spreadsheet. No hardcoded, sample, or fabricated data. The natural-language layer reports only what database queries actually return.
Python 3.11+ · Streamlit · Supabase (Postgres) · SQLAlchemy · LangChain + Groq (text-to-SQL) · openpyxl/pandas (importer) · pytest.
See docs/superpowers/specs/2026-07-17-inventory-management-system-design.md
for the full design spec.
The source spreadsheet (*.xlsx) is confidential and intentionally excluded
from version control via .gitignore. Do not commit it. Configuration secrets
live in a local .env (also git-ignored); see .env.example for the shape.
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # fill in Supabase + Groq credentials
python -m importer.run_import "<path-to-inventory>.xlsx"
streamlit run Home.py