React + Electron + Node.js Desktop Toolkit
Internal QA desktop tool automating regulated study workflows. Electron pairs a React renderer with Node services to pull jobs from secure shares, validate CSV/XLSX files in real time, preview PDFs, and ship signed builds per environment.

Overview
An internal Electron desktop toolkit that automates QA workflows for regulated clinical study data. The renderer runs a React + Tailwind UI, while a Node main process owns file I/O against secure network shares, signed update channels per environment, and shell-level workflow execution.
Real-time CSV and XLSX validation runs through a streaming pipeline built on PapaParse and xlsx, with rule schemas authored in JavaScript and statically analyzed via acorn so reviewers can see exactly what each rule does. PDF previews render inline next to the validation results, so QA never has to leave the app.
Builds are produced per environment with code signing and auto-update wired in, and the renderer talks to the main process through a typed IPC layer so the same React components stay portable to a future web version.
Stack
- React
- Electron
- Node.js
- Vite
- TypeScript
- Tailwind CSS
- Vitest
- @tanstack/react-query
- @tanstack/react-table
- axios
- xlsx
- PapaParse
- acorn
- acorn-walk
- React Toastify