Skip to content

Releases: tmdinosaurcenter/kiosk-guestbook

Enhanced Deployment Options & Updated Documentation

04 Apr 21:42

Choose a tag to compare

In this release, I have streamlined the deployment process by updating our Docker Compose instructions. Users can now deploy the application without rebuilding the Docker image using two convenient methods:

  • CLI Deployment: Easily run the app via Docker Compose by copying the provided example.docker-compose.yml and example.env files, then customizing them as needed.

  • Portainer Deployment: For those using Portainer, simply rename example.env to stack.env in the Docker Compose file to ensure proper environment variable loading.

Additionally, we've updated the project structure documentation to reflect the current repository layout and introduced configurable settings for the site title and logo via environment variables. These changes aim to improve flexibility and make configuration simpler for both new and existing users. Enjoy the enhanced deployment experience with version 1.1.0!

Full Changelog: 1.0.0...1.1.0

v1.0.0 - Initial Production-Ready Release

02 Apr 14:23
834c812

Choose a tag to compare

Overview

This release marks the first production-ready version of the Museum Visitor Guestbook, an internal web-based application designed for our museum visitor kiosk. The app allows staff to capture visitor details including first name(s), last name, email (optional), location, and a comment (revealed dynamically based on input validation).

Key Features

  • Dynamic Guestbook Form:

    • Collects visitor details such as first name(s), last name, email, and location.
    • The comment field is hidden by default and only appears when first name, last name, and location fields are filled with at least 3 characters.
  • Input Validation & Profanity Filtering:

    • Validates required fields and the format of the email address (if provided).
    • Implements a profanity filter using a banned words list (loaded from en.txt), ensuring that comments do not contain inappropriate language.
  • Robust Logging:

    • Logs key events, validation errors, and form submissions to aid in debugging and maintenance.
  • Containerization with Docker & Docker Compose:

    • The application is packaged in a Docker container using a production-grade Dockerfile that runs Gunicorn as the WSGI server.
    • Docker Compose orchestrates the container, uses environment variables from a .env file, and mounts a persistent volume for the SQLite database.
  • Data Export Utility:

    • Includes a guestbook_export.py script to export guest entries (now including comments) to a CSV file, useful for further analysis or integration with systems like Mailchimp.

Deployment & Environment

  • Intranet-Only Application:

    • This guestbook is designed to run exclusively on an internal network, enhancing data security and privacy.
  • Environment Configuration:

    • Configuration values, such as the database path and port, are managed through a .env file.
    • A persistent volume is configured via Docker Compose to ensure that the SQLite database retains data across container rebuilds.

What's Changed

New Contributors

Full Changelog: https://github.com/tmdinosaurcenter/kiosk-guestbook/commits/1.0.0