2026-01-29 13:02:44 -06:00
# 📖 OpenGuestbook

[](https://www.gnu.org/licenses/gpl-3.0.en.html#license-text)
2026-01-28 16:03:46 -06:00
2026-03-29 14:17:57 -05:00
OpenGuestbook is a self-hosted lightweight open-source Guestbook for small static websites made using python & flask. OpenGuestbook does not use a database or an admin panel for managing entries. Instead it saves each guestbook entry as a file with a human readable format in a `/guestbook` folder in your server. The comments can be moderated by deleting or editing files manually.
2026-01-29 13:02:44 -06:00
## Features
- No login required
- No database required
- Limited total comments per day.
- Privacy Friendly: No tracking, no cookies, AD blocker friendly.
2026-03-29 14:17:57 -05:00
- Notification support via ntfy.sh!
2026-01-29 13:02:44 -06:00
## Deployment
2026-03-29 14:17:57 -05:00
OpenGuestbook comes in two parts, a backend that needs to be hosted on a server, and a JS file that can be embedded directly on your website.
### Deployment with Docker
2026-01-29 13:02:44 -06:00
For production, running via Docker Compose is recommended.
2026-01-29 15:00:25 -06:00
ssh in to your server and clone the repository:
```
git clone https://code.gorkyver.com/Gorkem/OpenGuestbook.git
```
get in directory and create docker-compose.yml:
```
cd OpenGuestbook
nano docker-compose.yml
```
Replace` < https: // yourwebsite . com > ` with your static website url and `<ntfy-topic>` with your [ntfy.sh topic ](https://docs.ntfy.sh ) to enable notificatons.
2026-03-29 14:17:57 -05:00
#### Create docker-compose.yml
2026-01-29 13:02:44 -06:00
```yaml
version: '3.8'
services:
guestbook:
build: .
container_name: OpenGuestbook
restart: always
ports:
- "5000:5000"
volumes:
2026-01-29 15:00:25 -06:00
- ./guestbook_data:/OpenGuestbook/guestbook # Persist comments on host to make it easily reachable
2026-01-29 13:02:44 -06:00
environment:
- FRONTEND_URL=< https: // yourwebsite . com > # if a frontend url is not provided the app will default the allow all utl's which is not recommended!
2026-01-29 15:00:25 -06:00
- NTFY_TOPIC=< ntfy-topic > # for psuh notification support (optional)
```
build & run container with:
```
docker compose up -d --build
2026-01-29 13:02:44 -06:00
```
2026-01-29 15:00:25 -06:00
and your guesbook server should be up and running on port 5000 on your machine!
2026-01-29 13:02:44 -06:00
2026-01-29 15:00:25 -06:00
### Front-end Script
2026-03-29 14:17:57 -05:00