Skip to content

Repository files navigation

FirmwareTracker - IT & Network Firmware Management System

CI/CD Pipeline Version License Docker

FirmwareTracker is an Enterprise web application designed for tracking, auditing, and continuously monitoring firmware versions across IT and network infrastructure (Switches, Routers, Firewalls, UPS, ATS, Servers, PDUs, etc.).


🚀 Key Features

  • 📊 Interactive Analytics Dashboard: Track fleet status via clickable KPI cards, distribution charts by Category and Vendor, and counters for incomplete data or End of Life (EOL) devices.
  • 🧩 Multiple Firmware Component Support: Manage complex devices (e.g., ATS/UPS) with multiple distinct firmware modules (APC OS, Application Module, Boot Monitor, BIOS, IPMI).
  • 🌐 Smart NetBox Importer (API, JSON, Custom CSV):
    • Direct synchronization via NetBox REST API using Bearer Token authentication.
    • Import wizard with an Interactive CSV Field Mapping Table: preview data rows, toggle columns on/off, and map CSV headers to FirmwareTracker target fields.
    • Automatic CIDR subnet stripping (e.g., 192.168.1.1/24 -> 192.168.1.1) and automatic missing category creation.
  • 🎯 Firmware Baseline Matrix by Model:
    • Centralized definition of recommended target versions and firmware download URLs per model.
    • Automatic inheritance and propagation across all matching devices.
    • Smart version string normalization (v2.5.0 == 2.5.0).
  • 🛡️ Safe Bulk Deletion:
    • Multi-selection checkboxes with confirmation modal listing explicit device names.
    • Category and filtered mass deletion options.
  • 📄 Advanced Reporting (PDF, Multi-Tab XLSX, CSV):
    • Executive Summary PDF: Styled PDF report with KPI cards, category breakdown, and critical/EOL device highlights.
    • Multi-Worksheet Excel XLSX: Dedicated tabs for each Category with conditional status cell coloring.
  • ⏱️ Automation & Agent REST API:
    • Background scheduler (APScheduler) for periodic automatic NetBox sync.
    • Endpoint /api/v1/agent/update protected by API Key (X-API-Key) for Ansible, Zabbix, or SNMP scripts.

🏗️ Architecture & Tech Stack

  • Backend: Python 3.11/3.13, FastAPI, SQLAlchemy (ORM), Pydantic v2, APScheduler, ReportLab, OpenPyXL.
  • Frontend: React 18, TypeScript, Vite, TailwindCSS, Lucide Icons, Recharts.
  • Database: PostgreSQL 16 (Production / Docker Compose) / SQLite (Local Dev).
  • Containerization: Alpine Linux Docker Images.

📚 Documentation

  1. 🛠️ ADMIN.md - System Administration, Docker Compose Deployment, Makefile Guide, GitHub Actions CI/CD & Releases.
  2. 📖 USER_MANUAL.md - Complete End-User & Network Operator Manual.

📄 License

Distributed under the MIT License. See LICENSE for details.

About

Automated Firmware Asset & Lifecycle Tracking system for IT/Network infrastructure. Integrates with NetBox, supports multi-component firmware, model baseline matrix, and executive PDF/Excel exports.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages