1. Getting Started
Requirements
- Magento 2.4.3 CE or higher
- A valid license for Hyvä Themes, please view https://hyva.io/license
- For licensees: A Private Packagist Key
- For partners: Access to Hyvä Gitlab
System Requirements
The system requirements depend on the versions of Magento and TailwindCSS in use.
At the time of writing, a node version >= 12.13.0 is required on development instances to run the tailwind compiler.
We recommend creating the bundle on development or staging instance, not on production.
The system requirements for Magento can be found in the devdocs.
Open Source Modules
All Hyvä open source modules (for example hyva-themes/magento2-graphql-token
) are available via public packagist without configuring a composer repository.
For Licensees
Getting Started
You need a valid license and a Private Packagist key.
You should have received the instruction below when purchasing your license:
# this command adds your key to your projects auth.json file
# replace yourLicenseAuthentificationKey with your own key
composer config --auth http-basic.hyva-themes.repo.packagist.com token yourLicenseAuthentificationKey
# replace yourProjectName with your project name
composer config repositories.private-packagist composer https://hyva-themes.repo.packagist.com/yourProjectName/
Then, install the theme package and its dependencies:
Next, run the Magento installer:
Navigate to the Content > Design > Configuration
admin section and activate the hyva/default
theme.
Ensure a theme is set on the Website
Setting hyva/default
on a store view only and keeping the lower Website and Store set to -- No Theme --
will cause issues on the store front.
If you set the Hyvä theme at a Store or Store View level, be sure to also set a theme on the Website.
It does not matter what theme - it could be Luma of Hyvä or another theme - as long as it is set.
In developer
mode, you should now be able to see the theme in action on the frontend. A cache flush might be required.
In deploy mode production
, running bin/magento setup:static-content:deploy
is required.
In deploy mode default
the newly installed modules will not be automatically enabled. You should however never operate a Magento store in default
mode.
To create your child theme, continue with: Building your Theme
Additional Steps
Disabling unsupported bundled extensions
Since Magento 2.4.4
Before version 2.4.4 Magento came bundled with some third-party modules.
Since release 2.4.4 Magento no longer contains any bundled extensions, so this step is no longer applicable.
Some bundled extensions are not supported (yet). For installations before version 2.4.4 you may want to disable them, or even completely replace them with composer.
To disable (Magento 2.4.3 - 2.4.3-p2):
bin/magento module:disable Dotdigitalgroup_Email Dotdigitalgroup_Chat Dotdigitalgroup_ChatGraphQl Dotdigitalgroup_EmailGraphQl Dotdigitalgroup_Sms
Adobe Commerce
If you are running the Adobe Commerce before version 2.4.4, also disable: Dotdigitalgroup_Enterprise
Dotdigitalgroup_B2b
Disabling Magento Captcha
Captcha Support
We currently don’t support the old Magento captcha implementation, which is enabled by default.
Instead, use one of the three Google ReCaptcha versions supported by Magento:
ReCaptcha V3 invisible, V2 invisible and v2 "I'm not a robot".
Please disable the default Magento Captcha for forms to work:
Ensure required GraphQL modules are enabled
By default all Magento GraphQL modules are enabled.
However, often unused GraphQL modules are disabled in Magento stores using the Luma theme.
Hyvä makes use of the Magento GraphQL API. Because of this these modules need to be enabled if they have been disabled:
Module | composer package name |
---|---|
Magento_BundleGraphQl | magento/module-bundle-graph-ql |
Magento_CatalogCustomerGraphQl | magento/module-catalog-customer-graph-ql |
Magento_CatalogGraphQl | magento/module-catalog-graph-ql |
Magento_CatalogRuleGraphQl | magento/module-catalog-rule-graph-ql |
Magento_CatalogUrlRewriteGraphQl | magento/module-catalog-url-rewrite-graph-ql |
Magento_ConfigurableProductGraphQl | magento/module-configurable-product-graph-ql |
Magento_CustomerGraphQl | magento/module-customer-graph-ql |
Magento_DirectoryGraphQl | magento/module-directory-graph-ql |
Magento_DownloadableGraphQl | magento/module-downloadable-graph-ql |
Magento_EavGraphQl | magento/module-eav-graph-ql |
Magento_GraphQl | magento/module-graph-ql |
Magento_GroupedProductGraphQl | magento/module-grouped-product-graph-ql |
Magento_QuoteGraphQl | magento/module-quote-graph-ql |
Magento_GraphQlCache | magento/module-graph-ql-cache |
Magento_RelatedProductGraphQl | magento/module-related-product-graph-ql |
Magento_ReviewGraphQl | magento/module-review-graph-ql |
Magento_SalesGraphQl | magento/module-sales-graph-ql |
Magento_StoreGraphQl | magento/module-store-graph-ql |
Magento_SwatchesGraphQl | magento/module-swatches-graph-ql |
Magento_UrlRewriteGraphQl | magento/module-url-rewrite-graph-ql |
Magento_WishlistGraphQl | magento/module-wishlist-graph-ql |
Are all GraphQL modules required?
Most of the time not all of these GraphQL modules are required. Which modules are required depends on what features are being used. For example, if Recently Viewed Products are not enabled, then the Catalog GraphQL module is not required at all.
Checking which GraphQL modules are enabled
Run the following command and check that all modules are enabled:
bin/magento module:status Magento_BundleGraphQl Magento_CatalogCustomerGraphQl Magento_CatalogGraphQl Magento_CatalogRuleGraphQl Magento_CatalogUrlRewriteGraphQl Magento_ConfigurableProductGraphQl Magento_CustomerGraphQl Magento_DirectoryGraphQl Magento_DownloadableGraphQl Magento_EavGraphQl Magento_GraphQl Magento_GroupedProductGraphQl Magento_QuoteGraphQl Magento_GraphQlCache Magento_RelatedProductGraphQl Magento_ReviewGraphQl Magento_SalesGraphQl Magento_StoreGraphQl Magento_SwatchesGraphQl Magento_UrlRewriteGraphQl Magento_WishlistGraphQl
The expected output is something like this:
Magento_BundleGraphQl : Module is enabled
Magento_CatalogCustomerGraphQl : Module is enabled
Magento_CatalogGraphQl : Module is enabled
Magento_CatalogRuleGraphQl : Module is enabled
Magento_CatalogUrlRewriteGraphQl : Module is enabled
Magento_ConfigurableProductGraphQl : Module is enabled
Magento_CustomerGraphQl : Module is enabled
Magento_DirectoryGraphQl : Module is enabled
Magento_DownloadableGraphQl : Module is enabled
Magento_EavGraphQl : Module is enabled
Magento_GraphQl : Module is enabled
Magento_GroupedProductGraphQl : Module is enabled
Magento_QuoteGraphQl : Module is enabled
Magento_GraphQlCache : Module is enabled
Magento_RelatedProductGraphQl : Module is enabled
Magento_ReviewGraphQl : Module is enabled
Magento_SalesGraphQl : Module is enabled
Magento_StoreGraphQl : Module is enabled
Magento_SwatchesGraphQl : Module is enabled
Magento_UrlRewriteGraphQl : Module is enabled
Magento_WishlistGraphQl : Module is enabled
For Contributions and for Technology Partners
Getting Started
You need access to all Hyvä repositories at gitlab.hyva.io
You can configure the git repositories in your root composer.json
and use the repositories directly as git repo’s beneath your vendor directory. You can check out tags and branches, make commits and push contributions to gitlab.hyva.io.
Tip
Ensure your SSH key is set in your Hyvä Gitlab account, as well as on github.com. If you use Docker, check that you use the SSH key available in the PHP container running Composer.
To configure and install Hyvä directly from gitlab with composer, run these commands:
# hosted on private gitlab:
composer config repositories.hyva-themes/magento2-theme-module git git@gitlab.hyva.io:hyva-themes/magento2-theme-module.git
composer config repositories.hyva-themes/magento2-reset-theme git git@gitlab.hyva.io:hyva-themes/magento2-reset-theme.git
composer config repositories.hyva-themes/magento2-email-module git git@gitlab.hyva.io:hyva-themes/magento2-email-module.git
composer config repositories.hyva-themes/magento2-default-theme git git@gitlab.hyva.io:hyva-themes/magento2-default-theme.git
composer require hyva-themes/magento2-default-theme --prefer-source
Next, run bin/magento setup:upgrade
from your project’s root.
Do not use ssh-key authentication in CI/CD
We do not guarantee uptime for gitlab, so always use packagist.com for build pipelines and for production.
Navigate to the Content > Design > Configuration
admin section and activate the hyva/default
theme.
Ensure a theme is set on the Website
Setting hyva/default
on a store view only and keeping the lower Website and Store set to -- No Theme --
will cause issues on the store front.
If you set the Hyvä theme at a Store or Store View level, be sure to also set a theme on the Website.
It does not matter what theme - it could be Luma of Hyvä or another theme - as long as it is set.
In developer
mode, you should now be able to see the theme in action on the frontend. A cache flush might be required.
In deploy mode production
, running bin/magento setup:static-content:deploy
is required.
In deploy mode default
the newly installed modules will not be automatically enabled. You should however never operate a Magento store in default
mode.
Additional Steps
Disabling unsupported bundled extensions
Since Magento 2.4.4
Before version 2.4.4 Magento came bundled with some third-party modules.
Since release 2.4.4 Magento no longer contains any bundled extensions, so this step is no longer applicable.
Some bundled extensions are not supported (yet). For installations before version 2.4.4 you may want to disable them, or even completely replace them with composer.
To disable (Magento 2.4.3 - 2.4.3-p2):
bin/magento module:disable Dotdigitalgroup_Email Dotdigitalgroup_Chat Dotdigitalgroup_ChatGraphQl Dotdigitalgroup_EmailGraphQl Dotdigitalgroup_Sms
Adobe Commerce
If you are running the Adobe Commerce before version 2.4.4, also disable: Dotdigitalgroup_Enterprise
Dotdigitalgroup_B2b
Disabling Magento Captcha
Captcha Support
We currently don’t support the old Magento captcha implementation, which is enabled by default.
Instead, use one of the three Google ReCaptcha versions supported by Magento:
ReCaptcha V3 invisible, V2 invisible and v2 "I'm not a robot".
Please disable the default Magento Captcha for forms to work:
Ensure required GraphQL modules are enabled
Please follow instructions in the section above "Ensure required GraphQL modules are enabled".