The unopinionated nature of React is both a blessing and a curse. It grants you the freedom to make your own decisions, but it also lacks conventions to rely on. Unfortunately, early decisions in a project can result in an unmaintainable codebase in the long run, costing you time and money... and maybe your reputation.
While we do have some conventions as React developers, such as the "feature-driven" folder structure, they only address a small portion of the complex systems we build. Creating a good architecture involves more than just organizing code.
Surely, there must be a better way!
Over the decades, numerous scalable software architectures have been developed by highly experienced developers who are much smarter than you or me. These architectures were designed for large, scalable, and resilient applications.
They save time and money (and may even get you a promotion). Many backend frameworks have embraced them, and even Angular does a commendable job in that regard. So why not React?
Adapting a Clean, Hexagonal, or Layered architecture to React apps with their components, hooks, and contexts is not a straightforward task. The terminology alone, with concepts like "entities," "use cases," "controllers," and "adapters," can be overwhelming if you haven't experienced a proper architecture before.
And when you look at the images associated with these architectures, they don't seem to be built for our modern web apps, do they?
Is this level of complexity truly necessary?
Introducing the "Pragmatic React Architecture"! This upcoming workshop will teach you how to build your React apps in a scalable and maintainable way. You'll gain hands-on experience by refactoring a typical codebase to adopt a proper architecture loosely based on Bob Martin's Clean Architecture.
The workshop follows a step-by-step approach, focusing on practical implementation rather than bombarding you with lengthy and intense theory sessions upfront. You'll learn to identify the parts that are most valuable to you and your project, enabling you to create a solid architecture without unnecessary complexities.
The first iterations of this workshop will be free for anyone on the waitlist. Spots are limited though so join quickly. I'll share exact details about the workshop soon.
Your Instructor
I'm Johannes Kettmann, and I bring over a decade of experience working with React. Throughout my career, I've had the opportunity to work on both small and large-scale React projects. Most of them followed the common "naturally evolved" architecture, which unfortunately resulted in challenges such as increased time to implement new features, maintenance difficulties, and refactoring overhead.
Driven by my curiosity for patterns, best practices, and software architecture, I delved deeper into these areas. However, after witnessing more than a dozen projects, I noticed that these valuable principles were often neglected in React apps.
Motivated by this realization, I decided to create the course that I wish I had access to a long time ago. It aims to address the gaps in applying patterns, best practices, and solid software architecture specifically in React projects. Join me on this journey, and let's build a better foundation for your React apps together.
The first iterations of this workshop will be free for anyone on the waitlist. Spots are limited though so join quickly. I'll share exact details about the workshop soon.