A new utility function `generateToc` has been created in `src/utils/generateToc.ts` for generation of table of contents. The utility includes child component extraction and error handling for orphan headings. Additionally, GSAP's ScrollTrigger library has been included under `public/scripts/vendor/gsap/` to manage scroll-triggered animations.
This update also moves the main icon images from the public folder to the src folder and remove the ones that are going to be generated and optimized by Astro.
This update vastly improves the website's support for multiple languages by adding French translations to several new pages, including 404, contact, products index, home, and services pages. This update also introduces a new ContactSection_fr.astro component for a French version of the Contact Us section. Site configuration has been modified to appropriately handle these new additions.
Created the 'PostFeedback.astro' and 'SocialShare.astro' component files to enrich the UI interface. The PostFeedback component renders a user feedback section with a title and two responsive buttons. Whereas, the SocialShare component provides users with hyperlinks to popular social media platforms - it also enables copy-pasting of current page links using the ClipboardJS utility function and dropdown functionality from the Preline plugin.
The 'banner-pattern.svg' asset has been moved from the 'src/images' directory to the 'public' directory. References to this asset have been updated accordingly in 'AnnouncementBanner.astro'. The move facilitates more efficient asset management and ensures correct file referencing.
A new script for HTML minification has been added, which is run after the build process. Several dependencies were updated, including the Astro framework and its related plugins. The 'astro-critters' package and its usage in the Astro configuration were removed. A minor animation timing change was also made in the [...slug].astro file.
The changes made include code refactoring and reformatting in several files for better readability, and to adhere to best practices. Detailed and intuitive comments were added to the code, improving clarity and understanding of the codebase. There were also some class adjustments and minor changes in several files ranging from reordering class listings to updating element selections. Import statements were also modified for clarity. Accordion functionality was removed, potentially indicating a pending replacement or enhancement.
A minified version of the GSAP (GreenSock Animation Platform) library has been added to the scripts/vendor directory. This library will be used to provide rich, high-performance animations for various components within the project.
The GSAP (GreenSock Animation Platform) JavaScript library was not in use, thus the gsap.min.js file has been deleted from the public/assets/vendor directory. This removal is part of codebase cleanup to improve application performance and efficiency.
Product information previously stored in JSON files has been migrated to Markdown format for efficient content management. Additionally, added a new button component for 404 pages to improve navigation and user experience. Defined a new schema for product collections and included GSAP JavaScript library for future animations.
Introduce an SVG icon to the project and establish a new web manifest containing app details and icon information. Add a Meta component to serve structured site metadata for better web presentation and search engine optimization. Include a new robot.txt to instruct web crawlers. The addition of these elements promotes better site recognition and SEO, enhancing user navigation and experience.
Added new dependencies to the Astro and npm configuration files which includes sitemap, vercel, and other packages. Removed the HSThemeAppearance script in ThemeIcon.astro and the favicon.svg file. Made minor adjustments to the class attributes of some components in HeroSection.astro for styling purposes. These changes aim to enhance website performance and user experience. Furthermore, the addition of the sitemap package will help improve website SEO.
The package.json and package-lock.json files have been updated to include new development tools: Prettier, its Astro and TailwindCSS plugins, and a package called preline. The tailwind.config.mjs file has also been updated to reference preline and its plugin as well as to enable Tailwind's dark mode feature.
This commit includes the introduction of Astro project setup files, including the configuration. The main change is the addition of the configuration file `astro.config.mjs`, where Tailwind is set up for Astro integration. It also adds `.gitignore` files, a `package.json`, and setup files for VSCode and IntelliJ IDEA. The project includes a favicon and a simple Astro page. It comes with a `package-lock.json` file which locks down the versions of each dependency ensuring that installs generate the exact same tree across machines.