# Rem0te — screenshot gallery Every image below is a capture of the running application at **1440×1000** (retina, `deviceScaleFactor: 2`), taken against an isolated demo database. Nothing is mocked, drawn, or AI-generated. **All businesses, people, devices and activity shown are fictitious.** The RustDesk IDs are synthetic and registered with no rendezvous server, so none of these devices can be reached. Enrollment tokens, RustDesk IDs and public IP addresses are replaced with sample values in the browser immediately before each capture — see [Regenerating these](#regenerating-these). ↩︎ [Back to the README](../README.md) · [▶ Watch the walkthrough](https://github.com/agit8or1/rem0te/releases/download/v0.13.5/walkthrough.mp4) · [Quick start](setup.md) · [Architecture](architecture.md) · [More MSP tools at mspreboot.com](https://mspreboot.com) --- ## Contents | Section | What it covers | |---|---| | [Overview and dashboards](#overview-and-dashboards) | The operator's landing view and the customer list | | [Visual insights and monitoring](#visual-insights-and-monitoring) | Client map, live sessions, history, audit, host health | | [Device inventory](#device-inventory) | Every computer, its collected specs and its event log | | [Everyday workflows](#everyday-workflows) | Enrolling a device, downloads, Quick Connect, launching from Tactical RMM | | [Access and administration](#access-and-administration) | The three-level model, capabilities, accounts | | [Configuration](#configuration) | Platform settings, branding, releases, documentation | | [Regenerating these](#regenerating-these) | How to rebuild the gallery without touching production | Theme coverage is deliberately mixed: most features appear once, in whichever theme suits them, with the dashboard captured in **both** so the theme support is visible rather than claimed. --- ## Overview and dashboards ### Dashboard — light Rem0te dashboard in light theme: tiles for total computers, offline computers, active sessions and sessions over 7 and 30 days, above a map of client locations across the western United States and a recent-sessions list. Open Rem0te and see the whole estate at once — how many computers exist, how many are offline right now, what is connected, and how much support work the last week actually took. ### Dashboard — dark The same Rem0te dashboard in dark theme, showing 34 total computers with 26 online, 8 offline, three active sessions, the client location map and a seven-day session bar chart. The same view in dark. Both themes ship with the product and are switched from the sidebar — this pair is the one deliberate duplicate in the gallery. ### Businesses — light The Businesses page listing six customer businesses with short code, contact address, computer count, number of people, status and creation date. Every customer business you manage, with its computer and people counts. This is the top of the hierarchy: each business owns its own computers, users and history. ### Business overview — dark A single business detail page in dark theme showing contact details, creation date, and a Quick Connect toggle for that business. One customer's record, including the per-business Quick Connect switch that gates temporary support access for their users. --- ## Visual insights and monitoring ### Client locations map — dark Close view of the client locations map in dark theme, with clustered green markers over Everett, Spokane, Seattle, Portland, Bend, Boise and Denver, each labelled with a device count. Managed computers plotted from the address each last checked in from, clustered by city with a count. Useful for spotting a site that has gone dark. ### Live sessions — dark The Sessions page in dark theme, showing a grid of currently-online enrolled clients, each card with hostname, business, last-seen time and a Connect button. Everything online right now, grouped as connectable cards. One click launches the technician's local RustDesk client against that machine. ### Session history — light Session history in light theme, listing completed support sessions with technician, business, issue description, start time and duration. What was done, by whom, on which machine and for how long — the record you go back to when a customer asks what you did last Tuesday. ### Audit log — dark The audit log in dark theme, a timeline of actions including session completed, session launched, login success and quick connect ended, each with timestamp, actor, resource and source IP. An append-only trail of every action: sign-ins, session launches, credential reveals, capability changes. Failures never crash the request path, so the log is what actually happened. ### Audit log — light The same audit log in light theme with filters for actor ID and resource above a table of timestamped actions. The same trail with the actor and resource filters, for narrowing to one person or one machine. ### System status — dark System status page in dark theme showing uptime, CPU load, memory and disk usage bars, and a service list with Reboot Remote API, web, Caddy, PostgreSQL, Redis and RustDesk hbbs and hbbr all marked active. Host health and the services Rem0te depends on — including RustDesk's own `hbbs` and `hbbr` — so you can tell a platform problem from a customer problem. ### Security overview — light The platform security page in light theme summarising security posture checks. The platform's own security surface, in one place. --- ## Device inventory ### All computers — light The Enrolled Clients list in light theme, showing computers across all businesses with name, owning business, platform badge, masked RustDesk ID, last seen and online status. Every managed computer across every business, searchable, with platform and live status. RustDesk IDs are masked in this gallery. ### All computers — dark The same enrolled clients inventory in dark theme. ### One business's computers — dark The Computers tab of a single business in dark theme, listing that customer's machines with Windows, macOS and Linux platform badges and online or offline status. Scoped to a single customer — the view you use when they phone up. ### Computer detail — light A single computer's detail page in light theme showing its platform, operating system version, status and connection controls. One machine: what it is, what it runs, and the controls to connect to it. ### Resource gauges — light The Resources card on a computer's page in light theme: CPU, memory and system disk shown as labelled meters with percentages, the memory meter reading 44 percent of 16 GB and the disk meter showing free space, above a note saying when the sample was taken. CPU, memory and system disk, sampled on the computer's heartbeat rather than read from the six-hourly inventory pass — so these are minutes old, and the card says so instead of letting a needle imply "now". Amber past 80% and red past 92%, the point at which a Windows volume starts failing updates. ### Device specs — dark The collected-inventory cards on a computer's page in dark theme: System with OS build and architecture, Session showing nobody at the console and six hours of uptime, Hardware with an HP EliteBook 840 G9 and its Core i7 and BIOS version, Memory and Storage with usage bars, Network with adapter and address, and an Updates card showing two pending Windows updates beside the Rem0te agent and RustDesk client versions. What a managed computer reports about itself, collected by its agent on a heartbeat rather than fetched live — so every card says how old its contents are. Hardware, storage and network come in every six hours, pending Windows updates every twelve, and who is signed in on every beat. Three separate things can be out of date here — the Rem0te agent, the RustDesk client, and the machine's own Windows updates — so each is named rather than merged into one "up to date" claim. ### Event log — dark The Event Log tab on a computer's page in dark theme, with selectors for log, time range and event count, level chips for Critical, Error, Warning and Information, an optional source filter, and a table of returned System log entries with timestamps, level badges, event IDs, providers and messages. Read a page of a managed computer's Windows event log without connecting to it. Five logs are available — Application, System, Security, Setup and Windows PowerShell — and nothing else: the allowlist is enforced by the API and again by the agent that opens the log. There is no channel to reach into an endpoint, so this is a request rather than a query: it is collected on the machine's next heartbeat, up to about three minutes away. Reading logs is its own permission, separate from viewing the computer, and every request is audited with the log, the window and who asked. ### My Computers — dark The My Computers page in dark theme, showing only the machines the signed-in user has been granted access to, each with a Connect button. What a Business User sees — only the machines they were granted, and a Connect button. No RustDesk IDs to type, no passwords to pass around. ### Unassigned computers — light The unassigned computers page in light theme, for machines that have enrolled but do not yet belong to a business. Machines that enrolled but have not landed in a business yet. --- ## Everyday workflows ### Enrol a managed device — light The three-step enrollment form in light theme: choose the business, choose which users may connect with one user ticked, and choose Windows, Linux or macOS before generating an installer. Pick the business, pick who may connect, pick the platform. The business is bound into the installer when it is generated — the machine that runs it cannot place itself somewhere else. ### Enrol a managed device — dark The same enrollment workflow in dark theme with a different business selected, showing that business's users as the access options. Choosing a different business narrows the access list to that business's people. ### Downloads — dark The Downloads page in dark theme offering the preconfigured RustDesk client, an unconfigured client and a setup command for the technician's own computer. The clients Rem0te hands out, including the preconfigured RustDesk build that already knows where your server is. ### Launched from Tactical RMM — dark The from-Tactical-RMM landing page in dark theme, warning that more than one computer matches the hostname reception-pc and listing two candidates from different customer businesses, each with its online status, business, site and last-seen time, and a Connect button. What a Tactical RMM URL Action lands on. Right-click an agent in TRMM and Rem0te resolves it to a computer and connects. Here it will not: two customers both have a machine the front desk calls `reception-pc`, which is most MSPs rather than a contrived example. Rem0te refuses to pick — guessing opens a remote session on somebody else's machine — and remembers whichever you choose, so the next launch goes straight through. ### Quick Connect — light The Quick Connect page in light theme with remote ID and password fields, a client download panel and a five-step explanation of a temporary session. Temporary help for a machine that is **not** an enrolled device. They run a client, read you an ID and a one-time password, and closing it ends the session. No computer record is created. ### Built-in help — dark The Help and Docs page in dark theme, with an expanded section explaining how RustDesk connections work through the hbbs rendezvous server and hbbr relay, above collapsed sections for server setup, enrolling endpoints and troubleshooting. Answers in the product, not just the repository — how connections are brokered, why a Connect can fail, and what to do about it. --- ## Access and administration ### The access model — light The Access Control overview in light theme showing three stacked levels: Platform Admin with full platform access, Business Owner with full control of one business, and Business User with permissions assigned by the owner. Three levels and no reseller hierarchy. A **Business** is the security boundary, enforced on the server rather than by hiding buttons. ### Business users and capabilities — dark The Business Users tab in dark theme, listing people across businesses with their level, the number of capabilities granted, status, and buttons to edit permissions or change level. Who can do what, per business. Owners hold everything; each Business User shows the capabilities actually granted — not a role name that hides the detail. ### Platform admins — light The Platform Admins tab in light theme listing the operators who administer the whole platform. The short list of people who run the service itself. ### Users — dark The Users page in dark theme listing all accounts with their business, job title and status. Every account on the platform, across all businesses. ### My account and security — light The My Account page in light theme, on the Profile tab showing identity and contact fields, with Password and Two-Factor Auth available as further tabs. Your own profile, password and two-factor enrolment, each on its own tab. --- ## Configuration ### Platform settings — dark Platform settings in dark theme covering RustDesk relay configuration, the Quick Connect master switch and MFA policy. RustDesk infrastructure, the Quick Connect master switch and MFA policy — the settings that apply to the whole platform. ### Branding — light The branding settings page in light theme for setting the product name and logo shown to customers. Name and logo shown to the businesses you support. ### Release history — dark The About page in dark theme showing the running version and a parsed list of releases from the changelog. The running version and the release history, parsed from `CHANGELOG.md`. ### Built-in documentation — light The in-app documentation browser in light theme with a searchable index of guides. The same guides that live in `docs/`, searchable inside the app. --- ## Regenerating these Captures run against an **isolated demo stack** — never production, and never a database with real records. The capture script refuses an `https://` target or port 3000/443 outright. ```bash # 1. Throwaway database (the demo-data module refuses any other name) sudo -u postgres createdb reboot_remote_docs cd apps/api DATABASE_URL=postgresql://…/reboot_remote_docs npx prisma migrate deploy DATABASE_URL=… npx tsx prisma/seed.ts DATABASE_URL=… npx tsx prisma/_docs-demo-data.ts # 2. Run the API and web against it on non-production ports (4001 / 4000). # `output: 'standalone'` bakes the API rewrite in at build time, so patch # the copied build rather than relying on INTERNAL_API_URL. See CLAUDE.md. # 3. Re-anchor the demo clocks, then capture. Online/offline is derived from # how recently a device checked in, and the API sweeps the flag as data # ages — without this the dashboard counts stop matching the inventory. DATABASE_URL=… npx tsx prisma/_docs-demo-refresh.ts # run from apps/api WEB_URL=http://127.0.0.1:4000 EMAIL=… PASSWORD=… \ node apps/web/scripts/capture-media.mjs # gallery -> docs/images/github/ WEB_URL=http://127.0.0.1:4000 EMAIL=… PASSWORD=… \ node apps/web/scripts/capture-video.mjs # recording -> media/raw/ scripts/build-video.sh # MP4 + poster + highlight ``` `docs/images/github/manifest.json` records the route, theme and viewport behind every image. Credentials are passed as environment variables and are never written to a script, a manifest, or the repository. `apps/web/scripts/screenshots.mjs` is a **different** tool and is still in use: it produces the numbered-callout images embedded in the in-app documentation under `docs/screenshots/`. This gallery and that guide do not share files. Masking happens in the browser DOM immediately before each shutter and never writes to the database: | Value | Shown as | |---|---| | Enrollment / claim tokens | `SAMPLE-ENROLLMENT-TOKEN` | | Long hex secrets | `SAMPLE-TOKEN-VALUE` | | RustDesk IDs | `•••••••••` | | Public IP addresses | `198.51.100.24` (RFC 5737 documentation range) | Private ranges and loopback are left as they are — they carry nothing. --- Rem0te is one of several free tools for MSPs published at [mspreboot.com](https://mspreboot.com). ↩︎ [Back to the README](../README.md)