OSCAR ROJASINTERNAL TOOLS | DATA

2025 · INTERNAL TOOLS | DATA

Office Inventory Dashboard

A stock tracker for the school's operations team — real-time levels, automatic low-stock alerts, and a product categorizer built with regex instead of an API.

Built at Immaculata-La Salle High School

Private Deployment — Built for Immaculata-La Salle High School
Office Inventory Dashboard dashboard

Tech Stack

Azure Static Web AppsSharePointPower AutomateJavaScriptMSALAzure AD

Overview

The first version used the Anthropic API to categorize product names. It worked, but it added per-request cost and an external dependency for something that didn't need to be that complicated. Replaced it with a regex categorizer — faster, free, and doesn't fail if the API is down. A Power Automate flow checks stock daily and alerts the team when anything runs low. Shipped with 14 pages of documentation so whoever maintains it next doesn't have to figure it out from scratch.

What I Built

  • Real-time inventory view backed by SharePoint lists
  • Regex-based product categorizer replacing an external API dependency
  • Automated low-stock alerts via Power Automate — triggers when items fall below threshold
  • MSAL authentication — scoped to ILS staff only
  • ILS brand design system — green #004B23, gold #FFC20E, Montserrat/Bebas Neue
  • 14-page technical handoff documentation for future maintainers

What I Learned

Replacing an AI API dependency with a deterministic regex categorizer — simpler, faster, and zero ongoing cost

Writing technical handoff documentation thorough enough that someone else can maintain and extend the system

Azure Static Web Apps deployment pipeline and MSAL token flow for SPAs

Designing a brand-compliant UI from an institutional style guide