← Back to home

Technical Deep Dive · HEROIC Desktop

Building a Windows security desktop prototype with Flutter, Go, osquery, and Inno Setup

This HEROIC desktop project was a non-distributed Windows security prototype. I built the experience around a Flutter desktop interface, a Go-based Windows agent, osquery-powered system data retrieval, and Inno Setup packaging so the app could behave like a desktop security product instead of a simple UI demo.

CompanyHEROIC Cybersecurity
RoleSenior Flutter Developer (Solo)
TimelineJune 2025 – May 2026
DomainWindows security desktop prototype

Product Goal

A desktop security companion that makes device health and risk visible

The idea was to build an antivirus-style HEROIC desktop app for Windows. The product needed to show a clear protection score, highlight concerns, record device activity, inspect system information, and surface security insights that a user could understand quickly.

Because this kind of app depends on real system state, Flutter alone was not enough. The desktop UI handled the product experience, while the Go agent worked closer to Windows and used osquery to retrieve device and system details.

Architecture

The product was split between a polished desktop shell and a system-aware Windows agent

Interface

Flutter Desktop

Dashboard, activity feed, system tabs, security insights, account, settings, and desktop navigation.

Agent

Go Windows Agent

Background system-side work for collecting and preparing device information outside the UI layer.

Telemetry

osquery

Used to retrieve device, software, storage, performance, and security-related system details.

Installer

Inno Setup

Combined the desktop application pieces into a Windows installer workflow for the prototype build.

What I Built

The app covered dashboard, system visibility, activity, insights, account, and settings flows

Dashboard

Protection score and concerns

Created the main overview showing protection score, CPU, memory, storage, concerns, and recent activity.

Activity

Filtered event timeline

Designed activity views for all, unread, security, and system events including sign-in, extension, update, and agent activity.

System

Live device inspection

Built system sections for overview, performance, hardware, software, storage, and network visibility.

Security

Actionable insights

Structured security insights around concerns, browser extensions, USB activity, and account access signals.

Account

Profile and HEROIC apps

Added account surfaces for profile state, subscription information, device status, and linked HEROIC apps.

Settings

Desktop preferences

Included notification preferences, app version information, update checks, help center, and privacy/terms access.

Challenges & Resolutions

The important challenge was connecting desktop UX with real Windows system behavior

Challenge 01

Flutter UI alone could not retrieve the required system-level data.

A desktop security product needs device, software, storage, performance, and security information from Windows. That work belongs closer to the operating system than the UI layer.

How I resolved it

I separated responsibilities: Flutter handled the product interface, while a Go Windows agent worked as the system-side component and used osquery to retrieve the required details.

What improved

The app could present real device context while keeping the UI focused on clarity, navigation, and user decision-making.

Challenge 02

The product needed security information without overwhelming the user.

Raw system data is not useful by itself. The experience needed to translate telemetry into dashboard signals, concerns, system sections, and insight cards.

How I resolved it

I organized the app around understandable areas: protection score, recent activity, system tabs, storage usage, software inventory, performance data, and security insights.

What improved

The prototype became easier to read because the user could move from a high-level protection score into the specific system or security detail that needed attention.

Challenge 03

The app needed to feel like a Windows product, not only a Flutter screen.

Desktop security apps need a proper installable shape, predictable navigation, and settings/account flows that match a utility product.

How I resolved it

I combined Flutter desktop, the Go agent, and Inno Setup packaging so the prototype could be installed and reviewed as a Windows desktop product.

What improved

The project moved closer to a real desktop app workflow with installer packaging, app settings, account screens, and a system-aware dashboard.

Screens

Key screens from the HEROIC Windows desktop prototype

HEROIC desktop dashboard
HEROIC desktop activity all events
HEROIC desktop security activity
HEROIC desktop system activity
HEROIC desktop system overview
HEROIC desktop installed software
HEROIC desktop storage screen
HEROIC desktop performance screen
HEROIC desktop security insights
HEROIC desktop account screen
HEROIC desktop settings screen

Dashboard with protection score, concerns, metrics, and recent activity.

Stack

The project combined product UI, system telemetry, and desktop packaging

Flutter DesktopGoWindows AgentosquerySystem TelemetrySecurity UXInno SetupDesktop Prototype

Contact

Ready to discuss senior Flutter, mobile architecture, or product engineering roles