/ddev-woodoo-buildtools-magento

ddev Addon to build Magento projects without headache

Primary LanguageShellGNU General Public License v3.0GPL-3.0

[DDEV] Woodoo Frontend Buildtools for Magento & Hyvä

tests Dependencies Last commit date Badge Release-Badge Sponsors Join our Discord


This ddev add-on helps you to manage your theme build processes in Magento easily. You can run a build command to build all your themes or a specific theme. It doesn't matter if the theme is a Magento Standard Theme, a Custom Theme, or a Hyva theme. It automatically takes care of which type of theme you use and builds it for you. If a dependency is missing, Woodoo will install it.

>> Build all your Magento themes at once, with Magic, build with Woodoo!

Supported Versions Status
All Hyvä Versions supported project is maintained
Hyvä Fallback is supported project is maintained
Magento 2 Supported project is maintained
MageOS is supported project is maintained
MageOS is supported project is maintained

Features

  • Automatic Theme Detection: Automatically detects and builds Magento Standard, Custom, and Hyvä themes.
  • Dependency Management: Installs missing dependencies automatically.
  • Theme Configuration: Easily configure theme paths in .ddev/config-themes.yaml.
  • Build Commands: Build all themes or specific themes with simple commands.
  • Watch Mode: Watch for CSS and JS changes in specific themes.
  • Self-Test: Perform a self-check to identify potential problems.
  • Update Notifications: Get notified about new releases and update easily.
  • Developer Preview: Option to use the latest developer preview version.

Getting Started

Installation

1 . Get the latest Version with following command in your ddev project root

Latest stable version (recommended)

For DDEV v1.23.5 or above run

ddev add-on get OpenForgeProject/ddev-woodoo-buildtools-magento

For earlier versions of DDEV run

ddev get OpenForgeProject/ddev-woodoo-buildtools-magento
Latest Developer-Preview (Main-Branch - unreleased) - can be instable!

For DDEV v1.23.5 or above run

ddev add-on get https://github.com/OpenForgeProject/ddev-woodoo-buildtools-magento/archive/refs/heads/main.tar.gz

For earlier versions of DDEV run

ddev get https://github.com/OpenForgeProject/ddev-woodoo-buildtools-magento/archive/refs/heads/main.tar.gz

2. Start Woodoo INIT to update your ./ddev/config.yaml

Automatically connect to your ddev database to list all available themes and add these to .ddev/config-themes.yaml. Add theme path if possible (can be edit later)

ddev frontend init

3. Edit theme path in .ddev/config-themes.yaml Open .ddev/config-themes.yaml and specify relative path to the theme based on your project structure. (E.g. src/themeVendor/theme ... or app/design/frontend/themeVendor/theme/ ...)

Update Woodoo to latest stable Version

If a newer Release is available you will be notified in you ClI about new versions. To update use ddev frontend-update for the latest stable Version.

  ddev frontend-update

Get Developer Preview

If you want to get the latest developer preview (can be instable) use ddev frontend-update -dev

  ddev frontend-update -dev

Usage

Usage: ddev frontend [command] [option or theme]

Command:
  init, install         Initial Woodoo Setup to read all themes from database and write to .ddev/config-themes.yaml
  help, -help, -h       Displays help page
  version, --version    Show version
  check, selftest       Frontend Self-Test
  frontend-update       Update to the latest Version (stable Version)
  frontend-update -dev  Update to the latest Main-Branch Version (not recommended)
  themes                List all available themes that are configured in .ddev/config-themes.yaml
  build                 Builds all themes that are configured in .ddev/config-themes.yaml
  build -f              Builds all configured themes without yes/no confirmation
  build theme           Build a specific theme
  watch theme           Watch for CSS and JS changes in a specific theme

Option:
  -f                    Force the build command to run without yes/no confirmation

Aliases:
  f, fe

Usage Examples

Here are some usage examples to help you get started:

Building All Themes

To build all themes configured in .ddev/config-themes.yaml, run:

ddev frontend build

Building a Specific Theme

To build a specific theme, use the theme code as an argument:

ddev frontend build <theme_code>

Watching for Changes

To watch for CSS and JS changes in a specific theme, use:

ddev frontend watch <theme_code>

Troubleshooting Tips

  • Ensure that your theme paths in .ddev/config-themes.yaml are correct and relative to your project root.
  • If you encounter any issues, try running ddev frontend selftest to perform a self-check and identify potential problems.

Feature request

Submit your Feature Request by adding a new issue and add a label with feature-request.


Contributing

Contributions are welcome! Please read the Contributing Guidelines first. Feel free to send your improvements as Pull request.


Watch out our Contributers, Tester & Supporter


License

License | by Mathias Elle