Skip to content

About

Meeting Room Booking System A modern, open-source meeting room booking system with a FastAPI backend and a Streamlit frontend. Designed for teams and organizations to easily manage room reservations, send calendar invites, and receive email notifications.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

Meeting Room Booking System

A modern, open-source meeting room booking system with a FastAPI backend and a Streamlit frontend. Designed for teams and organizations to easily manage room reservations, send calendar invites, and receive email notifications.


Features

  • Room booking and management
  • User authentication (admin and regular users)
  • Email notifications with calendar invites (ICS attachment and Google Calendar link)
  • Admin panel for managing rooms, users, and email settings
  • Data backup and health check endpoints
  • Modern, responsive UI with light/dark mode
  • Dockerized for easy deployment

Quick Start

1. Clone the Repository

git clone https://github.com/yourusername/meeting-room-booking.git
cd meeting-room-booking

2. Run with Docker Compose (Recommended)

docker-compose up --build

3. Run Manually (Local Development)

Backend (FastAPI):

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn app:app --reload

Frontend (Streamlit):

streamlit run streamlit_app.py

Configuration

  • Email: Set up SMTP settings in the Admin Panel after first login.
  • Admin User: The first user is created automatically (see login screen for details).
  • Data: All data is stored in the data/ directory as JSON files. Default rooms are auto-generated if missing.
  • Environment Variables:
    • API_BASE_URL (for frontend, default: http://localhost:8000)
    • SECRET_KEY (for backend, optional: auto-generated if not set)

How to Contribute

  1. Fork this repo and create your feature branch (git checkout -b feature/YourFeature)
  2. Commit your changes (git commit -am 'Add new feature')
  3. Push to the branch (git push origin feature/YourFeature)
  4. Open a Pull Request

Security & Disclosure

  • Do not store real credentials in the repo.
  • For production, use secure SMTP credentials and set a strong SECRET_KEY.
  • If you discover a security issue, please open an issue or contact the maintainers.

License

This project is licensed under the MIT License. See LICENSE for details.

About

Meeting Room Booking System A modern, open-source meeting room booking system with a FastAPI backend and a Streamlit frontend. Designed for teams and organizations to easily manage room reservations, send calendar invites, and receive email notifications.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages