Nathalia Rus

Building a large, complex product from the ground up with typescript & Atomic Design:lessons learned

What if you could prevent 38% of your bugs? Learn how combining TypeScript and Atomic Design creates a resilient, scalable frontend.

Building a large, complex product from the ground up with typescript & Atomic Design:lessons learned
#1about 2 minutes

Navigating the challenge of scaling a new codebase

Starting with a boilerplate create-react-app requires a clear strategy to build a scalable and maintainable product like those from major tech companies.

#2about 2 minutes

Adopting atomic design for structure and clarity

Design systems like atomic design are crucial for separating UI logic from business logic, leading to cleaner code and better performance.

#3about 3 minutes

A practical guide to the atomic design folder structure

The codebase is organized into atoms, molecules, organisms, pages, and templates, giving every component a designated and predictable place.

#4about 3 minutes

Creating scalable component libraries for icons and buttons

Centralizing components like icons and buttons into their own libraries makes updates, theming, and A/B testing manageable across the application.

#5about 3 minutes

Using Storybook to document and refactor components

Storybook helps document the UI component library, enforce component isolation, and provides a clear path for refactoring an existing codebase to atomic design.

#6about 5 minutes

Balancing pragmatism and avoiding overengineering

While the 'don't repeat yourself' principle is valuable, abstracting core business domain features too early can lead to rigid, hard-to-maintain code.

#7about 3 minutes

Lessons on testing, hooks, and framework lock-in

Prioritizing end-to-end testing on the frontend and using state management libraries like Redux helps avoid framework lock-in and ensures stability.

#8about 4 minutes

Why TypeScript is essential for building large applications

Adopting TypeScript significantly reduces bugs, provides auto-documentation through type definitions, and enforces a more scalable way of thinking.

#9about 2 minutes

How atomic design prevents common frontend anti-patterns

The principles of atomic design naturally discourage common anti-patterns like deeply nested components, which improves performance and maintainability.

Related jobs
Jobs that call for the skills explored in this talk.
SabIna compys

SabIna compys
Vienna, Austria

Remote
20-100K
Intermediate
JavaScript
.NET
+1

Featured Partners

Related Articles

View all articles
LM
Luis Minvielle
Developers share the most interesting tech they ever built
Most people's first thoughts about Hacker News revolve around venture capital, stock prices, company valuations, and $1499 dongles. But what if we told you that Hacker News could also be a place for pure, consummate, wholesome content that tackles ho...
Developers share the most interesting tech they ever built
BB
Benedikt Bischof
How we Build The Software of Tomorrow
Welcome to this issue of the WeAreDevelopers Live Talk series. This article recaps an interesting talk by Thomas Dohmke who introduced us to the future of AI – coding.This is how Thomas describes himself:I am the CEO of GitHub and drive the company’s...
How we Build The Software of Tomorrow

From learning to earning

Jobs that call for the skills explored in this talk.

Frontend Developer

JO Media Software Solutions GmBh
Brunn am Gebirge, Austria

Senior
CSS
Angular
JavaScript
TypeScript