Slide 1

Slide 1 text

a non-trivial micro frontends example 2.0 Michael Geers, neuland BΓΌro fΓΌr Informatik Micro Frontends Conference 2024

Slide 2

Slide 2 text

Work neuland BΓΌro fΓΌr Informatik, Bremen E-Commerce & Verticalized Architectures Who am I? Michael Geers πŸ‘¨πŸ’» Software Engineer πŸ“ Frontend Architect πŸ’š Web Technology Fanboy Author πŸ“• Micro Frontends in Action, Manning πŸ“ micro-frontends.org

Slide 3

Slide 3 text

tractor store 2.0 new community project

Slide 4

Slide 4 text

🏫 learning

Slide 5

Slide 5 text

πŸ”¬ by looking at stu f

Slide 6

Slide 6 text

micro-frontends.org original tractor store

Slide 7

Slide 7 text

micro-frontends.org original tractor store

Slide 8

Slide 8 text

πŸ“•πŸšœπŸ§‘πŸ’» sample code

Slide 9

Slide 9 text

1 concept ≙ 1 code sample πŸ‘“ focus is important for understanding

Slide 10

Slide 10 text

the-tractor.store book examples

Slide 11

Slide 11 text

🧩 big picture 🧩 🧩

Slide 12

Slide 12 text

πŸ’« new project new architecture new tech-stack new platform micro frontends *

Slide 13

Slide 13 text

🀷 lots of decisions make or buy app shell Which framework? Design system _____ federation? csr, ssr, mpa, sspa? deployment documentation shared code? discovery Communication testing Migration

Slide 14

Slide 14 text

🧫 proof of concepts

Slide 15

Slide 15 text

🧫 proof of concepts ugly, but functional

Slide 16

Slide 16 text

good UX & DX? πŸ‘©πŸ’» πŸ›

Slide 17

Slide 17 text

πŸ“ architecture rules guidelines docs Abstract Theoretical Hard to understand

Slide 18

Slide 18 text

June 3, 2011 fi rst commit Addy Osmani

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

https:/ /tastejs.com/movies/

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

same data TMDB :D different look :/ similar features

Slide 24

Slide 24 text

I’ve been researching

Slide 25

Slide 25 text

github.com/gioboa/qwik-microfrontends youtube.com/watch?v=nMrTOVy6OOE micro frontends with qwik

Slide 26

Slide 26 text

I’d love to see more larger micro frontends examples.

Slide 27

Slide 27 text

The Tractor Store 2.0

Slide 28

Slide 28 text

blueprint.the-tractor.store

Slide 29

Slide 29 text

blueprint.the-tractor.store

Slide 30

Slide 30 text

23 models 48 color variants

Slide 31

Slide 31 text

23 models 48 color variants

Slide 32

Slide 32 text

23 models 48 color variants SmartFarm Titan Sunset Copper

Slide 33

Slide 33 text

classic & autonomous

Slide 34

Slide 34 text

3 teams Team Explore Mission Help users explore the tractor portfolio and stores locations. Responsibility home, product lists, stores, recommendations Team Decide Mission Help users decide what model tractor they should choose. Responsibility product page Team Checkout Mission Guide users through the checkout process. Responsibility cart, checkout, thanks

Slide 35

Slide 35 text

new features & shiny

Slide 36

Slide 36 text

β˜‘ toggle team boundaries

Slide 37

Slide 37 text

β˜‘ toggle team boundaries

Slide 38

Slide 38 text

πŸ—Ί navigation inside & across team boundaries

Slide 39

Slide 39 text

πŸ—Ί navigation inside & across team boundaries

Slide 40

Slide 40 text

🀼 interaction between teams color change reco updates add to cart mini cart store picker

Slide 41

Slide 41 text

🀼 interaction between teams color change reco updates add to cart mini cart store picker

Slide 42

Slide 42 text

🎊 confetti on success

Slide 43

Slide 43 text

🎊 confetti on success

Slide 44

Slide 44 text

lighthouse score πŸ’―

Slide 45

Slide 45 text

about the project build your own

Slide 46

Slide 46 text

🎎 two implementations

Slide 47

Slide 47 text

github.com/neuland/tractor-store-blueprint blueprint.the-tractor.store Blueprint modular monolith

Slide 48

Slide 48 text

github.com/neuland/tractor-store-blueprint blueprint.the-tractor.store Blueprint modular monolith

Slide 49

Slide 49 text

github.com/neuland/tractor-store-preact no live demo yet Preact SPA + SSR Declarative Shadow DOM

Slide 50

Slide 50 text

πŸ’Ύ database per team .json

Slide 51

Slide 51 text

🎨 css, html and components

Slide 52

Slide 52 text

server client-side OR And

Slide 53

Slide 53 text

README template Specs

Slide 54

Slide 54 text

🍬 πŸ› bonus tasks

Slide 55

Slide 55 text

🍬 shared design system Redundant fancy button code

Slide 56

Slide 56 text

πŸ› introduce fourth team

Slide 57

Slide 57 text

πŸ› introduce fourth team owns reco Inspire

Slide 58

Slide 58 text

micro-frontends.org/tractor Learn more

Slide 59

Slide 59 text

micro-frontends.org/tractor Learn more

Slide 60

Slide 60 text

Get in contact! need help? Thanks for Listening Michael Geers @naltatis

Slide 61

Slide 61 text

thanks Fabricius @briziel

Slide 62

Slide 62 text

tractor examples manufactum.com why?