Nx for Scalable Architecture

Master Nx to enforce architecture, speed up your development workflow and improve code quality

Background pattern
Nx Logo

Level.Intermediate

Duration.2 days

The Workshop equips participants with the knowledge and skills to utilize Nx as a powerful tool for a scalable architecture and efficient development workflows.

Key concepts covered include the Nx CLI, workspace presets and types, task caching, generators, and executors. You will learn how to streamline development processes and maximize productivity.

During the Workshop we will explore Nx libraries, generators, and executors for creating reusable and modular code. The workshop emphasizes leveraging task caching to speed up development iterations.

By the end, attendees gain a strong understanding of how to use Nx to build efficient, scalable, and maintainable projects.

Agenda

  • icon_globe

    The Nx Universe

    • Code generation

    • Bundle toolchain

    • The plugins registry

    • Features overview

    • Nx CLI

    • Nx cloud

  • icon_corporate

    Nx in an Enterprise

    • Conceptual overview

    • Team-wide workspace

    • App specific workspace (e.g. backend has workspace & frontend has workspace)

    • Organization wide workspace

    • Monorepo vs polyrepo

    • Challenges

  • icon_workspace

    Nx workspace in-depth

    • Create-nx-workspace

    • Presets & workspace Types

    • The Nx CLI

    • Workspace structure

  • icon_hexagon

    Application Architecture Patterns

    • Shell-pattern

    • Domain driven design

    • Library Types: feature, data-access, ui and util

    • Learn how to integrate Nx in an existing application

    • Adding complexity while you grow

    • Grouping folders

    • Tags

    • How to treat theming?

  • icon_verified

    Nx best practices

    • Library types and structure

    • Module boundaries

    • Affected & dependency graph

    • Project graph & task graph

    • Local and distributed caching

    • The power of affected

    • Quality assurance & code consistency in the team

    • Husky & lint-staged

  • icon_gear

    Advanced tooling

    • Generators & executors

    • First party and custom plugins

    • Custom generators & executors

  • icon_lightbulb

    Pitfalls

    • Super large libraries (library monoliths, e.g. global util or ui)

    • Circular dependencies

    • Nx lint checks

Description

The Nx Scalable Architecture Workshop is a comprehensive and hands-on learning experience designed to provide participants with a solid foundation in utilizing Nx as a powerful tool for efficient and scalable development workflows. Whether you are a seasoned developer or new to the Nx ecosystem, this workshop will equip you with the knowledge and skills to harness the full potential of Nx.

During the workshop, participants will explore essential concepts and features such as the Nx CLI, presets, workspace types, task caching, generators and executors. Through interactive sessions and practical exercises, attendees will gain a deep understanding of how to leverage these components to streamline their development processes and maximize productivity.

Participants will also dive into the world of Nx Libraries, Generators, and Executors, which enable the creation of reusable and modular code. By working with these tools, attendees will learn how to maximize code sharing and maintainability across projects, leading to faster development cycles and increased code quality.

The workshop will also cover essential topics like Task Caching, a powerful feature that optimizes eg. build, test and lint execution times by intelligently caching dependencies and results. Participants will discover how to leverage Task Caching effectively to speed up their development iterations.

Through a combination of hands-on exercises, group discussions, and real-world examples, participants will leave the Nx Architecture Pattern Workshop with a strong understanding of how to leverage Nx to build efficient, scalable, and maintainable projects.

Takeaways

  • Understand what Nx is & how to use the powerful Nx CLI

  • Learn how to leverage Nx in your enterprise environment

  • Apply architecture pattern in interactive sessions

  • You will learn different architecture pattern which will fit your present and future project's needs

  • Create a Nx workspace from scratch and in an existing project, understand the different workspace presets

  • Let generators and executors do the heavy work for you!

  • Leverage caching to minimize work

  • Get to know the project and task graph

  • Common pitfalls and how to tackle them

  • Enforce consistent and high quality code with automation tools