diff --git a/inventory_provider/static/interfaces.html b/inventory_provider/static/interfaces.html
new file mode 100644
index 0000000000000000000000000000000000000000..898841231a75e0dc874307377bef7bae27c4a6b6
--- /dev/null
+++ b/inventory_provider/static/interfaces.html
@@ -0,0 +1,29 @@
+<!doctype html>
+<html ng-app="inventoryApp">
+  <head>
+    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.7.5/angular.min.js"></script>
+    <script src="interfaces.js"></script>
+    <link rel="stylesheet" href="style.css">
+  </head>
+  <body>
+
+    <div ng-controller="interfaces">
+      <h2>Interfaces</h2>
+      <div>
+      <select
+              ng-options="r for r in routers"
+              ng-change="update_interfaces()"
+              ng-model="router"></select>
+      <select
+              ng-options="i for i in interfaces"
+              ng-change="update_status()"
+              ng-model="interface">
+      </select>
+      </div>
+
+      <div>
+        STATUS: {{status}}
+      </div>
+    </div>
+  </body>
+</html>
\ No newline at end of file
diff --git a/inventory_provider/static/interfaces.js b/inventory_provider/static/interfaces.js
new file mode 100644
index 0000000000000000000000000000000000000000..499350b2567bc0295ad6576d283359bdff6c1912
--- /dev/null
+++ b/inventory_provider/static/interfaces.js
@@ -0,0 +1,51 @@
+var myApp = angular.module('inventoryApp', []);
+
+myApp.controller('interfaces', function($scope, $http) {
+
+    $scope.routers = [];
+    $scope.router = '';
+
+    $scope.interfaces = [];
+    $scope.interface = '';
+
+    $scope.status = 'not yet loaded';
+
+    $http({
+        method: 'GET',
+        url: window.location.origin + "/data/routers"
+    }).then(
+        function(rsp) {$scope.routers = rsp.data;},
+        function(rsp) {$scope.routers = ['error'];}
+    );
+
+    $scope.update_interfaces = function() {
+
+        $http({
+            method: 'GET',
+            url: window.location.origin + "/data/interfaces/" + $scope.router
+        }).then(
+            function(rsp) {
+                $scope.interfaces = rsp.data.map(function(x){
+                    return x.name
+                });
+                },
+            function(rsp) {$scope.interfaces = ['error'];}
+        );
+    }
+
+    $scope.update_status = function() {
+
+        $http({
+            method: 'GET',
+            url: window.location.origin
+                + "/alarmsdb/interface-status?equipment="
+                + $scope.router
+                + "&interface="
+                    + $scope.interface
+        }).then(
+            function(rsp) {$scope.status = rsp.data.status;},
+            function(rsp) {$scope.interfaces = 'query error';}
+        );
+    }
+
+});
\ No newline at end of file