2025-09-03 14:47:54 -04:00
|
|
|
# Numinar Frontend
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
This is the frontend for the Numinar conference room booking system. It is a React application using TypeScript, Material-UI, and a REST API backend.
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
## Features
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
- View available conference rooms and their equipment
|
|
|
|
|
- Book rooms for specific times and invite users
|
|
|
|
|
- Real-time updates via Server-Sent Events (SSE) or polling
|
|
|
|
|
- Responsive UI with Material-UI components
|
|
|
|
|
- Centralized logging with loglevel
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
## Development
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
### Install dependencies
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
```sh
|
|
|
|
|
yarn install
|
|
|
|
|
```
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
### Start the development server
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
```sh
|
|
|
|
|
yarn start
|
|
|
|
|
```
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
The app will be available at [http://localhost:3000](http://localhost:3000).
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
### Run tests
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
```sh
|
|
|
|
|
yarn test
|
|
|
|
|
```
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
### Build for production
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
```sh
|
|
|
|
|
yarn build
|
|
|
|
|
```
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
## Environment Variables
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
- `REACT_APP_API_URL` - Base URL for the backend API (default: `http://localhost:8000`)
|
|
|
|
|
- `REACT_APP_LOG_LEVEL` - Logging level (`debug`, `info`, `warn`, `error`)
|
|
|
|
|
- `REACT_APP_BUSINESS_START` - Business hours start (default: `08:00`)
|
|
|
|
|
- `REACT_APP_BUSINESS_END` - Business hours end (default: `18:00`)
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
## Logging
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
All logs should use the centralized logger (`src/utils/logger.ts`). Do not use `console.log` directly.
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
## Code Style
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
- Use TypeScript and React best practices
|
|
|
|
|
- Document all components and exported functions with JSDoc or TypeScript doc comments
|
|
|
|
|
- Avoid use of `any` and `@ts-ignore` unless absolutely necessary
|
2025-08-20 21:04:37 -04:00
|
|
|
|
2025-09-03 14:47:54 -04:00
|
|
|
## License
|
|
|
|
|
|
|
|
|
|
MIT License
|