FRIEND · FIBER NEXUS DASHBOARD

FRIEND · Fiber Reference Indexable Event Nexus Dashboard · v12.29
📊
0
Total Cables · Tap to View All
0
Open
0
In Progress
🪢
0
No Cable
0
Unfixable
0
Completed
SITE PROGRESS0%
Completed   Unfixable   In Progress
Recent Activity0
No activity yet
SORT
Cables: 0 Tickets: 0 Installed: 0
No tickets yet
+ Add CableRACK-TO-RACK · U/PORT OPTIONAL
Creates a cable record in the project (not a ticket). U + port are optional — if you don't know yet, just pick the racks. You can fill in details later by tapping the cable in CABLES.
ORIGORIGIN (required)
DESTDESTINATION (required)
Bulk ImportSPREADSHEET
When set, every imported cable gets this DM regardless of what the parser found. Cables that already had a different DM detected get the override too.
If you copied with the header row from row 1, leave this at 1. If you scrolled and started copying from row 47, enter 47. This makes the #N badges match the row numbers you see in the spreadsheet so coworkers can refer to them.
Four formats supported. (1) Cut-sheet XLSX — upload the full workbook (Console, Management, Aux internal/external, BFab, METRO, Jfab XC, El paso<>jfab, edge<>*, etc.). The importer auto-detects the source data section on every sheet and aggregates cables across all 13 tabs, tagged by sheet name. (2) CSV/TSV/XLSX with column headers (auto-detects A-/B-, Src/Dst, From/To, DeviceA/DeviceB, Origin/Dest, optional Device). (3) LINK DOWN lines like [host] LINK DOWN on SITE:RACK:RU:HOST:Ethernet#/# <--> SITE:RACK:RU:HOST:Ethernet#/#. (4) MPO Label blocks — 4-line blocks (origin · PP1 · PP2 · dest) separated by blank lines or back-to-back.
📂 Imported Lists0
Every import becomes a numbered List. Tap a list to see every row in its original order — tap any row to jump to the cable it created. When a coworker says "do line 16 in list 2", open List 2 here and tap row 16.
Bulk Assign DM--
Reassign DM on already-imported cables. Useful when Console / Management sheets came in without DM, or when you want to move a chunk to a different room. Filter by section first if you want to scope the change.
Syntax Reader · Field AliasesPROJECT
Teach the parser new column-header terms. When your company's spreadsheet format changes — for example, RU becomes Unit Position — add an alias here instead of waiting for a rebuild. Default terms are always recognized. Custom aliases are project-scoped and travel with project exports.

TEST · Paste a header row to see how it parses

📋 ListsCURATED
Report-friendly curated lists — pull lists, label queues, work orders. For raw import history (every batch with every row), see the IMPORT tab.
Label Maker 0
Full-screen walk-up label printer. Pick a template, type the text, hit print. Exit any time.
Drill down with the dropdowns. Leave deeper levels blank to print everything under the lowest filled one. Example: pick DM31 + 0803 with U and PORT blank → prints every label for rack 0803 in DM31.
Pick a scope above
🧵 Cable Pull · Field Crew--
Pull list for the field crew: see every run's from/to, mark cables pulled as you go, queue labels, and live-print two-up. Tracks progress by DM and rack.
DM View · Rack Floor--
DM: Focus:
Open In Progress No Cable Completed Unfixable
Tap any rack on the top-down map (or in the stroller below) to open its rack-detail page.
Rack Stroller · Front Views --
← scroll horizontally to see every rack →
Each card shows the rack's current build inferred from tickets. Tap the rack header to open rack-detail. Tap a U slot to jump to that position's tickets. Cut-sheet ingestion (next build) will populate full device blocks with correct heights, types, and unused U positions.
🏗️ DM Builder · Trays, Distances, Pathways--
Build a physical model of one DM: place cable trays over the rack grid, set distances between racks, define real-world scale. Trays are per-DM. Once a tray exists you can attach cables to it for actual-path distance estimation (next versions).
VIEW
+ TRAY:
VIEW 100% · PAN
DM SETTINGS · DISTANCES & SCALE
Defaults: standard CPI/Chatsworth enclosed 4-post — 24″ wide × 46″ deep, butted side-by-side at 24″ centers. Edit for non-standard rooms. Measurements below override these.
ROOM & WALLS
Default: walls 36″ from nearest rack, room squared off (max side). Use this when laying down the perimeter cable tray.
SCALE · MEASUREMENTS
Click two racks, type the real distance between them. One measurement scales the whole DM. Add more (e.g. 3) and the app averages them. Same-row pairs set column distance; same-column pairs set row distance.
GRID SIZE
Extend the buildable grid beyond imported racks so you can place trays over empty space.
TRAYS · 0
📌 My Assignmentsv12.29
Project Crew0
Curated list of techs on this project. Names appear in assignment dropdowns. The current TECH pill is set in the header — every action you take stamps your name into the activity log.
Recent Activity (All Cables)
Knowledge BaseFIBER REFERENCE
Site SetupCONFIG
Loss StandardsPROJECT

Per-fiber attenuation (dB/km)

Per-connection (dB)

Caps & margin

Caps set the validation thresholds. A segment or link with measured loss above its cap shows red on the chain editor. Margin is the tolerance above expected loss before yellow becomes orange.
Device Profiles0
Numbering: column-major (top-to-bottom per column, like Arista) or row-major (left-to-right per row, like 1U switches). Flipped rows: comma-separated row numbers whose ports are mounted upside-down (e.g. 3,4).
Data ManagementSHARE

PER PROJECT (recommended)

Just the active project + shared device profiles. Smaller file. Ideal for handing one job off to another tech without disturbing their other work.
Adds the project alongside your existing ones. Doesn't replace anything.

FULL DATABASE

Everything: all projects, devices, settings. Use for whole-tool backup.
Replaces all your current data. Export first if you want to keep it.
Capability Overview & Deployment BriefingFRIEND

FRIEND · PROJECT OVERVIEW

A single-file, browser-based field tool for fiber optic teledata work. Built for crews coordinating lost-link triage, link documentation, and tech accountability on data center jobs. Operates entirely on the device. No server, no account, no cloud round-trip.

SECURITY & DATA SOVEREIGNTY

Local-only storage

Every project, ticket, optical reading, and activity log entry resides in the device's browser storage. Nothing leaves the device unless the operator explicitly exports a file.

No backend service

There is no server to compromise, no API endpoint to harden, no credentials to manage, and no accounts to provision or deprovision. The application is the data layer.

Zero telemetry

No analytics, no usage tracking, no third-party scripts, no external network requests after the initial page load. What you do in the field stays in the field.

Air-gapped operation

Fully functional offline. The application is distributable as a single HTML file by email, AirDrop, internal file share, or USB. Survives basements, server rooms, and signal-poor work sites.

Forensic-grade audit trail

Every state change writes a stamped entry to the relevant ticket's activity log with technician identity and timestamp. Disputes about who did what and when are settled by reading the ledger.

No vendor lock-in

All data is exportable at any time as portable JSON. No subscription, no usage limits, no proprietary database. Organizational data remains organizational property.

KEY CAPABILITIES

01
Bulk Import
Parses 250+ tickets in seconds from XLSX, CSV, TSV, or LINK DOWN syslog format. Auto-detects column headers. Source row numbers preserved for cross-referencing.
02
Smart Re-Import
Existing tickets are matched by ID or endpoint signature. Re-uploading an updated spreadsheet propagates status changes from cell colors without creating duplicates.
03
Syntax Reader
Project-scoped field aliases let operators teach the parser new column terms when source spreadsheet formats change, without a software update.
04
Multi-Segment Link Documentation
Chain editor for fiber paths through patch panels, splices, and cross-connects. Per-segment loss calculation against project-defined budgets. Four-state validation indicators.
05
Optical Power Reading Capture
Readings with wavelength selector, sign toggle for glove-friendly entry, and automatic tech-name and timestamp attribution.
06
As-Built Tracking
Three-state label verification per endpoint. Inline endpoint correction with full audit trail. Original imported records preserved alongside corrections.
07
Tech Accountability
Every state change is logged with technician identity. Per-tech assignment counts, completion statistics, and a project-wide cross-ticket activity feed.
08
Crew Distribution
Multi-tech assignment per ticket. MY TICKETS and UNASSIGNED filters. Bulk assignment over filtered selections.
09
Embedded Knowledge Base
Searchable reference covering TIA-598-C color codes, connector polish standards, fiber types OS1 through OM5, wavelength windows, transceiver budgets, MPO polarity methods, and troubleshooting trees.
10
Reporting
Print-ready HTML and CSV export. Per-project scope for handoffs and customer deliverables, or full-database export for backup.
11
Field Checks
Three per-side checkboxes (Link, Cleaned, IR Light) document verification work at each endpoint. Setting any check auto-promotes the ticket to IN PROGRESS. Each toggle is timestamped and attributed in the audit log.
12
Pair Work Mode
Per-ticket toggle enabling two technicians to split a link between origin and destination ends. Each side carries its own assigned technician; flag changes are credited accordingly. Auto-claim engages when an unassigned side is first touched.
13
Top-Down Floor Visualization
True two-dimensional map of the data module reflecting hot/cold-aisle layout and rack-numbering conventions. Cross-rack links rendered as colored curves by ticket status. Focus filter narrows to a single rack and its connected partners.
14
Unified Status Color Palette
Five-state color scheme — yellow open, blue in progress, amber no-cable, green completed, red unfixable — applied consistently across every visualization, list, badge, and chart.
15
Shareable Test-Order Lists
Filtered ticket sets exported as plain text, formatted HTML, or CSV for two-technician coordination. Native device share-sheet supported on mobile platforms.
16
Print Label Queue
Per-ticket LABEL MISSING flag, with a Both Sides option for two-end label installs. A dedicated LABELS tab gathers flagged endpoints into a print queue. Sorts by location, time-added, or assigned technician. One-tap export to EasyMark-compatible XLSX for direct print on Panduit hardware.
17
Tech Roster & Admin Handoff
Per-project technician directory accessible from the header. First tech added becomes the project administrator and the default-on-load technician. Admin role transferable to another tech with full audit trail.
18
Resilient Startup
Defensive load with corrupt-data recovery, in-page error banner with one-tap retry / soft reset / factory reset on init failure. Async vendor scripts so weak field signal does not block the application.

WHAT IT'S FOR

This started as a way to stop re-keying cut sheets and chasing LINK DOWN lists by hand. It parses the spreadsheets the job already produces, turns them into trackable cable runs and trouble tickets, builds labels, plans pulls, and maps the room — all on the device, offline, no account. If something's clunky or missing, it gets fixed in the next build.

TECHNICAL SPECIFICATIONS

Platform
Any modern browser — Chrome, Safari, Edge, Firefox
Operating systems
iOS, Android, Windows, macOS, Linux, ChromeOS
Devices
Phones, tablets, laptops, desktops
Network requirement
None after initial page load
Storage
Browser localStorage, typically under 2 MB per project
Footprint
One HTML file, approximately 350 KB
External dependencies
None
License or subscription
None required
Distribution
Email, internal file share, USB transfer, messaging application
Deployment time
Open file in browser — no installation, no IT review

CUSTOMIZATION POINTS

  • Loss budget thresholds configurable per project (per-fiber, per-connection, per-link caps, margin tolerance)
  • Common cable type and connector type libraries scoped per project
  • Device profiles support arbitrary switch and panel topologies including column-major numbering and physically flipped rows
  • Rack height configurable from 12U through 48U or custom
  • Project-scoped DM (data module / room) hierarchy for filtering and grouping
  • Field-name alias dictionary for adapting to changing spreadsheet formats without software revision

BUILT BY

Hank Elsner — IBEW teledata technician. Built to solve real problems on real data center jobs, then refined build by build from field use. Not a product, not a subscription, no telemetry. Just a tool that does the job and travels as a single file.

FRIEND · PROJECT OVERVIEW · v12.29
⚡ HYPER MODE OFF
A verbose activity console docks under the page header and follows you across the whole site. Local narration runs instantly and free. Higher tiers add periodic workflow analysis (uses the access key). A timestamped session trace is exportable below.
OFF LOCAL LIGHT BAL DEEP MAX
Disabled.
The session trace is a timestamped file with the full event stream, derived states, hashes, and any workflow observations. Hand it to a developer (or Claude Code) to drive improvements. Excludes raw project content beyond names + counts.
🧬 LEARNED LOGIC IN SYNC
The slider's analysis proposes refinements to narration templates and parsing aliases — stored as data, consumed by fixed code. The drift meter shows how far the learned rules have moved from the shipped default. At high drift, a high-powered model can consolidate everything into a new baseline.
0% drift IN SYNC
PENDING PROPOSALS (0)
CONSOLIDATE sends the learned rules to the max model, adopts the cleaned result as the new baseline (drift resets to 0), and logs the event. EXPORT SPEC produces a document for baking the improvements into the shipped source via Claude Code.
🔧 CODE UPGRADES 0
Describe a feature and get a paste-ready brief for your coding agent — or let the engine inspect how you use the app and propose upgrades. Each card has a plain-English "what it will do" and a copyable prompt. These are the improvements that need code changes the app can't make itself.
⚙ ENGINE · CONNECTION DISABLED
Key is stored on this device only. Direct connection — no relay, no telemetry. Disable button removes the key and locks the engine pane.
💬 CONVERSATION 0 messages
No messages yet. Type below to start.
System prompt override (default uses project context)
🧩 TASK ROUTING PER-TASK MODEL CONFIG
Each task tries the min model first. If output confidence is below the threshold, it auto-escalates to max. Tasks can be disabled individually.
TaskMinMaxAuto-escalateEnabled
🔍 LAST REQUEST 0 in / 0 out
Request payload
(none yet)
Response payload
(none yet)
Audit trail of the last call. Useful for debugging prompt drift.
📊 USAGE 0 tokens
Session totals only — not persisted across reloads. Anthropic billing dashboard has accurate per-day costs.
🧠 TELEMETRY & IDEAS OFF
Tracks feature usage, navigation paths, and friction signals locally on this device. Nothing leaves until you click EXPORT. Use the digest to drive future improvements.
0
sessions
0
events
0
features used
0
friction signals
0
ideas captured
💡 IDEAS · BUGS · NOTES
📤 EXPORT
Export a digest formatted for pasting into a development conversation. The digest excludes project content (cables, customer data) and includes only feature usage, navigation, friction, and ideas.
Counter detail (top features)
(none yet)
Navigation paths
(none yet)
Friction signals
(none yet)
🏷️ LABEL KIOSK
TEMPLATE
LABEL CONTENT
PRINT SCOPE
Drill down with the dropdowns. Leave deeper levels blank to print everything under the lowest filled one. Example: pick DM31 + 0803, leave U and PORT blank → prints every label for rack 0803 in DM31.
FONT SIZE
AUTO
PRINT QUEUE PREVIEW
If the print misses the label faces: the column gap or row pitch doesn't match your physical media. Open ⚙ EDIT on the template and measure with calipers:
  • Column gap — distance between the right edge of the left label and the left edge of the right label (typically 0.125″–0.5″ on 2-up media).
  • Row pitch — distance from the top of one label to the top of the next label down (label height + any perforation strip).
If your printer prints the date/title on each label: in the print dialog, open More settings and turn OFF Headers and footers. Set Margins to None. For silent printing, launch Edge with --kiosk-printing.
Panduit reference — S100X150 has a 1.0″×0.5″ print area on 1.0″×1.5″ media (rest is clear over-laminate). 2-up Panduit wrap templates ship with starter values you'll need to dial in to your specific roll.