Updated the organization's name to include its full title "Verein zur
Förderung von Privatsphäre und digitaler Souveränität" and added the
Central Register of Associations (ZVR) Number across legal, privacy, and
terms templates to comply with disclosure requirements. Reformatted
content for better readability, ensuring consistent paragraph line
breaks and removing redundant whitespaces. These changes aim to enhance
transparency regarding the website's managing entity and make the policy
texts more accessible to users.
Implemented a shared base HTML template to DRY up the markup across the service’s various pages, including the index, legal, privacy, and terms pages. This centralizes common elements like headers, footers, and imports, facilitating easier updates and consistency in design across the platform. Existing content from these individual pages is now extending the base template, adhering to best practices in templating and reducing code duplication.
Refactored the website to serve dynamic content using Flask, replacing static HTML pages. This allows for the centralized management of service data through a JSON file. Optimizations include:
- Added a .gitignore file to exclude Python and Flask-specific temporary files.
- Migrated static assets into an organized directory structure to facilitate Flask's static file serving.
- Removed redundant HTML files and created Flask template versions with dynamic content rendering.
- Introduced Caddy server configuration for the new Flask architecture, including headers for security and CORS policy, and reverse proxy settings for route handling.
With these changes, website maintenance and updates are simplified, allowing for service information to be updated in a single location (`services.json`), which then propagates to the user-facing pages automatically.