03 · Quislex, legal-tech · PurpleTalk
SUN25
Full stack replacement of a 15-year-old Excel system with React workflows that keep Excel's behaviour.
Context
Quislex ran operations across several departments on a 15-year-old Excel system. SUN25 moves those workflows into a web application. People keep the spreadsheet behaviour they know, and the logic moves into services.
My role
Full stack: the React workflows and the NestJS services behind them.
Architecture
Architecture, left to right. Users: 7+ departments → Frontend: React SPA · 25+ workflows → Services: NestJS + TypeORM → Data: SQL Server.
Key decisions
- 01
Syncfusion EJ2 to stay close to Excel
Formulas, protected cells and validation come from the spreadsheet component, so the new screens reach ~95% parity with Excel and people keep their habits.
- 02
Stored procedures into NestJS + TypeORM services
Business logic moves out of SQL Server into NestJS services. It is simpler to maintain, and the APIs got faster.
- 03
Role-based access and a Draft → Review → Approved flow
Views and actions follow each department's role. State-based routing moves a sheet through Draft, Review and Approved and improves coordination between departments.
Results
- ~95% Excel parity across 25+ React workflows.
- Manual operations cut by ~40%.
- APIs ~30% faster after the move to NestJS + TypeORM.
- Initial load under 2s, and a bundle ~35% smaller, through lazy loading, code splitting and throttled API calls.
Stack
- React
- Syncfusion EJ2
- NestJS
- TypeORM
- SQL Server