EIEIOTECHNOVATION
← Training programmes

EIEIO / AUTOMATION & EMERGING TECHNOLOGY

Microfrontend Development with Vue.js

Course outline

3 days

Duration

Microfrontend Development with Vue.js

3 days

Objective

This course aims to equip developers with the knowledge and skills to design, develop, and deploy scalable micro frontends using Vue.js.

By the end of the training, participants will be able to break down monolithic frontend applications into independently deployable microfrontends, understand different integration and deployment strategies, and implement advanced features such as cross-microfrontend communication, state management, and performance optimization.

Target Audience

Developers familiar with Vue.js and frontend development who want to explore microfrontend architecture.

Prerequisites

  • Solid understanding of HTML, CSS, and JavaScript (ES6+).
  • Familiarity with modern frontend development concepts (components, modular architecture, etc.).
  • Experience building applications with Vue.js.
  • Understanding of core Vue.js concepts such as components, props, state management, routing, etc.
  • Proficiency with Git and basic CLI commands.

Day 1

9:00am-10:30am

10:30am-10:45pm Morning Break

10:45pm-12:30pm

Introduction to Microfrontends

  • Overview of Microfrontends
  • What are microfrontends?
  • Monolithic frontends vs. Microfrontends
  • Benefits and challenges of microfrontend architecture
  • Real-world use cases and examples
  • Understanding the Microfrontend Architecture
  • The concept of independent, self-contained frontend apps
  • Communication patterns between microfrontends
  • Technology-agnostic approaches to building microfrontends
  • Popular microfrontend strategies (server-side composition, client-side composition, etc.)

12:30pm-1:30pm Lunch

1:30pm-3:30pm

Introduction to Vue.js

  • Overview of Vue.js Framework
  • Introduction to Vue.js: Core concepts and features
  • Single-File Components (SFCs) and Vue CLI
  • Understanding Vue's reactivity system
  • Building a Simple Vue.js Application
  • Setting up a Vue.js project with Vue CLI
  • Understanding the component structure, props, and events
  • Building reusable components and basic routing

3:30pm-3:45pm Afternoon Break

3:45pm-5:00pm

Microfrontend Implementation Strategies

  • Client-Side Composition
  • Overview of client-side composition
  • Integration using iframes and web components
  • Introduction to single-spa: A microfrontend framework
  • Setting up single-spa with Vue.js
  • Module Federation with Webpack
  • Overview of Module Federation in Webpack 5
  • Configuring Module Federation in Vue.js projects
  • Exposing and consuming modules across microfrontends
  • Sharing libraries and dependencies between microfrontends

Day 2

9:00am-10:30am

Building Microfrontends with Vue.js

  • Setting Up Microfrontend Architecture
  • Breaking down a monolithic Vue.js application into microfrontends
  • Configuring Webpack for multiple entry points
  • Managing routing between microfrontends
  • Inter-Microfrontend Communication
  • Cross-microfrontend communication: Techniques and patterns
  • Using a shared event bus or global state management (e.g., Vuex, Pinia)
  • Prop drilling vs. state management in a microfrontend setup
  • Microfrontends with Single-Spa and Vue.js
  • Installing and configuring single-spa
  • Creating multiple Vue.js microfrontend applications within single-spa
  • Configuring routing and lifecycle hooks for seamless navigation between microfrontends

10:30am-10:45pm Morning Break

10:45pm-12:30pm

Deployment and Integration

  • Independent Deployment of Microfrontends
  • CI/CD strategies for independent deployment of microfrontends
  • Versioning and backward compatibility considerations
  • Microfrontends in production: Best practices
  • Containerization and Orchestration
  • Dockerizing Vue.js microfrontends for deployment
  • Introduction to orchestration with Kubernetes for microfrontends
  • Service discovery and load balancing for microfrontend apps

12:30pm-1:30pm Lunch

1:30pm-3:30pm

Testing and Quality Assurance

  • Unit and Integration Testing for Microfrontends
  • Writing unit tests for Vue.js microfrontends (Jest, Vue Test Utils)
  • Integration testing across multiple microfrontends
  • Tools and frameworks for end-to-end testing (e.g., Cypress)
  • Ensuring Code Quality and Consistency
  • Using ESLint and Prettier for consistent code style across microfrontends
  • Implementing shared design systems and component libraries

3:30pm-3:45pm Afternoon Break

3:45pm-5:00pm

Security and Performance Optimization

  • Security Considerations in Microfrontends
  • Handling cross-origin issues and secure communication
  • Best practices for securing microfrontends: Authentication, authorization, and data integrity
  • Optimizing Performance in Microfrontends
  • Lazy loading and code splitting in Vue.js microfrontends
  • Reducing JavaScript bundle size across microfrontends
  • Performance testing and optimization techniques

Day 3

9:00am-10:30am

10:30am-10:45pm Morning Break

10:45pm-12:30pm

Advanced Microfrontend Concepts

  • SSR (Server-Side Rendering) with Vue.js in Microfrontends
  • Benefits and challenges of SSR in microfrontends
  • Implementing SSR with Vue.js microfrontends
  • Combining SSR and client-side rendering in a microfrontend setup
  • Advanced Sharing and Code Splitting
  • Sharing state and services across microfrontends using Module Federation
  • Advanced techniques for code splitting and optimizing shared dependencies
  • Dynamic imports and tree-shaking in Vue.js

12:30pm-1:30pm Lunch

1:30pm-3:30pm

Case Studies and Hands-On Projects

  • Case Studies: Real-World Microfrontend Implementations
  • Review of successful microfrontend implementations in the industry
  • Lessons learned and key takeaways
  • Capstone Project: Building a Microfrontend-Based Application
  • Designing and developing a full-fledged microfrontend-based application using Vue.js
  • Hands-on implementation of module federation, single-spa, or custom integration strategies
  • Independent deployment and performance optimization of the microfrontend application

3:30pm-3:45pm Afternoon Break

3:45pm-5:00pm

Future of Microfrontends

  • Trends and Future Directions in Microfrontend Architecture
  • Upcoming trends and technologies in the microfrontend landscape
  • Microfrontends and WebAssembly: Opportunities and challenges
  • Evaluating when and why to use microfrontends in future projects
  • Review and Q&A
  • Final review of key concepts and best practices
  • Open discussion and questions

Programme scope, delivery arrangements and suitability are confirmed during enquiry.