Web App, Enterprise Software, Finance ManagementFeaturedClient: University of the Cape Coast (UCC) - Sasakawa Campus

Sasakawa Restaurant Service Request System

A comprehensive web application streamlining university catering service requests, approvals, invoicing, and financial tracking with role-based access control and automated workflow management.

Completed July 2025
View Live Site
Sasakawa Restaurant Service Request System

## Project Overview

The Sasakawa Restaurant Service Request System is a full-stack web application built for a university campus to modernize their catering service management. The platform replaces manual, paper-based processes with an efficient digital workflow that handles everything from initial service requests to payment tracking.

## The Challenge

The university's catering department was struggling with:

- Manual paper-based request processing causing delays and errors

- Lack of visibility into request status for department staff

- Inefficient approval workflows requiring physical document routing

- Difficult financial tracking and reporting for the finance office

- No centralized system for managing invoices and payments

- Missing audit trails for institutional compliance

## The Solution

I designed and developed a modern, role-based web application with three distinct user workflows:

For Requesters (Department Staff):

- Intuitive form for submitting catering requests with event details

- File upload support for additional documentation

- Real-time request status tracking

- Personal dashboard with request history and filtering

For Approvers (Department Heads):

- Dedicated approval queue with all pending requests

- Quick approve/reject actions with comment capability

- Email notifications for new requests requiring attention

- Overview of department spending and request patterns

For Finance Officers:

- Invoice generation and management system

- Payment recording with multiple payment method support

- Financial reporting and analytics

- Export functionality for accounting systems

## Technical Implementation

The application is built with a modern tech stack prioritizing performance, security, and maintainability:

Frontend Architecture:

- React 19 with TypeScript for type safety

- Vite for lightning-fast development and optimized builds

- Tailwind CSS for responsive, utility-first styling

- Framer Motion for smooth animations and transitions

- React Query for efficient server state management

- Clerk for secure authentication and user management

Backend Architecture:

- Node.js and Express with TypeScript

- PostgreSQL database for reliable data storage

- Prisma ORM for type-safe database operations

- Cloudinary for image and document management

- Nodemailer and Resend for transactional emails

- RESTful API design with comprehensive error handling

Key Features Implemented:

- JWT-based authentication with role-based access control

- Multi-step form with validation using React Hook Form and Zod

- Real-time notifications system (email and in-app)

- File upload handling with cloud storage integration

- Advanced filtering and search capabilities

- Responsive design for mobile and tablet devices

- Automated email workflows for status changes

- Excel export functionality for financial reports

- Database migrations system for version control

## Challenges Overcome

1. Complex Permission System:

Implemented a flexible role-based access control that dynamically shows/hides features based on user roles while maintaining security at both frontend and backend levels.

2. Multi-Step Approval Workflow:

Designed a state machine pattern to handle the complex lifecycle of requests (Pending → Approved → Invoiced → Paid) with proper transitions and validation at each step.

3. File Management:

Integrated Cloudinary for reliable file storage and delivery, implementing proper error handling and progress indicators for uploads.

4. Email Reliability:

Implemented a dual-provider email system (Nodemailer and Resend) with fallback mechanisms to ensure critical notifications are always delivered.

5. Performance Optimization:

Used React Query for intelligent caching and background updates, reducing unnecessary API calls and improving perceived performance.

## Results & Impact

- Reduced request processing time from days to hours

- Eliminated paper waste and manual data entry errors

- Provided complete audit trail for institutional compliance

- Enabled real-time financial tracking and reporting

- Improved user satisfaction with intuitive, modern interface

- Scalable architecture ready for future feature additions

## Deployment

The application is deployed using modern cloud infrastructure:

- Frontend: Vercel/Netlify with automatic deployments

- Backend: Vercel serverless functions

- Database: PostgreSQL on cloud provider

- File Storage: Cloudinary CDN

- Continuous deployment from Git repository

Project Gallery

Sasakawa Restaurant Service Request System screenshot 1
Sasakawa Restaurant Service Request System screenshot 2
Sasakawa Restaurant Service Request System screenshot 3
Sasakawa Restaurant Service Request System screenshot 4
Sasakawa Restaurant Service Request System screenshot 5
Sasakawa Restaurant Service Request System screenshot 6
Sasakawa Restaurant Service Request System screenshot 7
Sasakawa Restaurant Service Request System screenshot 8