OpenGuestbook/README.md

2.6 KiB

📖 OpenGuestbook

Human coded License: GNU General Public License v3.0

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.

Features

  • No login required
  • No database required
  • Limited total comments per day.
  • Privacy Friendly: No tracking, no cookies, AD blocker friendly.
  • Notification support via ntfy.sh!

Deployment

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

For production, running via Docker Compose is recommended. 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 to enable notificatons.

Create docker-compose.yml

version: '3.8'
services:
  guestbook:
    build: .
    container_name: OpenGuestbook
    restart: always
    ports:
      - "5000:5000"
    volumes:
      - ./guestbook_data:/OpenGuestbook/guestbook # Persist comments on host to make it easily reachable
    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!
      - NTFY_TOPIC=<ntfy-topic> # for psuh notification support (optional)

build & run container with:

docker compose up -d --build

and your guesbook server should be up and running on port 5000 on your machine!

Front-end Script