-
Notifications
You must be signed in to change notification settings - Fork 51
Hummingbird v2.0.0 Beta #1382
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Robin-Fischer-PS
merged 35 commits into
PrestaShop:master
from
tblivet:feat/hummingbird-v2
Nov 26, 2025
Merged
Hummingbird v2.0.0 Beta #1382
Changes from all commits
Commits
Show all changes
35 commits
Select commit
Hold shift + click to select a range
18dd163
feat: new blog post
tblivet 4b3baf1
feat: add BEM link
tblivet 79c976d
chore: update date
tblivet f3778df
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 2caec49
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 3d2abf0
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 65ff4b9
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 850a4ad
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 35b3ac0
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 147f4a8
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 3927856
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 4f0b46e
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet e5ba68b
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet f5ff522
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet e393f73
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet a8ad6e9
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet e8ba9de
fix: bad link
tblivet 51914e0
fix: typo
tblivet 73cf244
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet aed9d49
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 81ce265
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet d5e2413
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet fa2e3b3
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 50adc4a
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 8024975
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 497635e
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 197522d
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 2a8909d
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 63964c4
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 8391701
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet fb7ee89
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet a8d2b31
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet 8969bea
Update content/news/posts/2025/hummingbird-v2-beta.md
tblivet c6ccda3
feat: add opengraph + twitter image
tblivet c3267f7
feat: add disclamer / warning
tblivet File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,87 @@ | ||
| --- | ||
| layout: post | ||
| title: "Hummingbird v2.0.0 Beta" | ||
| subtitle: "A new era for PrestaShop themes" | ||
| date: 2025-11-26 | ||
| authors: [ GericFosse, ThibaultBlivet ] | ||
| icon: icon-leaf | ||
| tags: [ theme ] | ||
| opengraph_image: /assets/images/theme/banner-ps-project.png | ||
| twitter_image: /assets/images/theme/banner-ps-project.png | ||
| --- | ||
|
|
||
| We are thrilled to announce the release of **Hummingbird v2.0.0 Beta**. This milestone is the result of a monumental effort, representing more than **320 commits, 500 file changes, 50,000 additions**, and **30,000 deletions**. The goal is to deliver a developer-first, lightweight, and modular theme that establishes a new standard for the PrestaShop ecosystem. | ||
|
|
||
|  | ||
|
|
||
| Hummingbird will become the **new default theme** in PrestaShop starting from **version 9.1**, while the Classic theme will remain available. It is fully compatible with **PrestaShop 9 and above**. | ||
|
|
||
| Unlike traditional themes designed primarily for end users, Hummingbird provides a structured, scalable foundation that enables developers and agencies to build and customize ecommerce stores with ease and efficiency. | ||
|
|
||
| ## 1. Vision: A Developer-Centric Foundation | ||
|
|
||
| The current ecosystem faces limitations due to the rigid Classic theme. Hummingbird resolves these issues with an approach that is: | ||
|
|
||
| - **Developer-first:** built by developers, for developers, focusing on customization and flexibility. | ||
| - **Performance-driven:** optimized for speed, efficiency, and Core Web Vitals. | ||
| - **Future-proof:** a modern base theme designed to evolve alongside PrestaShop and modern web standards. | ||
| - **High-quality integration:** cleaner, more consistent integration across the entire theme, resulting in higher overall implementation quality. | ||
|
|
||
| ## 2. Key New Features in v2.0.0 | ||
|
|
||
| This major release introduces a modernized tech stack and a fully rethought architecture to streamline development. | ||
|
|
||
| ### Modern Tech Stack and Bootstrap 5 | ||
|
|
||
| - **Bootstrap 5:** full adoption of Bootstrap **5.3.3**, taking advantage of native components and reducing reliance on external libraries. | ||
| - **SCSS + TypeScript:** a transition to modern, scalable technologies that improve maintainability. | ||
| - **Dark mode support:** Hummingbird is "Dark Mode Ready," leveraging native Bootstrap 5.3.0 dark mode capabilities. | ||
|
|
||
| ### Architecture and Developer Experience | ||
|
|
||
| - **Modular architecture:** a logical file structure makes it easier for developers to read, extend, and maintain code. | ||
| - **Style harmonization:** cleaner, more consistent templates and styles across the theme for a higher-quality rendering. | ||
| - **BEM convention:** adoption of the <a href="https://getbem.com/" target="_blank">BEM (Block Element Modifier)</a> methodology for non-Bootstrap components to improve readability and reusability. | ||
|
|
||
| ### Performance, SEO and Accessibility | ||
|
|
||
| - **Pre-optimized for Core Web Vitals:** faster loading, better UX, and improved responsiveness. | ||
| - **Native lazy loading:** reduces resource usage and speeds up navigation. | ||
| - **SEO optimization:** embedded in-sight SEO optimizations and structured data (JSON-LD) for better search engine visibility. | ||
| - **Accessibility:** compliant with **over 95%** of the requirements of the European Accessibility Act (EAA), ensuring inclusive user experiences.<br><span style="color: #999;">*Audit performed during the development phase using <a href="https://accessibilityinsights.io/" target="_blank">Accessibility Insights tools</a>. Another audit will be performed post-release to refine the compatibility rate.*</span> | ||
|
|
||
| ## 3. Lighthouse Performance | ||
|
|
||
|  | ||
|
|
||
| > Results are based on three key pages **Homepage**, **Category**, and **Product** and represent the average scores for **Performance**, **Accessibility**, **Best Practices**, and **SEO**. | ||
|
|
||
| ## 4. Backward Compatibility Breaks and Ecosystem Impact | ||
|
|
||
| To modernize the ecosystem, several changes were necessary. | ||
|
|
||
| - **jQuery removed from theme:** Hummingbird no longer uses jQuery internally. It remains available for modules that still rely on it, but we strongly recommend migrating away from it, as we plan to remove it in the future. | ||
| - **Bootstrap 5 migration:** moving from Bootstrap 4 (Classic Theme) to Bootstrap 5 requires updates to class names and utilities. Modules should align with Bootstrap 5 for full compatibility. | ||
| - **Refactored native modules:** key native modules have undergone major refactoring, including `ps_mainmenu`, `ps_facetedsearch`, `ps_featuredproducts`, and `productcomments`, among others. | ||
|
|
||
| ## 5. Best Practices for Developers | ||
|
|
||
|  | ||
|
|
||
| To get the most out of Hummingbird v2.0.0, we recommend following these guidelines: | ||
|
|
||
| - **Leverage native components:** use as many native Bootstrap components as possible. This reduces technical debt and ensures maximum flexibility. | ||
| - **CSS layers:** we have introduced the use of `@layer` in CSS. Theme styles are now scoped into layers, and additional unlayered styles should take priority over theme styles. This provides more flexibility for customization or module style overrides, improves style-priority management, and helps prevent conflicts. | ||
| - **Follow the architecture:** adhere to the new logical file structure and BEM conventions. Non-Bootstrap components should follow the BEM convention to ensure reusability across the theme when needed. | ||
| - **Bootstrap overrides:** a new Bootstrap override architecture has been implemented, allowing you to easily override SCSS variables by component, as well as override the components themselves if needed. This system is also based on the `@layer` functionality and ensures clean customization with a clear separation of concerns between Bootstrap and PrestaShop custom components. | ||
| - **Don't rely on classes for JS:** for many years, JavaScript interactivity relied on custom classes, often using the `js-` prefix though sometimes not. Over time, this led to inconsistent practices and made the ecosystem more complex to maintain. This is why we recommend using data attributes to define JavaScript interactions. Migration from classes to attributes has already begun and should continue over time to make maintenance and evolution easier. | ||
|
|
||
| A more detailed technical blog post will follow soon, providing in-depth explanations and examples for these best practices. | ||
|
|
||
| ## 6. Call to Action | ||
|
|
||
| Hummingbird is intended to be the **new testing standard** for PrestaShop Marketplace modules. We need your expertise to refine it further. | ||
|
|
||
| - **Download the release:** [Hummingbird v2.0.0 Beta on GitHub](https://github.com/PrestaShop/hummingbird/releases). | ||
| - **Contribute:** review our updated README and CONTRIBUTING file to get started. | ||
| - **Report issues:** help us stabilize the project for the official release by reporting issues/bugs on our [GitHub repository](https://github.com/PrestaShop/hummingbird/issues). | ||
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.