Skip to content

IN4300-Embedded-Systems-Project/B22_Group06

Repository files navigation

B22 Group 06 - Display Management System

A comprehensive display management system for organizing rooms, schedules, announcements, and floor information with admin control and real-time display kiosks.

Documentation

Tech Stack

  • Frontend: Next.js 15, React 19, TailwindCSS
  • Backend: Next.js API Routes, Socket.io
  • Database: PostgreSQL 16, Prisma ORM
  • Authentication: NextAuth
  • Deployment: Docker, Docker Compose

Project Structure

.
├── server/              # Main Next.js application
│   ├── src/
│   │   ├── app/        # Next.js pages & components
│   │   ├── components/ # React components
│   │   └── lib/        # Utilities & middleware
│   ├── prisma/         # Database schema & seeds
│   └── public/         # Static files
├── pi-node/            # Raspberry Pi display setup
└── docker-compose.yml  # Docker services

Features

Admin Dashboard - Manage floors, rooms, schedules, and announcements
Real-time Updates - Socket.io for live display updates
Authentication - Secure admin access with NextAuth
Floor Management - Organize rooms by floors
Schedule Display - Show room schedules in real-time
Announcements - Post announcements across displays
Display Kiosks - Raspberry Pi integration for automatic displays

Quick Setup

# Server Setup
cp .env.example .env                    # Configure environment
docker-compose up --build               # Start all services
docker-compose exec server pnpm db:seed # Seed database with initial data

# Raspberry Pi Node Setup
cd B22_Group06/pi-node                  # Navigate to pi-node directory
chmod +x setup.sh                       # Make setup script executable
sudo ./setup.sh                         # Run setup (requires sudo for system services)

About

Display Management System

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors