Building Micro-Frontends


Book Description

What's the answer to today's increasingly complex web applications? Micro-frontends. Inspired by the microservices model, this approach lets you break interfaces into separate features managed by different teams of developers. With this practical guide, Luca Mezzalira shows software architects, tech leads, and software developers how to build and deliver artifacts atomically rather than use a big bang deployment. You'll learn how micro-frontends enable your team to choose any library or framework. This gives your organization technical flexibility and allows you to hire and retain a broad spectrum of talent. Micro-frontends also support distributed or colocated teams more efficiently. Pick up this book and learn how to get started with this technological breakthrough right away. Explore available frontend development architectures Learn how microservice principles apply to frontend development Understand the four pillars for creating a successful micro-frontend architecture Examine the benefits and pitfalls of existing micro-frontend architectures Learn principles and best practices for creating successful automation strategies Discover patterns for integrating micro-frontend architectures using microservices or a monolith API layer




Micro Frontends in Action


Book Description

Micro Frontends in Action teaches you to apply the microservices approach to the frontend. Summary Browser-based software can quickly become complex and difficult to maintain, especially when it’s implemented as a large single-page application. By adopting the micro frontends approach and designing your web apps as systems of features, you can deliver faster feature development, easier upgrades, and pick and choose the technology you use in your stack. Micro Frontends in Action is your guide to simplifying unwieldy frontends by composing them from small, well-defined units. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Micro frontends deliver the same flexibility and maintainability to browser-based applications that microservices provide for backend systems. You design your project as a set of standalone components that include their own interfaces, logic, and storage. Then you develop these mini-applications independently and compose them in the browser. About the Book Micro Frontends in Action teaches you to apply the microservices approach to the frontend. You’ll start with the core micro frontend design ideas. Then, you’ll build an e-commerce application, working through practical issues like server-side and client-side composition, routing, and maintaining a consistent look and feel. Finally, you’ll explore team workflow patterns that maximize the benefit of developing application components independently. What’s Inside - Create a unified frontend from independent applications - Combine JavaScript code from multiple frameworks - Browser and server-side composition and routing - Implement effective dev teams and project workflow About the Reader For web developers, software architects, and team leaders. About the Author Michael Geers is a software developer specializing in building user interfaces. Table of Contents PART 1 - GETTING STARTED WITH MICRO FRONTENDS 1 What are micro frontends? 2 My first micro frontends project PART 2 - ROUTING, COMPOSITION, AND COMMUNICATION 3 Composition with Ajax and server-side routing 4 Server-side composition 5 Client-side composition 6 Communication patterns 7 Client-side routing and the application shell 8 Composition and universal rendering 9 Which architecture fits my project? PART 3 - HOW TO BE FAST, CONSISTENT, AND EFFECTIVE 10 Asset loading 11 Performance is key 12 User interface and design system 13 Teams and boundaries 14 Migration, local development, and testing




Building Microservices


Book Description

Annotation Over the past 10 years, distributed systems have become more fine-grained. From the large multi-million line long monolithic applications, we are now seeing the benefits of smaller self-contained services. Rather than heavy-weight, hard to change Service Oriented Architectures, we are now seeing systems consisting of collaborating microservices. Easier to change, deploy, and if required retire, organizations which are in the right position to take advantage of them are yielding significant benefits. This book takes an holistic view of the things you need to be cognizant of in order to pull this off. It covers just enough understanding of technology, architecture, operations and organization to show you how to move towards finer-grained systems.




Frontend Architecture for Design Systems


Book Description

Imagine what a large-scale web project would look like if frontend development were not treated as an add-on, but as an equal partner with backend development and content strategy. This practical book takes experienced web developers through the new discipline of frontend architecture, including the latest tools, standards, and best practices that have elevated frontend web development to an entirely new level. Using real-world examples, case studies, and practical tips and tricks throughout, author Micah Godbolt introduces you to the four pillars of frontend architecture. He also provides compelling arguments for developers who want to embrace the mantle of frontend architect and fight to make it a first-class citizen in their next project. The four pillars include: Code: how to approach the HTML, CSS, and JavaScript of a design system Process: tools and processes for creating an efficient and error-proof workflow Testing: creating a stable foundation on which to build your site Documentation: tools for writing documentation while the work is in progress




Building Evolutionary Architectures


Book Description

The software development ecosystem is constantly changing, providing a constant stream of new tools, frameworks, techniques, and paradigms. Over the past few years, incremental developments in core engineering practices for software development have created the foundations for rethinking how architecture changes over time, along with ways to protect important architectural characteristics as it evolves. This practical guide ties those parts together with a new way to think about architecture and time.




Monolith to Microservices


Book Description

How do you detangle a monolithic system and migrate it to a microservice architecture? How do you do it while maintaining business-as-usual? As a companion to Sam Newman’s extremely popular Building Microservices, this new book details a proven method for transitioning an existing monolithic system to a microservice architecture. With many illustrative examples, insightful migration patterns, and a bevy of practical advice to transition your monolith enterprise into a microservice operation, this practical guide covers multiple scenarios and strategies for a successful migration, from initial planning all the way through application and database decomposition. You’ll learn several tried and tested patterns and techniques that you can use as you migrate your existing architecture. Ideal for organizations looking to transition to microservices, rather than rebuild Helps companies determine whether to migrate, when to migrate, and where to begin Addresses communication, integration, and the migration of legacy systems Discusses multiple migration patterns and where they apply Provides database migration examples, along with synchronization strategies Explores application decomposition, including several architectural refactoring patterns Delves into details of database decomposition, including the impact of breaking referential and transactional integrity, new failure modes, and more




Production-Ready Microservices


Book Description

