Voice Lab · Delivered 2026
From my workflow.
To their desktop.
My final app for Lockton turned years of employee sentiment work into a configurable reporting workbench: the team could shape the deck, the analysis and the client conversation.
Explore what the team could controlTry the reporting journey below.
Employee voice,
ready for context.
The analyst controls the browser and chooses what to capture.
Python scripts replaced paid third-party collection work.*
A packaged Windows app removed Python setup from the handoff.
Sentiment analysis continues to support client acquisition.*
01 / A configurable reporting workbench
Your template.
Your lens. Your conversation.
I designed Voice Lab so the team could shape both the presentation and the thinking inside it—connecting employee sentiment to Lockton’s advisory work.
A signal worth exploring.
Sentiment chart
A reusable binding tells the report generator what belongs in this part of the template.
Map both elements to complete this illustration.
Make a template reusable.
Import a PowerPoint, select slide elements, assign reporting slots, adjust positions and copy bindings from another template. Validate required mappings before activation.
Make the analysis relevant.
Versioned prompts, context-file uploads, project focus, client or prospect framing, services provided and business impact let the narrative reflect the firm’s work and a team or division’s needs.
Keep the result editable.
Benchmark and Full ESA pipelines produce PowerPoint text and native charts. Branding, colors, model settings and per-role controls live alongside the reporting workflow.
02 / The evolution
Every version removed
a little more friction.
It began as my analytical process.
It became a tool someone else could own.
The insight started with a download.
The original employee sentiment analysis process depended on exporting data from a platform, preparing spreadsheets, and building the story by hand. Every new employer meant repeating the collection and preparation work.
03 / Remove the setup barrier
“Just run the app.”
That took work.
A useful script still asks a lot of the next person: install Python, find the right libraries, configure an environment. My Py2EXE builder made that preparation part of delivery.
The final Voice Lab release bundled the executable, its dependencies and resources in a Windows folder package.
Bring the pieces together once, then distribute a prepared application.
04 / The handoff
The delivery included
the person taking over.
I installed Voice Lab and trained my former manager to take over the workflow. That was the final piece: making the tool usable, and making the knowledge transferable.
It remains in use at Lockton to bring employee sentiment into client acquisition pitches.*
The larger system
A report is the beginning
of a client conversation.
Voice Lab made the reporting workflow easier to carry forward. The wider ESA work connected employee voice, peer benchmarks, Power BI and recommendations—and the earlier Full ESAs offered deeper analytical detail.
Explore the employee sentiment systemThe build, in more detail
Own the collection process
The earlier workflow used platform exports and manual preparation. I developed Python collection and parsing scripts for Glassdoor and Indeed, coordinating shared Excel inputs and outputs. This brought the collection work in-house and, from my firsthand experience, removed the need to pay a third party for that collection. The later Voice Lab workflow still used an external platform as a source.
Turn utilities into an analyst toolkit
Search launchers and controllers grew into the ESA Toolkit, with a three-step Tkinter interface for project setup, search, and capture/parse/export. Configuration-driven parsing and analyst-controlled browser capture made the process easier to repeat. The recovered archive includes v5.0.7 source and executable artifacts.
Build the tool that packages the tools
My Py2EXE utility was a graphical front end to PyInstaller. It brought interpreter selection, one-file and one-folder options, hidden imports, resources, icons, version metadata, queues and build logs into one interface. The goal was practical: colleagues could run Python-based tools without installing libraries or setting up an environment. The archive does not establish that this utility produced every surviving executable.
Carry the workflow into Voice Lab
Voice Lab brought analyst-controlled browser capture, project configuration and Python reporting into a PyWebView desktop interface. Benchmark and Full ESA pipelines generated editable PowerPoint text and native charts. Employer, competitor, industry and division context, together with project focus and client or prospect framing, shaped the analytical brief. Deterministic data and chart preparation remained separate from generated narrative, with validation and analyst review before client use.
Onboard the deck a team needs
The visual Template Builder let an analyst import a PowerPoint, inspect slides and elements, bind charts and text boxes to reporting slots, assign slide roles, and adjust placement. Bindings could be copied from another template, and required mappings were validated before activation. The onboarding workflow connected data definitions and narrative choices to a template, with a supported runtime required to generate the report.
Frame the analysis around the business
Voice Lab exposed editable, versioned system prompts with rollback, prompt IDs for reporting pipelines, context-file uploads, and model settings by role. Project focus, additional context, the client or prospect relationship, services provided and business impact entered the narrative generation flow. Firm-capability context connected employee sentiment to Lockton’s advisory work, while editable prompts and team context let the interpretation fit a practice or division’s needs.
Give each text box a specific assignment
Beyond binding a text box to generated narrative, I built working per-element LLM instructions so different parts of a slide could request different analysis within the same business context. I disabled these advanced controls in the handoff release because the available training time did not cover them. This working state and release decision are my firsthand account; the recovered May 8 source verifies the hint editor but still marks its LLM connection as pending.
Put the operating controls within reach
Settings brought together prompt management, model and generation parameters, branding, color themes, workspace locations and diagnostics. Reusable templates and configurable narrative context let the reporting workflow evolve without redesigning every deck. API and other integration entries in the recovered interface include preview-only work and are not evidence that every proposed integration shipped.
Finish the Windows delivery
May 8, 2026 pilot packaging notes tie the surviving release to fixes for bundled resource paths, narrative context loading, HTTP-based LLM calls, lazy scientific-library imports and the application icon. The final release is a folder bundle containing an executable and its dependencies. Matching copies were recovered on separate devices; this establishes artifact continuity, not a new runtime acceptance test.
Hand over a capability
Voice Lab was the final app I created for Lockton. I installed it and trained my former manager to take over the workflow. As of my September 2026 account, the team still uses it to add employee sentiment analysis to client acquisition pitches. The delivery included the application, practical training and continuity for the work. The retained pilot runbook and Windows packaging instructions document setup, known limits and checks for the next analyst; they do not establish the date of the later installation and training.
Python · Tkinter · PyInstaller · PyWebView · Playwright / CDP · PowerPoint
Sources & scope
Recovered source and matching packaged UI resources establish the template builder, prompt versions, context uploads and reporting controls. The Windows executable was not run during this review. My account establishes installation, manager training, collection savings, continued use and working per-text-box instructions that I disabled for handoff; no quantified savings or sales uplift is claimed.
SourcesCollection and Toolkit archive · 2024–2026 · Py2EXE · inspected builder source · Voice Lab · implementation and Windows release · Packaged interface and reporting code · inspected · Author account · delivery and ongoing value · Author clarification · advanced instruction controls · Reporting and analyst handoff records · October 2026 review
- Collection and Toolkit archive · 2024–2026
- Platform setup material, dated development conversations, standalone scrapers/parsers, GUI iterations and v5.0.7 artifacts establish the progression from manual preparation to coordinated tooling.
- Py2EXE · inspected builder source
- The V4 Tkinter builder wraps PyInstaller and exposes packaging configuration. Its original creation date and use for any particular later release are not independently established.
- Voice Lab · implementation and Windows release
- Migration documentation, desktop source and May 8, 2026 pilot build notes connect the browser-capture and PowerPoint workflow to the surviving packaged app. Two recovered distributions contain the same 1,020 payload files after top-level renaming.
- Packaged interface and reporting code · inspected
- The packaged HTML interface, settings schema, slot catalog, prompt configuration and model-parameter file match the recovered source byte for byte. Source traces confirm template bindings, versioned prompts, context loading and project-specific narrative inputs. The interface was rendered offline with synthetic configuration; no EXE or generation backend was executed.
- Author account · delivery and ongoing value
- Installation, training of my former manager, avoided third-party collection fees and continued use in client acquisition were supplied firsthand in September 2026. No dollar amount or measured sales outcome is asserted.
- Author clarification · advanced instruction controls
- In September 2026 I confirmed that individual text-box instructions were operational, then disabled for the handoff release because there was insufficient training time. This is an author-reported working state; the recovered May 8 notes still list LLM consumption of element hints as pending.
- Reporting and analyst handoff records · October 2026 review
- Pipeline validation, editable charts, required template mappings, pilot runbook and packaged-deployment instructions. Historical development and acceptance gaps remain distinct from my later installation and training account.
The interfaces, diagrams, practice examples and fictional Northstar data above are original interactive illustrations. The packaged HTML settings interface was separately inspected offline with synthetic values; the Windows executable was not run. No original application code, client data or production screenshots are included here.
The per-text-box LLM capability is described from my firsthand account: it was working, then disabled for the handoff release because training time was limited. The recovered May 8 source verifies the element-hint editor but marks its LLM connection as pending; it does not independently verify that later working state.
*Third-party collection savings, installation, training and continued use are my firsthand account. No savings amount or client acquisition uplift is claimed. Continued use was reported in September 2026.
Build the tool.
Leave the capability.