Back to Projects
Client ProjectEnterprise2022

Enterprise Management System

Tomaho Soft needed a unified interface for accounting, warehouse, and operations instead of scattered tools. I contributed to a React-based enterprise platform that brings these workflows into one place with consistent UX and reusable components. Improved day-to-day operations for staff and reduced context-switching. Built with React, Redux-Saga, Styled Components, Formik, and Yup.

Enterprise Management System
ReactJSRedux-SagaStyled ComponentsFormikYup
Client project — code confidential

The Problem

Staff were switching between separate accounting, warehouse, and operations tools with inconsistent UX, which slowed down routine workflows and made training new staff harder.

Challenges

  • Bringing three previously separate workflows into one consistent UI without breaking users' existing habits
  • Handling complex async flows (multi-step approvals, stock updates) predictably across the app
  • Building a shared component library while the product was still actively evolving requirements

Key Decisions & Trade-offs

Redux-Saga for async orchestration

Warehouse and accounting flows involve multi-step, conditional side effects (e.g. stock check → approval → ledger update); sagas made those sequences explicit and testable compared to thunk-based ad-hoc chains.

Formik + Yup for all forms

Consistent validation UX across accounting and warehouse forms reduced the amount of custom validation code duplicated per module.

Results

  • Reduced context-switching for staff by consolidating three workflows into one consistent interface
  • Reusable component library shortened the time to ship new modules later in the project

Lessons Learned

  • Investing early in a shared component library paid off once the product scope expanded — retrofitting consistency later is much more expensive
  • Redux-Saga is powerful but has a real learning curve for teammates; clear conventions for saga structure mattered as much as the library choice itself