Back to projectsProject PDF
Windows desktop tool

LeadClean

A Windows workspace for validating lead files, processing unique IDs through an approved API, and exporting results without losing the original rows.

Internal department toolDevelopment preview · v0.6Tauri · Rust · React · TypeScript · SQLCipher
My contribution

Desktop application development across the React interface and Rust-backed file workflow.

Interactive demo

A local CSV validation sample, separate from the private application.

Product walkthrough01 / 03
Validate the file before processing

Development preview of the actual application, shown with synthetic sample data before API processing.

Validate the file before processing
LeadClean validating a synthetic CSV: column mapping, duplicate and missing ID checks, masked preview, and processing controls
A small, working example

Catch the messy rows.
Before they become a job.

Try the validation step with editable sample data. This browser demo checks digits-only IDs; it does not run the desktop app or call a processing API.

Runs in your browser. Nothing you enter here is uploaded or saved.

A closer look at the result

Eight source rows. Every one accounted for.

The browser sample finds 5 ready IDs, 1 duplicate, 1 missing ID, and 1 invalid ID. Its downloaded report keeps all 8 source rows in order, including the duplicate and leading zeros.

Source rows retained
8
Unique IDs ready
5
Leading zeros preserved
00041

Reproducible validation example using the demo above. It does not run the desktop app’s API processing or measure large-file throughput.

Download the sample report (CSV)

The workflow, before and after.

The starting problem

An incoming file is a list of rows, not yet a reliable processing queue. Missing IDs, duplicates, and leading zeros need to be handled before any API request.

The implemented flow

Map the ID column, review validation, process unique IDs, and export with source rows preserved. An interrupted large CSV job waits for an explicit resume.

A workflow comparison, demonstrated with synthetic data. Company records, adoption figures, timelines, and business results are not published.

The challenge

CSV and spreadsheet files can contain missing, invalid, or duplicate IDs. Processing a large list also needs clear progress, safe credential storage, and a way to recover interrupted work.

What I built

  • A CSV and XLSX workflow with ID column mapping, validation totals, and masked previews before processing.
  • Unique-ID processing that preserves leading zeros, original row order, and duplicate rows in the final output.
  • A separate large CSV mode with a Rust-backed encrypted queue, checkpoints, and tray controls for pause, resume, and stop.
  • Encrypted job history, explicit exports, and optional credential storage in Windows Credential Manager.

Key implementation decisions

Validate before processing

Column mapping and masked previews expose missing, invalid, and duplicate IDs before a processing run begins.

Keep source rows intact

The workflow processes unique IDs while preserving leading zeros, original row order, and duplicate rows in the output.

Make recovery deliberate

Encrypted local checkpoints support recovery after interruption. Recovered work waits for an explicit resume instead of quietly starting again.

The result

A working development preview that brings file validation, controlled processing, and export into one desktop application. Large CSV jobs can be recovered after a restart and explicitly resumed.