A centralized management system for platform administrators to create, manage, and control restaurant administrator accounts across the Smart Restaurant ecosystem.
Technology Stack: React 19, TypeScript 5, Node.js 18+, PostgreSQL 14+
| Document | Description |
|---|---|
| User Guide | Complete guide for SuperAdmins including managing admin accounts, passwords, and access control |
| Setup Guide | Installation, environment configuration, and running the application |
| Architecture | System design, technology stack, and code organization |
| API Reference | API endpoints, request/response schemas, and authentication details |
Smart Restaurant SuperAdmin is a platform-level management system that provides SuperAdmins with the highest level of access to manage restaurant administrators across the entire Smart Restaurant ecosystem.
This application serves as the platform control center for managing administrators:
- Admin Management - Create, edit, and manage restaurant administrator accounts
- Access Control - Activate or deactivate admin accounts to control system access
- Password Management - Reset passwords with auto-generated secure credentials
- Activity Monitoring - Track last login times and account status
- Restaurant Assignment - View which restaurants each admin manages
- Multi-language Support - Full internationalization support for English and Vietnamese
| Capability | SuperAdmin | Admin |
|---|---|---|
| Access SuperAdmin System | Yes | No |
| Create/Manage Admin Accounts | Yes | No |
| Activate/Deactivate Admins | Yes | No |
| Reset Admin Passwords | Yes | No |
| Access Restaurant Dashboard | No | Yes |
| Manage Menu/Tables/Orders | No | Yes |
# 1. Clone and install
git clone <repository-url>
cd smart-restaurant-super-admin
# 2. Backend setup
cd server
npm install
# Configure server/.env (see Setup Guide)
npx prisma generate
# 3. Frontend setup (new terminal)
cd client
npm install
# 4. Run both
# Terminal 1: cd server && npm run dev
# Terminal 2: cd client && npm run devApplication URLs:
- Frontend: http://localhost:5175
- Backend API: http://localhost:3003/api
For detailed installation instructions, refer to the Setup Guide.
| Layer | Technologies |
|---|---|
| Frontend | React 19, TypeScript, Vite, Tailwind CSS, React Hook Form |
| Backend | Node.js, Express, PostgreSQL, Prisma ORM |
| Authentication | JWT, Passport.js, bcrypt |
| Features | Internationalization, password generation, admin lifecycle management |
For detailed architecture information, refer to the Architecture Guide.
smart-restaurant-super-admin/
├── client/ # React frontend (TypeScript)
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ │ ├── admin/ # Admin management components
│ │ │ ├── common/ # Shared components
│ │ │ └── layout/ # Layout components
│ │ ├── config/ # Configuration files
│ │ ├── contexts/ # React Context providers (Auth)
│ │ ├── hooks/ # Custom React hooks
│ │ ├── i18n/ # Internationalization setup
│ │ ├── locales/ # Translation files (en, vi)
│ │ ├── pages/ # Page-level components
│ │ │ ├── LoginPage.tsx # Login page
│ │ │ └── AdminManagementPage.tsx # Admin management
│ │ ├── services/ # API service layer
│ │ ├── styles/ # Global styles
│ │ ├── types/ # TypeScript type definitions
│ │ ├── utils/ # Utility functions
│ │ ├── App.tsx # Main application component
│ │ └── main.tsx # Application entry point
│ ├── public/ # Public static files
│ ├── eslint.config.js # ESLint configuration
│ ├── vite.config.ts # Vite build configuration
│ ├── tailwind.config.js # Tailwind CSS configuration
│ ├── tsconfig.json # TypeScript configuration
│ ├── package.json # Frontend dependencies
│ ├── Dockerfile # Production Docker image
│ └── nginx.conf # Nginx server configuration
│
├── server/ # Node.js backend
│ ├── src/
│ │ ├── config/ # Configuration files (database, JWT, etc.)
│ │ ├── controllers/ # Request handlers
│ │ ├── docs/ # API documentation (OpenAPI/Swagger)
│ │ ├── middleware/ # Express middleware (auth, validation)
│ │ ├── routes/ # API route definitions
│ │ ├── services/ # Business logic layer
│ │ ├── utils/ # Utility functions
│ │ └── server.js # Server entry point
│ ├── prisma/
│ │ ├── schema.prisma # Database schema definition
│ │ └── migrations/ # Database migration files
│ ├── eslint.config.js # ESLint configuration
│ ├── prisma.config.ts # Prisma configuration
│ ├── package.json # Backend dependencies
│ └── Dockerfile # Production Docker image
│
├── docs/ # Project documentation
│ ├── ARCHITECTURE.md # System architecture
│ ├── DATABASE_DESIGN.md # Database schema documentation
│ ├── SETUP.md # Installation guide
│ ├── USER_GUIDE.md # End-user documentation
│ ├── API_REFERENCE.md # API reference guide
│ └── guides/ # Additional guides
│
├── docker-compose.yaml # Docker Compose configuration
├── package.json # Workspace-level dependencies
├── commit-history.txt # Git commit history
└── README.md # This file
- Implementation Guides - Feature implementation and configuration guides
This application is part of the Smart Restaurant System, a comprehensive solution for modern restaurant operations developed as part of the Web Application Development Course at HCMUS.
Related Applications:
- Smart Restaurant Admin - Restaurant management dashboard for staff and administrators
- Smart Restaurant Customer - QR-based customer ordering interface
ISC License
Copyright 2026 Smart Restaurant SuperAdmin. HCMUS Web Application Development Course.