@extends('layouts.app') @section('title', 'Devices') @section('content')

Network devices

{{ $devices->total() }} device(s) in the estate.

@csrf
+ Add device
@foreach (['up' => 'Up', 'down' => 'Down', 'degraded' => 'Degraded', 'maintenance' => 'Maintenance', 'provisioning' => 'Provisioning', 'decommissioned' => 'Decommissioned'] as $key => $label) @include('components.kpi', ['label' => $label, 'value' => number_format($counts[$key] ?? 0), 'variant' => $key === 'up' ? 'good' : ($key === 'down' ? 'bad' : ($key === 'degraded' ? 'warn' : '')), 'href' => route('devices.index', ['status' => $key])]) @endforeach
@forelse ($devices as $device) @empty @endforelse
DeviceRoleSiteManagement IPVendor / model InterfacesLatencyStatusPolled
{{ $device->name }}
{{ $device->hostname }}
{{ title_case_words($device->role) }} {{ $device->site?->name ?: '—' }} {{ $device->management_ip }} {{ $device->vendor }}
{{ $device->model }}
{{ $device->interfaces_count }} @if ($device->status === 'up' && $device->last_ping_ms !== null) {{ number_format($device->last_ping_ms, 1) }} ms @else — @endif {{ $device->status }} {{ $device->last_polled_at?->diffForHumans() ?? 'never' }} Open Edit
@include('components.empty-state', ['icon' => '⚙', 'title' => 'No devices found', 'message' => 'Register your network equipment to start monitoring.', 'action' => '+ Add device'])
@if ($devices->hasPages())
{{ $devices->links('partials.pagination') }}
@endif
@endsection