# Product

<!-- impeccable:product-schema 1 -->

## Platform

web

## Users

- Restaurant administrator: manages operations, staff records, HRM configuration, attendance, holidays, payroll, and performance.
- Owner or manager: reviews restaurant, financial, and workforce performance.
- Cashier: uses operational and payroll capabilities only when granted through the existing permission system.
- Waiter and kitchen staff: retain their existing login roles and operational workflows when those deployment features are enabled.
- Customer: browses the public restaurant site and submits orders or reservations.

## Product Purpose

Raithane Daure Chulo is an integrated restaurant website, POS, operations, inventory, accounting, and workforce-management system. It provides one dependable record for restaurant service, money, stock, staff identity, attendance, payroll, and performance.

## Operating Context

The system is used during daily restaurant operations in Nepal. Restaurant business days may differ from calendar days, money is recorded in Nepalese rupees, and date-sensitive reporting follows Nepal time. Administrators work primarily in the protected web dashboard; staff may use role-specific operational screens when enabled.

## Capabilities and Constraints

- PostgreSQL is the production database; SQLite is supported as the development fallback.
- Existing employee IDs are user IDs and remain authoritative for authentication, orders, bills, wastage, payroll, advances, and performance history.
- Existing payroll payments, salary advances, deductions, and accounting journals must remain compatible and auditable.
- HRM adds departments, designations, staff assignments, daily attendance, and restaurant-wide holidays around the existing employee and payroll models.
- Attendance supports Present, Absent, Leave, and Half-day, with optional check-in, check-out, and notes.
- Version one does not include shift scheduling, overtime, or leave-approval workflows.
- HRM management is admin-only. Existing cashier payroll permissions remain unchanged.
- Destructive historical rewrites are not allowed; linked staff should be deactivated when deletion would damage operational history.
- Node.js 22 is required for the application runtime.

## Brand Commitments

- Product and restaurant name: Raithane Daure Chulo.
- Preserve the incumbent admin interface, terminology, responsive behavior, and icon system when extending operational surfaces.

## Evidence on Hand

- Existing product requirements and constraints: `docs/PRD.md`.
- Existing business rules: `docs/BUSINESS_LOGIC.md`.
- Existing employee administration: `app/admin/employees/page.jsx` and `app/api/admin/employees/route.js`.
- Existing payroll and accounting integration: `app/admin/payroll/page.jsx`, `app/api/admin/payroll/route.js`, and `lib/payroll.js`.
- Existing POS-derived employee performance: `app/admin/employee-performance/page.jsx` and `lib/payroll.js`.
- Existing grouped admin navigation: `components/admin/admin-layout.jsx`.

## Product Principles

1. Preserve operational history and existing staff identities.
2. Derive reports from auditable source records rather than editable totals.
3. Keep daily restaurant administration fast, legible, and compatible with existing flows.
4. Add HRM capabilities incrementally without weakening payroll, accounting, authentication, or permissions.
5. Use Nepal-local dates and restaurant business-day context consistently.

## Accessibility & Inclusion

Administrative workflows must remain keyboard accessible, responsive on mobile and desktop, and communicate status without relying on color alone.
