- Updated various dependencies in package.json and package-lock.json for improved performance and security.
- Changed Cross-Origin-Embedder-Policy from 'require-corp' to 'credentialless' in server.js and nginx.conf for better compatibility.
- Enhanced Content-Security-Policy to include specific domains for script and connect sources.
- Added brand information to translations for multiple languages, improving localization and user experience.
- Introduced a new BrandMarquee component in the homepage layout to showcase brands effectively.
- Updated the layout structure to utilize a new PageLayout component for better organization.
- Introduced new Hero, Content, and CallToAction components to improve the visual presentation and user engagement.
- Added glassmorphism styles for enhanced aesthetics and readability.
- Implemented accessibility features, including a "Skip to main content" link for improved navigation.
- Refactored the RocketChat livechat initialization to remove unnecessary console logs, enhancing performance and user experience.
- Added rehype-sanitize plugin to the markdown configuration for improved security against XSS attacks.
- Updated environment variables in the codebase to include new configurations for SMTP and monitoring.
- Implemented secure headers in server and Nginx configurations to bolster security.
- Refactored email handling to prevent spoofing by ensuring safe sender addresses.
- Improved localization by updating language persistence and button components for better user experience.
- Enhanced the uptime API and contact form with better error handling and logging practices.
- Updated dependencies in package.json and package-lock.json for better performance and security.
- Updated the Logo component to improve accessibility and visual design, replacing SVG elements with structured HTML and CSS for better responsiveness and styling.
- Introduced a new translations interface for applied skills, adding detailed descriptions and links for various skills across multiple languages.
- Enhanced the about me page to include a new section for applied skills, integrating the updated translations and improving the overall user experience.
- Introduced a new configuration for response time smoothing to enhance the accuracy of ping data.
- Cleaned up the code for clarity and maintainability while preserving existing functionality.
- Enhanced server startup message to include dynamic protocol and domain based on the environment (production or development).
- Updated translation references from GitHub to Gitea across multiple languages for consistency.
- Refactored layout and metadata in Astro components to utilize SITE configuration for URLs, ensuring accurate site links.
- Cleaned up unused code in the layout file and removed commented-out sections for better readability.
- Added text-shadow to primary buttons for improved visibility in light mode.
- Updated secondary button styles with specific light mode enhancements, including color, border, and background adjustments.
- Introduced light mode fixes for secondary CTAs, ensuring better visibility and user experience.
- Refined styles for CTA buttons to enhance their appearance and interaction in light mode.
- Introduced a new spamReview property in the Form interface to handle manual review requests for messages flagged as spam.
- Updated the Form component to display a spam warning and a manual review form with dynamic labels and placeholders based on translations.
- Enhanced the Tailwind CSS styles for responsive subtitles across various components.
- Added corresponding translations for the spam review feature in English, Dutch, German, and French, ensuring consistency and clarity in messaging.
- Updated various components to integrate the new spamReview functionality, improving user experience and interaction.
- Improved the formatLocalTime function to handle various date formats and ensure accurate timezone conversion.
- Updated the ensureUTC function to check for ISO format and append 'Z' for UTC interpretation when necessary.
- Changed the link to the Focused YouTube script on Greasy Fork to the correct URL.
- Removed the unused GitHub link from the component for cleaner code.
- Removed the duplicate development link from the header.
- Added a new link for 'Focused YouTube' to the navigation.
- Sorted the links alphabetically for better readability.
- Changed prerendering setting to true for improved performance.
- Implemented client-side language detection using cookies and browser settings.
- Added a redirect mechanism to the language-specific About Me page based on detected language.
- Included a fallback for users without JavaScript support.
- Upgraded TypeScript dependency from 5.7.3 to 5.8.3 for improved type checking and features.
- Modified ContactForm component to include a hidden input for the domain, capturing the current hostname.
- Updated API contact handling to log and utilize the domain information in email notifications.
- Refactored email sending functions to conditionally include the domain in the sender's address for better context.
- Removed localStorage fallback from CookieBanner, simplifying consent management.
- Refactored manual review email handling in the Contact API to utilize HTML templates for better structure and security.
- Enhanced email content generation by escaping HTML special characters and using template files for dynamic data insertion.
- Added CSRF token handling in the ContactForm for enhanced security.
- Introduced a feedback div for displaying form submission results instead of alerts.
- Updated the CookieBanner to include ARIA roles and improved focus management for better accessibility.
- Refactored manual review email handling to escape HTML special characters, enhancing security.
- Updated the ContactForm component to include labels and aria-describedby attributes for better accessibility.
- Improved the Button component by conditionally adding aria-labels based on text input.
- Enhanced the Form component with aria-describedby attributes for validation feedback.
- Refactored the Layout component to include semantic HTML5 elements for better structure and accessibility.
- Updated the 404 page metadata for improved SEO and user experience.
- Introduced a new explosive hero section featuring vibrant animations and floating orbs for a dynamic visual experience.
- Updated the layout to utilize a new translation method for improved content management.
- Enhanced call-to-action buttons with modern styling and animations for better user engagement.
- Implemented responsive design adjustments to ensure optimal viewing on various devices.
- Replaced static content with dynamic elements, improving the overall interactivity and appeal of the homepage.
- Removed unused imports and functions related to fetching user commits, streamlining the code.
- Introduced a new dynamic component for displaying the latest commits, improving modularity and maintainability.
- Updated type definitions for better TypeScript support and clarity.
- Cleaned up commented-out code to enhance readability and maintainability of the file.
- Redesigned the 404 error page with a clean background and floating elements for improved visual appeal.
- Introduced glassmorphism effects for the main error container, enhancing the overall aesthetic.
- Added animated elements, including a bouncing 404 number and fun emoji animations, to create a more engaging user experience.
- Implemented responsive design adjustments for better usability on mobile devices.
- Included action buttons for navigation back to the homepage and an about section, improving user interaction.
- Added a new navigation link for "Skills" in the header data.
- Updated section divs in the About Me page to include specific IDs for "About", "Resume", "Skills", "Certifications", and "Education" for better linking and accessibility.
- Ensured consistent structure across content sections to enhance user experience.
- Added touchend event listeners to certification, education, and skills cards for improved mobile compatibility.
- Updated click event listeners to prevent default actions, ensuring modals display correctly on both desktop and mobile devices.
- Enhanced mobile-specific styles in the Work Experience component for better usability, including adjustments to padding, gap, and text sizing.
- Replaced existing widgets with modern versions for Work Experience, Certifications, Skills, and Education sections to improve visual appeal and interactivity.
- Introduced an animated hero background and enhanced call-to-action buttons for better user engagement.
- Implemented staggered animations for content sections to create a more dynamic user experience.
- Updated styles for a cohesive glassmorphism effect across all sections, enhancing the overall aesthetic of the page.
- Updated date handling in ContributionCalendar to work entirely in UTC, ensuring consistency with Gitea's date representation.
- Adjusted logic for calculating the start date of the 52-week period and generating calendar days accordingly.
- Improved comments for clarity regarding the use of UTC in date manipulations.
- Cleaned up redundant code and ensured proper date formatting in the rendering of calendar days.
- Minor adjustments in the development.astro file to comment out a collapsible intro section for better organization.
- Added a new navigation link for "Journii" in the navigation component.
- Updated the layout of multiple pages including antifp, development, eap, privacy, terms, and uptime to enhance visual appeal and organization.
- Introduced hero sections with engaging visuals and improved typography for better readability.
- Enhanced table of contents and key highlights sections for clearer navigation and information presentation.
- Improved styling consistency across pages with backdrop blur effects and responsive design adjustments.
- Improved spam detection by integrating Gemini AI and heuristic checks, allowing for more accurate identification of spam messages.
- Updated logging to specify the source of spam detection (Gemini or heuristic) for better debugging and monitoring.
- Maintained existing functionality while enhancing the overall user experience in the contact form submission process.
- Integrated Gemini AI for spam detection in the contact form API, returning a token for manual review requests if spam is detected.
- Implemented a manual review UI in the Form.astro component, allowing users to submit their email and justification for review.
- Updated email handler to send manual review requests to a designated email address.
- Enhanced rate limiter configuration to allow more attempts in a shorter duration for better user experience.
- Added new dependencies: jsonwebtoken and @types/jsonwebtoken for handling JWTs in the spam detection process.
- Deleted multiple blog-related components including Grid, GridItem, Headline, List, ListItem, Pagination, RelatedPosts, SinglePost, and Tags to simplify the codebase.
- Removed associated configurations from src/config.yaml, eliminating unused blog settings.
- Cleaned up email templates and layouts related to blog functionality to enhance maintainability.
- Updated styles in tailwind.css for consistency following the removal of blog components.
- Increased the refresh interval in UpdateTimer from 300 seconds to 1800 seconds for less frequent updates.
- Refactored UptimeStatusIsland to utilize a 30-minute window for data caching and fetching, enhancing performance.
- Updated styles in UptimeStatusIsland for better visual consistency, including backdrop blur effects and improved layout for mobile responsiveness.
- Added a new section for SessionStorage usage in the privacy policy, detailing its purpose and data handling.
- Updated headings to include scroll margin for better navigation.
- Revised language in the privacy policy to clarify data handling practices, including contact form submissions and cookie usage.
- Enhanced the terms page with a link to the privacy policy for more comprehensive user information.
- Updated contact information in both documents to include company details.
- Removed UpdateTimer component and integrated countdown functionality directly into UptimeStatusIsland.
- Implemented sessionStorage caching for system status data to enhance performance and user experience.
- Added visual countdown display for the next update, improving user awareness of data refresh timing.
- Updated privacy policy to clarify the use of sessionStorage for caching non-personal data.
- Updated package-lock.json to reflect new versions of dependencies, including luxon for date handling.
- Modified UptimeStatusIsland component to improve local time formatting, ensuring UTC display and handling of invalid dates.
- Introduced a new Uptime link in the footer for system status monitoring.
- Updated translations to include the Uptime label in the footer.
- Simplified page title for improved clarity and focus on IT systems and automation.
- Added luxon library for improved date handling.
- Updated UptimeStatusIsland component to format and display local time for heartbeats.
- Enhanced state management to track user timezone and locale.
- Ensured UTC formatting for timestamps in API responses.
- Enabled prerendering for the Uptime page to improve performance.
- Implemented getStaticPaths function to generate paths for supported languages, enhancing SEO and accessibility for multilingual users.
- Updated ToggleTheme component styles for better visibility in dark mode.
- Added a new Uptime link in the Footer for system status monitoring.
- Introduced translations for Uptime in English, Dutch, German, and French to support multilingual users.
- Changed the dateModified to June 7, 2025, for both privacy and terms pages.
- Updated the "Last updated" subtitle to reflect the new modification date.
- Deleted outdated privacy and terms markdown files.
- Updated privacy and terms Astro components to reflect changes in legal compliance, including GDPR and Dutch law.
- Enhanced clarity in user rights and data usage sections.
- Added contact information for privacy and legal inquiries.
- Updated the "Last updated" date to March 6, 2025.
- Changed company references from AstroWind LLC to 365DevNet.
- Revised country references from California, United States to The Netherlands.
- Enhanced language for consistency and clarity throughout the documents.
- Added details on data collection practices and user preferences for improved transparency.
- Enhanced sitemap configuration to limit entries and ensure a single sitemap generation.
- Updated robots.txt to reflect the new sitemap URL.
- Revised metadata descriptions and titles across multiple pages for better SEO alignment.
- Obfuscated email address in the footer for improved privacy.
- Adjusted content in various pages to better reflect services offered and enhance clarity.
- Changed LanguageSelectorComponent to use client:visible for better loading performance.
- Updated CollapsibleIntro and ContributionCalendar components to utilize client:visible, enhancing user experience by ensuring they load only when in view.
- Improved icon alignment and sizes for a more cohesive appearance.
- Adjusted padding and spacing to ensure better visual consistency with the overall theme.
- Updated ImageModal styles to center the modal and adjust image container dimensions for better visual presentation.
- Refactored CompactSteps to include an icon component for better visual consistency and adjusted layout for improved readability.
- Removed outdated WorkExperience item rendering to streamline the component structure.
- Updated aboutme page to conditionally set icons based on title content for better context.
- Changed the menu label from 'Dev Dashboard' to 'Development' in multiple languages for clarity.
- Updated the title in the development page to use 'Development Overview' for better alignment with content.
- Adjusted the heading in development.astro to reflect the new title for improved user experience.