An open API service indexing awesome lists of open source software.

https://github.com/magebitcom/hyva-course-boilerplate

Ready-to-run dockerized Magento 2 + Hyvä boilerplate for Magebit Academy newcomers (Hyvä Learning Module).
https://github.com/magebitcom/hyva-course-boilerplate

Last synced: about 1 month ago
JSON representation

Ready-to-run dockerized Magento 2 + Hyvä boilerplate for Magebit Academy newcomers (Hyvä Learning Module).

Awesome Lists containing this project

README

          

# Hyvä Course Boilerplate

A ready-to-run, **dockerized** Magento 2 + Hyvä setup for the **Hyvä Learning Module**. It ships the company-standard magebit-docker infrastructure (Traefik, ECR images) and the `d/` command wrappers, so you start on the same setup we use on real projects instead of a bare host.

No Magento code is committed — it's pulled with Composer from the committed `composer.json` / `composer.lock` (Magento 2.4.7-p3 + Hyvä default theme). This repo provides the Docker layer, the `d/` wrappers, the composer manifest, and a `make` pipeline.

---

## Prerequisites (once per machine)

1. **magebit-docker** installed, and this project registered so Traefik serves `magebit-hyva-course.docker`. In your magebit-docker install add it to `projects.yml`:
```yaml
projects:
- magebit-hyva-course
```
then generate the cert: `make certs-linux` (or `certs-osx` / `certs-wsl`).
→ New to this? See Coda: [Dockerize your first project](https://coda.io/d/_dvWq9UAfB3w/Dockerize-your-first-project_suenx3Fs).
2. **AWS CLI** configured + ECR login (to pull the Docker images).
3. **Composer credentials — set globally, never in this repo** (they live in `~/.composer/auth.json`):
```bash
composer config --global --auth http-basic.repo.magento.com
composer config --global --auth http-basic.hyva-themes.repo.packagist.com token
```
Get the keys from the person running the course (shared course Hyvä key + Magento keys). The Hyvä theme is free/open source; you still need the free access key.

---

## Quick start

```bash
make build
```

One command: start the stack → `composer install` → install Magento (dev store) → sample data → activate the Hyvä theme → build Tailwind → reindex. When it finishes, open **https://magebit-hyva-course.docker/** (the admin URL is printed by the installer). Run `make help` to see every target.

Default admin login: `admin` / `Admin123!`.

---

## Working on the course

Branch off `master` as `feature/HC-` and work there — you'll open a PR from it for review. `master` is protected (PRs only).

```bash
git checkout -b feature/HC-123
```

New to branching / git flow? See Coda: [Git usage and deployments](https://coda.io/d/_dvWq9UAfB3w/Git-usage-and-deployments_suGsI5xv).

When you create your own child theme, point `d/node-tailwind` at it (edit the `THEME_TAILWIND` line) and run the watcher while you work:
```bash
d/node-tailwind run watch
```

---

## Commands

**`d/` wrappers** (run everything through these, not the host):

| Command | Purpose |
|---|---|
| `d/magento …` | `bin/magento` in the PHP container |
| `d/composer …` | Composer |
| `d/npm …` / `d/node …` | npm / node |
| `d/node-tailwind run watch\|build` | Tailwind build in your child theme |
| `d/mysql` | MySQL shell |
| `d/phpcs` / `d/phpstan` | code standards (set up per project) |

**`make` targets:** `build` (full pipeline), `up`, `down`, `composer`, `magento-install`, `sampledata`, `theme`, `tailwind`, `reindex`.

---

## Notes

- Runs in **developer mode** — no static-content deploy needed.
- **Varnish** is the full-page cache. `d/magento cache:flush` purges it (http_cache_hosts is set on install), so template changes show without restarting Varnish. Tailwind changes need the watcher (`d/node-tailwind run watch`).
- **Search** uses OpenSearch (the `opensearch` engine — correct for OpenSearch 2.x).
- Sample data has **no sales orders** — for the My Account order-grid task, place a couple of test orders via checkout.
- Production/CI credentials are provided via env/secrets, never committed.