Releases: tmdinosaurcenter/kiosk-guestbook
Enhanced Deployment Options & Updated Documentation
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
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
.envfile, and mounts a persistent volume for the SQLite database.
-
Data Export Utility:
- Includes a
guestbook_export.pyscript to export guest entries (now including comments) to a CSV file, useful for further analysis or integration with systems like Mailchimp.
- Includes a
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
.envfile. - A persistent volume is configured via Docker Compose to ensure that the SQLite database retains data across container rebuilds.
- Configuration values, such as the database path and port, are managed through a
What's Changed
- Bump flask from 2.1.1 to 2.2.5 by @dependabot in #1
New Contributors
- @dependabot made their first contribution in #1
Full Changelog: https://github.com/tmdinosaurcenter/kiosk-guestbook/commits/1.0.0