An open API service indexing awesome lists of open source software.

https://github.com/andrejkoller/sinai-frontend

🏢 Web app for managing office desk reservations with user authentication, admin dashboard, and department management.
https://github.com/andrejkoller/sinai-frontend

angular angular-material html scss typescript

Last synced: 9 days ago
JSON representation

🏢 Web app for managing office desk reservations with user authentication, admin dashboard, and department management.

Awesome Lists containing this project

README

          

# sinai frontend

Sinai Frontend is a comprehensive web application that enables organizations to manage office workplace reservations seamlessly. Built with Angular and featuring a clean Material Design interface, it provides both user and admin functionalities for a complete workplace booking solution.

## ✨ Features

- User Authentication - Secure login and registration system with JWT-based authentication
- Workplace Reservation - Easy-to-use interface for booking office desks and workspaces
- User Management - Admin dashboard for managing users and permissions
- Department Management - Organize workplaces by departments
- Workplace Administration - Create and manage workplace configurations
- Dashboard - Comprehensive overview of all reservations and statistics
- FAQ System - Built-in help and frequently asked questions
- Theme Support - Customizable themes for different user preferences
- Internationalization - Multi-language support (German/English)
- Real-time Updates - SignalR integration for live notifications
- Responsive Design - Works seamlessly on desktop and mobile devices

## 🛠️ Technologies Used

- Angular
- Angular Material
- Angular SSR
- Microsoft SignalR
- SCSS
- Angular HttpClient with custom interceptors
- ngx-toastr
- Jasmine & Karma

## 📋 Prerequisites

- Node.js (v18 or higher)
- npm or yarn
- Angular CLI

## 📦 Installation

1. Clone the repository

```bash
git clone https://github.com/yourusername/sinai-frontend.git
cd sinai-frontend
```

2. Install dependencies

```bash
npm install
```

3. Configure environment

- Update the API endpoint in `src/environments/environment.ts` for development
- Update `src/environments/environment.prod.ts` for production

4. Run the development server

```bash
npm start
```

Navigate to `http://localhost:4200/`.

5. Build the project for production (optional)

```bash
npm run build
```

## 🔌 API Integration

The application communicates with a backend API through services located in `src/app/services/`. Key services include:

- `auth.service.ts` - Authentication and authorization
- `reservation.service.ts` - Reservation operations
- `user.service.ts` - User management
- `department.service.ts` - Department operations
- `workplace.service.ts` - Workplace management

## 🔗 Related

- Backend Repository: [Sinai API](https://github.com/andrejkoller/sinai-api)

## 📸 Screenshots