Skip to content

Repository files navigation

Inventory Management System

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.

What it does (planned, phased)

  1. CRUD inventory — search, add, edit, and remove software licenses, hardware assets, laptops, and contracts.
  2. Expiry / renewal radar — a dashboard surfacing what is expired, expiring soon, or flagged for action.
  3. Ask in English — a natural-language (text-to-SQL) query layer over the inventory.

Design principle

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.

Tech stack

Python 3.11+ · Streamlit · Supabase (Postgres) · SQLAlchemy · LangChain + Groq (text-to-SQL) · openpyxl/pandas (importer) · pytest.

Repository layout

See docs/superpowers/specs/2026-07-17-inventory-management-system-design.md for the full design spec.

Data confidentiality

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.

Setup (once implementation lands)

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

About

A simple inventory management system for structured data files for large organizations

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages