towerops/lib/towerops_web/live/help_live/sections/getting_started.ex
Graham McInitre 9d4a5f6d81 refactor: comprehensive simplification and functional programming improvements
- help_live/index.ex: 2,642→173 lines, 15 section modules + sidebar extracted
  MikroTik now real section, dead if false removed
- agent_channel.ex: 2,506→1,751 lines, 3 helper modules extracted
  (heartbeat/subscriptions/job_builder), decode_and_process/4 eliminates
  8 repeated handle_in patterns, guard-based size checks
- antenna_catalog.ex: 1,174→47 lines, 107 specs → priv/antennas/catalog.json
- topology.ex: unbounded query → batched loading (100/batch),
  all guard errors fixed, zero if/case/cond conditionals
- proto: decoder_macros.ex + field_specs.ex infrastructure for
  macro-generated protobuf decoders
2026-07-21 17:03:47 -05:00

127 lines
5.1 KiB
Elixir

defmodule ToweropsWeb.HelpLive.Sections.GettingStarted do
@moduledoc false
use ToweropsWeb, :html
import ToweropsWeb.HelpLive.Sections.Helpers
def render(assigns) do
~H"""
<div class="p-6">
<h2 class="text-xl font-bold text-gray-900 dark:text-white mb-4">
Getting Started with Towerops
</h2>
<div class="prose prose-sm dark:prose-invert max-w-none">
<p class="text-gray-600 dark:text-gray-400">
Towerops is a network monitoring platform that helps you keep track of your network devices,
monitor their health, and get alerts when issues occur.
</p>
<h3 class="text-lg font-semibold text-gray-900 dark:text-white mt-6 mb-3">
Quick Start Guide
</h3>
<div class="space-y-6">
<div class="flex gap-4">
<div class="flex-shrink-0">
<div class="flex items-center justify-center w-8 h-8 rounded-full bg-blue-100 dark:bg-blue-900/50 text-blue-700 dark:text-blue-300 font-semibold">
1
</div>
</div>
<div class="flex-1">
<h4 class="text-base font-semibold text-gray-900 dark:text-white mb-2">
Create a Site (Optional)
</h4>
<p class="text-gray-600 dark:text-gray-400">
Sites represent physical or logical locations where your network devices are located.
If you manage multiple locations, start by creating a site for your office, data center,
or any location where you have equipment.
</p>
<p class="text-sm text-gray-500 dark:text-gray-500 mt-2">
Navigate to
<.code>Sites</.code>
<.code>Add Site</.code>
</p>
<p class="text-sm text-gray-500 dark:text-gray-500 mt-1">
Sites are disabled by default and can be enabled later in
<.link
patch={~p"/help?section=settings"}
class="underline hover:text-gray-700 dark:hover:text-gray-300"
>
Organization Settings
</.link>
→ General tab.
</p>
</div>
</div>
<div class="flex gap-4">
<div class="flex-shrink-0">
<div class="flex items-center justify-center w-8 h-8 rounded-full bg-blue-100 dark:bg-blue-900/50 text-blue-700 dark:text-blue-300 font-semibold">
2
</div>
</div>
<div class="flex-1">
<h4 class="text-base font-semibold text-gray-900 dark:text-white mb-2">
Add Your First Device
</h4>
<p class="text-gray-600 dark:text-gray-400">
Add network devices like routers, switches, access points, or servers. You'll need the device's
IP address or hostname, and SNMP community string (for SNMP-enabled devices).
</p>
<p class="text-sm text-gray-500 dark:text-gray-500 mt-2">
Navigate to
<.code>Devices</.code>
<.code>Add Device</.code>
</p>
</div>
</div>
<div class="flex gap-4">
<div class="flex-shrink-0">
<div class="flex items-center justify-center w-8 h-8 rounded-full bg-blue-100 dark:bg-blue-900/50 text-blue-700 dark:text-blue-300 font-semibold">
3
</div>
</div>
<div class="flex-1">
<h4 class="text-base font-semibold text-gray-900 dark:text-white mb-2">
View Device Metrics
</h4>
<p class="text-gray-600 dark:text-gray-400">
Click on any device to view real-time metrics including CPU usage, memory, temperature,
interface traffic, and more. Explore the different tabs to see network topology, port status,
and historical performance data.
</p>
</div>
</div>
</div>
<div class="mt-8 p-4 bg-blue-50 dark:bg-blue-900/20 border border-blue-200 dark:border-blue-800 rounded-lg">
<div class="flex gap-3">
<.icon
name="hero-light-bulb"
class="h-5 w-5 text-blue-600 dark:text-blue-400 flex-shrink-0 mt-0.5"
/>
<div>
<h4 class="text-sm font-semibold text-blue-900 dark:text-blue-300 mb-1">Pro Tip</h4>
<p class="text-sm text-blue-800 dark:text-blue-300">
For devices behind firewalls or in remote locations, you can deploy a remote poller
to monitor devices locally without exposing them to the internet. See the
<.link
patch={~p"/help?section=agents"}
class="underline hover:text-blue-900 dark:hover:text-blue-200"
>
Remote Pollers
</.link>
section for more information.
</p>
</div>
</div>
</div>
</div>
</div>
"""
end
end