Slide 1

Slide 1 text

The Age of Monorepos Miroslav Jonas / @meeroslav / nx.dev / nrwl.io

Slide 2

Slide 2 text

@meeroslav / WARNING! Bad design Flickering colors Life-changing features

Slide 3

Slide 3 text

Miroslav
 Jonaš @meeroslav

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

@meeroslav / STATIC WEB
 (pre JS era)

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

@meeroslav /

Slide 8

Slide 8 text

@meeroslav / successfully confusing 
 recruiters since 1995

Slide 9

Slide 9 text

@meeroslav / Age 
 of
 Scripting

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

@meeroslav / Age of jQuery

Slide 12

Slide 12 text

Age of SPAs

Slide 13

Slide 13 text

@meeroslav / Age of JAMStack

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

@meeroslav / Age of Monorepos

Slide 16

Slide 16 text

Homepage App 
 (framework X) Backend Every application* UI Components 
 / 
 Design system Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Admin Portal App Mobile App Utility

Slide 17

Slide 17 text

Homepage App 
 (framework X) Backend Collocate UI Components 
 / 
 Design system Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Admin Portal App Mobile App Utility

Slide 18

Slide 18 text

Code sharing

Slide 19

Slide 19 text

@meeroslav / Just collocation NOT

Slide 20

Slide 20 text

Affected graph store games sales coupons core shared admin

Slide 21

Slide 21 text

Workspace analysis

Slide 22

Slide 22 text

Task orchestration Test Build Lint Build Lint Test Build Lint Test

Slide 23

Slide 23 text

now powered by Nx

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

Caching Never { build, test, lint… } same code twice { build, test, lint,... } Nx Local cache { build, test, lint,... } Nx Local cache

Slide 26

Slide 26 text

Distributed task execution 10 tasks 110 tasks 100 tasks 150 tasks Single agent 10 tasks 105 tasks 5 tasks 60 tasks 35 tasks Agent 1 Agent 2 Agent 3 Agent 4 Agent 5

Slide 27

Slide 27 text

Code constraints

Slide 28

Slide 28 text

@meeroslav / But I have only one project…

Slide 29

Slide 29 text

Powerful generators

Slide 30

Slide 30 text

Consistent tooling

Slide 31

Slide 31 text

@meeroslav / Monorepos bring clarity - workspace analysis - graph visualization

Slide 32

Slide 32 text

@meeroslav / - local & remote caching - task orchestration - detecting affected nodes - distributed task execution Monorepos bring speed

Slide 33

Slide 33 text

@meeroslav / - code sharing - code collocation - powerful generators - consistent tooling - code constraints Monorepos make it easy

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

WHY BE A 10X 
 WHEN YOU CAN BE AN NX DEVELOPER? @meeroslav /

Slide 36

Slide 36 text

Miroslav Jonas / @meeroslav / nx.dev / nrwl.io Thank you