← Back to ProjectsJanuary 2020 - March 2020
Client Management & Invoicing System
JavaScriptTypeScriptReactReduxReact HooksReact TableGraphQLOAuthMaterial UIHTML5CSS3
Overview
The system brought client records, time tracking, and invoicing into one web application. Working in a five-person team, I focused on the React frontend, building client and invoice interfaces, implementing GraphQL CRUD operations, developing a reusable React Table module, adapting API responses for the UI, and supporting both email/password and social OAuth authentication.
Key Responsibilities
- ▹Building reusable React and Material UI components for client accounts, time tracking, and invoice management
- ▹Implementing GraphQL queries and mutations for creating, updating, and deleting client accounts and invoices
- ▹Mapping raw GraphQL responses into the structures expected by UI components and page templates
- ▹Building a reusable React Table module with sorting, filtering, search, and pagination for client and invoice records
- ▹Implementing email/password authentication and frontend OAuth flows for Google and regional social platforms
- ▹Managing shared application state with Redux and using React Hooks for local component behavior
Achievements
Delivered the core frontend flows for managing clients, tracking time, and creating invoices
Created a shared React Table module that gave client and invoice views the same search, sorting, filtering, and pagination behavior
Added Google and regional social sign-in alongside email/password authentication, giving users multiple ways to access their accounts