LibreBooking
# Librebooking [](https://github.com/LibreBooking/librebooking/issues) [](https://github.com/LibreBooking/librebooking/commits) [](https://github.com/LibreBooking/librebooking/releases) [](https://github.com/LibreBooking/librebooking/blob/develop/LICENSE.md) [](https://github.com/LibreBooking/librebooking/stargazers) [](https://github.com/LibreBooking/librebooking/network) [](https://www.php.net/) [](https://www.mysql.com/)   [](https://github.com/LibreBooking/docker) [](https://github.com/LibreBooking/docker) [](https://discord.gg/4TGThPtmX8) [](https://github.com/LibreBooking/librebooking/wiki) β Star us on GitHub β it motivates us a lot! π₯ Join the community: [Discord discussion channel](https://discord.gg/4TGThPtmX8) . ## Table of Contents - [About](#-about) - [Features](#-features) - [Demo](#-demo) - [Screenshots](#-screenshots) - [Installation & Deployment](#-installation--deployment) - [Developer Documentation](#-developer-documentation) - [Configuration & Theming](#-configuration--theming) - [ReCaptcha](#-recaptcha) - [Community & Support](#-community--support) - [Contributing](#-contributing) - [Roadmap](#-roadmap) - [License](#-license) ## π About **LibreBooking** is an open-source resource scheduling solution. It provides a flexible, mobile-friendly, and extensible interface for organizations to manage resource reservations. The repository for LibreBooking is hosted on GitHub at <https://github.com/LibreBooking/librebooking>; the `develop` branch contains the latest code. LibreBooking is a fork of Booked Scheduler, based on Booked Scheduler's last open-source version released in 2020. Since then, LibreBooking has evolved significantly and diverged from the original project. ## β¨ Features - [x] Multi-resource booking & waitlists - [x] DataTables for advanced listings - [x] Role-based access control - [x] Quotas and credits for reservations - [x] Granular usage reporting - [x] Responsive Bootstrap 5 interface - [x] Custom themes and color schemes - [x] Plugin-ready architecture - [x] Outlook/Thunderbird integration through ics ## π§ͺ Demo A live demo instance of LibreBooking is available for testing: [Try the demo](https://librebooking-demo.fly.dev/Web/) | Role | Username | Password | | ----- | -------- | ----------- | | Admin | `admin` | `demoadmin` | | User | `user` | `demouser` | Note: This instance is public and **resets every 20 minutes** to ensure a clean environment. Startup might take a few seconds, so please be patient. ## πΈ Screenshots       ## π§ Installation & Deployment ### Manual Installation To run LibreBooking from a prebuilt release, your server needs: - PHP >= 8.2 with the extensions: ctype, curl, fileinfo, json, mbstring, mysqli, openssl, pdo, pdo_mysql, tokenizer, xml - Optional PHP extensions: bcmath (needed for Active Directory authentication), gd (image processing), ldap (LDAP authentication) - A web server like Apache or Nginx - MySQL >= 8.0 (2018) or MariaDB >= 10.6 (2021) - Composer (for managing PHP dependencies) - Git (optional, useful for cloning the repository or managing updates) For full setup instructions, see [INSTALLATION](https://github.com/LibreBooking/librebooking/blob/develop/docs/source/INSTALLATION.rst) ### Docker Deployment LibreBooking is available as a Docker container. See [LibreBooking Docker README](https://github.com/LibreBooking/docker) for complete setup. ```bash git clone https://github.com/LibreBooking/docker.git cd docker docker-compose up -d ``` ## π» Developer Documentation - See [docs/source/README.md](https://github.com/LibreBooking/librebooking/blob/develop/docs/source/DEVELOPER-README.rst) for developer notes. - See [docs/source/API.rst](https://github.com/LibreBooking/librebooking/blob/develop/docs/source/API.rst) for API notes. - See [docs/source/Oauth2-Configuration.rst](https://github.com/LibreBooking/librebooking/blob/develop/docs/source/Oauth2-Configuration.rst) for Oauth2 configuration. - See [docs/source/SAML-Configuration.rst](https://github.com/LibreBooking/librebooking/blob/develop/docs/source/SAML-Configuration.rst) for SAML configuration. - Codebase follows PSR-12 standards and GitHub Flow. ## π¨ Configuration & Theming For configuration options, see the [Configuration Guide](https://github.com/LibreBooking/librebooking/blob/develop/docs/source/CONFIGURATION.rst). Recent configuration highlights: - Change theme via `config.php`: ```php 'css.theme' = 'default'; ``` - Theme options: 'default', 'dimgray', 'dark_red', 'dark_green', 'french_blue', 'orange' - Customize `Web/css/librebooking.css` ## π ReCaptcha As of 09-Mar-2023, ReCaptcha integration updated to v3. Generate new keys for your domain if using ReCaptcha. ## π¬ Community & Support - [Discord](https://discord.gg/4TGThPtmX8) - [Wiki](https://github.com/LibreBooking/librebooking/wiki) - [Issues](https://github.com/LibreBooking/librebooking/issues) - [Discussions](https://github.com/LibreBooking/librebooking/discussions) ## π€ Contributing - Fork, file issues, suggest improvements. - Even non-coders can help by reporting bugs, testing, updating issues. - PRs welcome (docs, features, refactoring, fixes). - See CONTRIBUTING.md ## π‘ Roadmap _Work in progress β roadmap to be defined._ Want to suggest a feature? [Open an issue](https://github.com/LibreBooking/librebooking/issues) or join the [Discord discussion channel](https://discord.gg/4TGThPtmX8). ## π License This project is licensed under **GPL-3.0**. ## π Acknowledgments Forked from Booked Scheduler. Thanks to all contributors and the community. [Back to top](#librebooking)