One of the biggest challenges for organizations that have adopted microservice architecture is the lack of architectural, operational, and organizational standardization. After splitting a monolithic application or building a microservice ecosystem from scratch, many engineers are left wondering what’s next. In this practical book, author Susan Fowler presents a set of microservice standards in depth, drawing from her experience standardizing over a thousand microservices at Uber. You’ll learn how to design microservices that are stable, reliable, scalable, fault tolerant, performant, monitored, documented, and prepared for any catastrophe. Explore production-readiness standards, including: Stability and Reliability: develop, deploy, introduce, and deprecate microservices; protect against dependency failures Scalability and Performance: learn essential components for achieving greater microservice efficiency Fault Tolerance and Catastrophe Preparedness: ensure availability by actively pushing microservices to fail in real time Monitoring: learn how to monitor, log, and display key metrics; establish alerting and on-call procedures Documentation and Understanding: mitigate tradeoffs that come with microservice adoption, including organizational sprawl and technical debt




Front-End Reactive Architectures


Book Description

Learn how to use reactive architectures on the front-end. There are many technologies using a reactive approach on the back end, but this book teaches you how the reactive manifesto can be used to benefit your front-end programming as well. You will discover what reactive programming is, what the current front-end ecosystem looks like, and how to use a range of frameworks and libraries. You will also apply specific reactive architectures in your own projects. Each concept is taught with a mix of technical explanations and real-world code implementations. The future of front-end programming and architecture is reactive – don’t get left behind: Add Front-End Reactive Architectures to your library today. What You'll Learn Understand when and why you should use a reactive architecture Apply a specific reactive architecture in a project Manage different reactive architectures Who This Book Is For Mid-senior front-end developers, tech leads, and solutions architects




Software Architecture Patterns for Serverless Systems


Book Description

A professional's guide to solving complex problems while designing modern software Key FeaturesLearn best practices for designing enterprise-grade software systems from a seasoned CTODeeper your understanding of system reliability, maintainability, and scalabilityElevate your skills to a professional level by learning the most effective software design patterns and architectural conceptsBook Description As businesses are undergoing a digital transformation to keep up with competition, it is now more important than ever for IT professionals to design systems to keep up with the rate of change while maintaining stability. This book takes you through the architectural patterns that power enterprise-grade software systems and the key architectural elements that enable change (such as events, autonomous services, and micro frontends), along with showing you how to implement and operate anti-fragile systems. First, you'll divide up a system and define boundaries so that your teams can work autonomously and accelerate innovation. You'll cover low-level event and data patterns that support the entire architecture, while getting up and running with the different autonomous service design patterns. Next, the book will focus on best practices for security, reliability, testability, observability, and performance. You'll combine all that you've learned and build upon that foundation, exploring the methodologies of continuous experimentation, deployment, and delivery before delving into some final thoughts on how to start making progress. By the end of this book, you'll be able to architect your own event-driven, serverless systems that are ready to adapt and change so that you can deliver value at the pace needed by your business. What you will learnExplore architectural patterns to create anti-fragile systems that thrive with changeFocus on DevOps practices that empower self-sufficient, full-stack teamsBuild enterprise-scale serverless systemsApply microservices principles to the frontendDiscover how SOLID principles apply to software and database architectureCreate event stream processors that power the event sourcing and CQRS patternDeploy a multi-regional system, including regional health checks, latency-based routing, and replicationExplore the Strangler pattern for migrating legacy systemsWho this book is for This book is for software architects who want to learn more about different software design patterns and best practices. This isn't a beginner's manual – you'll need an intermediate level of programming proficiency and software design to get started. You'll get the most out of this software design book if you already know the basics of the cloud, but it isn't a prerequisite.




Building Low-Code Applications with Mendix


Book Description

Transform your app ideas into fully functional prototypes with the help of expert tips and best practices from Mendix partners Key FeaturesMeet the ever-increasing demand for software solution delivery without having to write any codeBuild high-availability, low-cost applications unlike those developed via a traditional software engineering approachExplore Mendix from product design through to delivery using real-world scenariosBook Description Low-code is a visual approach to application development. It enables developers of varying experience levels to create web and mobile apps using drag-and-drop components and model-driven logic through a graphic user interface. Mendix is among the fastest-growing platforms that enable low-code enthusiasts to put their software ideas into practice without having to write much code, and Building Low-Code Applications with Mendix will help you get up and running with the process using examples and practice projects. The book starts with an introduction to Mendix, along with the reasons for using this platform and its tools for creating your first app. As you progress, you'll explore Mendix Studio Pro, the visual environment that will help you learn Mendix app creation. Once you have your working app ready, you'll understand how to enhance it with custom business logic and rules. Next, you'll find out how to defend your app against bad data, troubleshoot and debug it, and finally, connect it with real-world business platforms. You'll build practical skills as the book is filled with examples, real-world scenarios, and explanations of the tools needed to help you build low-code apps successfully. By the end of this book, you'll have understood the concept of low-code development, learned how to use Mendix effectively, and developed a working app. What you will learnGain a clear understanding of what low-code development is and the factors driving its adoptionBecome familiar with the various features of Mendix for rapid application developmentDiscover concrete use cases of Studio ProBuild a fully functioning web application that meets your business requirementsGet to grips with Mendix fundamentals to prepare for the Mendix certification examUnderstand the key concepts of app development such as data management, APIs, troubleshooting, and debuggingWho this book is for This book is for tech-savvy business analysts and citizen developers who want to get started with Mendix for rapid mobile and web application development. The book is also helpful for seasoned developers looking to learn a new tool/platform and for anyone passionate about designing technical solutions without wanting to indulge in the complexities of writing code. The book assumes beginner-level knowledge of object-oriented programming and the ability to translate technical solutions from business requirements.