Tidied up the HTML structure across multiple template files to enhance code readability and maintainability. This involved mainly formatting changes like re-indenting, consolidating meta tags, and simplifying element structures.
No functional changes were made. These changes aim to improve the ease of future edits and reviews.
Introduce support for themes by adding a `theme` parameter to the site generation process and as an argument to the main script. Created separate CSS files for different themes and adjusted the structure to accommodate the style changes. Also, updated the use of assets with new SVG images and logos.
Refactored HTML templates to dynamically select the theme and updated path references to images accordingly. Improved the development experience by adding a default "plain" theme and enhancing command-line argument parsing for theme selection.
Closes#7
Replaced "code-fork" icon with "git-branch" icon to better reflect the concept of repository branches and forks. This change improves clarity and visual consistency in the interface.
Enhanced the UI to distinguish forked services by adding a new `.fork` class with corresponding SVG styles. Updated HTML template to include links and icons for both homemade and forked services, improving service metadata visibility and user navigation.
Updated the dropdown button to occupy full width for better responsiveness and improved UX, particularly on smaller screens. This change ensures a consistent layout regardless of device size.
Added a CSS rule to ensure button elements inside the button-wrapper class have consistent vertical spacing except for the last child. This improves uniformity in the UI layout. Updated corresponding HTML to use the newly styled button-wrapper class for proper spacing and alignment.
Improved the styling of homemade icons by setting explicit height and
width, ensuring they are consistently sized. Refined the layout of the
accordion header by adding flex display and centering alignment for
better visual alignment. Introduced new icon container styles to
standardize icon presentation and spacing.
These changes aim to provide a more polished and uniform user interface
experience, addressing inconsistencies and enhancing visual clarity.
Augmented the services JSON with "tiny_description" field for each service to provide a brief overview. This will enhance the user experience on the index page by displaying concise descriptions alongside service names in the accordion headers.
Improves service discoverability and user interaction by giving quick service context.
Migrated accordion elements from a Bootstrap-based approach to
using the native HTML <details> and <summary> tags for better
accessibility and reduced reliance on third-party libraries.
Enhanced CSS for the accordion components to style hover effects
and manage open states effectively. Simplified icon handling
within accordion bodies.
Replaced the services list layout with a new accordion component. This allows for a more organized and user-friendly display of services, facilitating better content management and improved user interaction. The CSS was updated to include styles for the accordion structure.
Implemented a "homemade" badge to distinguish services developed by Private.coffee from third-party services. Enhanced service data with a "homemade" flag and updated the frontend to display a special icon when this flag is set. This provides users with clear visual feedback, enhancing transparency about service origins.
Adjusted the src attribute of the logo image to remove the leading slash. This change ensures compatibility with relative URL loading, improving resource accessibility in deployed environments.
Replaced "Pride" references with "Privacy" to revert pride month styling. Updated header background to primary gradient and replaced SVG with an image for improved maintainability. The changes aim to enhance visual appeal and clarity of the site's purpose.
Enhanced the UI by adding dropdown menus to service links. This includes new styles for dropdowns in CSS and corresponding changes in the HTML templates. Also, extended `services.json` to support alternative links with Tor options for better accessibility.
Adjusted the maximum width for service cards to improve layout on larger screens.
- Added '.bg-pride-gradient' class to CSS for a colorful background gradient celebrating Pride Month, replacing the previous primary gradient. This change visually signifies our support for the LGBTQ+ community.
- Replaced the header logo with a detailed vector image to enhance visual engagement.
- Reformatted the HTML structure to improve code readability and maintainability. This involves adjusting indentation and whitespace, making the code easier to follow and modify.
- Updated section headers and content organization in the index page to enhance information flow and user engagement.
This update aligns with the initiative to celebrate and acknowledge Pride Month, reflecting our commitment to inclusivity. Additionally, the introduction of a more detailed logo and the restructured HTML seeks to enhance overall site aesthetics and user experience.
Updated the call-to-action text in the card body from "Join and support us" to "Join or donate" to offer website visitors a clearer choice between joining the community or making a donation. This change aims to streamline user decisions and potentially increase conversions by directly addressing the primary actions users can take to support the open-source community.
Updated the call-to-action text from "Join and rebel" to "Join or donate" on the homepage membership section. This change aims to communicate a more inclusive and supportive stance towards potential members, encouraging broader participation in the open source community. The adjustment reflects a strategic shift to emphasize collaboration and support over confrontation.
Implemented a new template filter in Flask to dynamically render SVG icons, allowing for cleaner HTML templates and easier icon management. Added `coffee` and `envelope` SVG icons to the project's asset directory. This change not only streamlines the incorporation of new icons but also enhances the maintainability of the codebase by centralizing icon resources and reducing HTML clutter. Modified existing HTML templates to use this new dynamic icon rendering method, replacing hard-coded SVG and img tag icon implementations with the newly created template filter.
This update significantly improves the way icons are handled throughout the application, providing a more scalable and efficient approach to managing and displaying graphical elements.
Updated `services.json` to include icon data for better visual identification of services. Also, removed unused services (Nitter and Proxigram) to streamline service offerings and improve maintainability. In `index.html`, amended the template to dynamically display these icons, enhancing the UI/UX. This change makes the service list more visually appealing and intuitive, directly linking visual cues to services for quicker recognition.
Additionally, this update contributes to a cleaner codebase by removing references to services no longer in use, thus improving code quality and reducing potential confusion regarding supported services.
Improved the website's responsiveness by refining the CSS for navigation and general layouts, ensuring a better user experience on devices with a maximum width of 768px. Revised the CSS to introduce clearer sections for general and responsive styles, making the stylesheet easier to navigate and maintain.
Additionally, updated HTML templates to remove query strings from asset references, promoting better caching practices. This change also includes minor text normalization for consistency in presentation, specifically in branding elements.
The alterations aim to provide a more uniform and accessible interface across various device sizes, focusing on mobile-first design principles. By cleaning up asset references, the website's loading times and cacheability are expected to improve, further enhancing user experience.
This update introduces improved responsiveness for mobile devices, scaling down font sizes for the '.special-header' within 'h2' elements and the standalone '.special-header' class. The adjustments ensure better readability and experience on smaller screens. Alongside, the commit revamps the primary button and text styles in the CSS, aligning with the theme's aesthetic enhancements. These changes contribute to a more cohesive visual identity and improved user interaction across various device types.
In addition, minor HTML tweaks enhance navigability and accessibility. Specifically, the Matrix link in 'index.html' is now clickable, directing users to the relevant chat platform, thus improving user engagement and connectivity. A missed update in the 'base.html' introduces a potential placeholder for additional navigation elements, suggesting a direction for future UI/UX improvements.
Revised the primary theme color to a more vibrant shade and adjusted related style variables for consistency across the UI. This change enhances the visual appeal and user experience by introducing a fresher, more engaging color palette. Updated variables include primary, secondary, success, info, warning, and danger colors along with their associated text, background, and border utilities to ensure coherence throughout the application's design.
Swapped the listings for Invidious and Piped, including their descriptions and status, to reflect current service offerings and operational status accurately. Enhanced the UI layout in the base template for better navigation and clarity in service support actions. Membership and donation information has been expanded to include details on statute access, association joining methods, and legal requirements for data storage, emphasizing transparency and community involvement. Privacy policy updates include clarified data collection practices, usage specifics, and storage details, aligning with legal standards and user expectations. Also, terms of service now include provisions against harassment, aligning with community guidelines and safety.
These changes aim to improve user experience, ensure up-to-date information, and highlight the organization's commitment to privacy, transparency, and community safety.
Reworked service configuration to allow individual services to be conditionally excluded from the main index, increasing the flexibility of the display. Configuration files have been restructured and moved into appropriate subdirectories to improve project organization.
- Added `exclude_from_index` flags to all services within `services.json` to facilitate granular control over their visibility on the index page.
- Modified the `index.html` template to respect the new `exclude_from_index` setting, thus excluding specified services from being listed on the index page.
- Migrated `Caddyfile` and `privatecoffee.ini` to `contrib` directory for better separation of project contributions and core configuration files.
This update enhances the site's privacy features and enables easier navigation by allowing selective service display.
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.
Adjust the dropdown button's color in the index page to reflect service status dynamically. Buttons now show as 'btn-primary' when the service is operational ('OK') and 'btn-danger' when it isn't, improving visual feedback for users.
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.