We're the technology team behind UM Facilities Management. We build and maintain the software that keeps campus space, assets, work orders, and operational data in sync across Workday, Planon, Banner, StarRez, and the rest of the systems Facilities depends on.
π facilitiesmanagement.olemiss.edu Β· π api.fm.olemiss.edu
- Integration as a Service β Bidirectional sync between systems of record (Workday HR, Banner SIS, StarRez Housing) and our operational system (Planon IWMS), so every system sees the same people, spaces, and assets.
- Read APIs for campus β A single FastAPI surface (
api.fm.olemiss.edu) other UM apps call instead of hitting Planon directly. - Operational tooling β A landing page, utility billing automation, uptime monitoring, and infrastructure scanning that keep the lights on.
| Repo | What it is | Stack |
|---|---|---|
FMAPI |
Integration middleware + read APIs. The system of integration for FM. | Python Β· FastAPI Β· Postgres Β· Docker |
landing_page |
Centralized landing page for FM tools and resources. | JavaScript Β· Docker |
utility_billing |
Utility billing app + automation scripts for Oxford, Delta, Hopewell, Lafayette, MaxxSouth, NEMEPA, and Twin Eagle. | Python Β· Django |
uptime |
Uptime monitor for FM services with Slack notifications. | Node.js Β· Postgres Β· Docker |
network_scanner |
Network scanning for FM systems β Nmap, SNMP, BACnet, WMI. | Python |
| Repo | What it is | Stack |
|---|---|---|
fmapiv2 |
Planned next-generation FMAPI rewrite. | Python Β· MongoDB Β· RabbitMQ Β· GraphQL |
| Repo | What it is | Stack |
|---|---|---|
planon_and_arc_working_scripts |
Pre-FMAPI Planon + ArcGIS scratch scripts; audit pending before consolidation. | Python |
docs |
Legacy internal documentation site; superseded by per-repo docs/. |
HTML Β· Docker |
Workday RaaS Planon REST Banner StarRez
β β β β
ββββββββββββββββ΄ββββββ¬βββββββ΄ββββββββββ
βΌ
ββββββββββββββββββββββββ
β FMAPI β scheduled syncs
β pipelines + cache β + read APIs
ββββββββββββ¬ββββββββββββ
βΌ
api.fm.olemiss.edu
β
ββββββββββββββ΄βββββββββββββ
βΌ βΌ βΌ
campus apps ArcGIS other consumers
- Issues are typed (Task / Feature / Bug), labeled, and milestoned by phase. We use GitHub
blockedByrelationships for dependencies. - PRs target
main, squash-merge by default. Commit messages explain the why, not just the what. - Migrations are numbered SQL files β the file is the source of truth.
- Docs that change with the code live alongside the code, not in a wiki.
- Credentials never live in source. Read from environment variables, gitignored
.envfiles, or a secrets manager.
FM Technology Resources Β· University of Mississippi Β· Oxford, MS