U&I with React
U&I with React (Developer)
Free!
Minimum
$14.99
Suggested
U&I with React

Last updated on 2017-08-10

About the Book

Frontend development has undergone a major transformation with modern frontend technologies, such as React, Angular, Vue, and so forth. This is largely due to the wide adoption of component-based architecture provided by these wildly successful technologies.

This book aims to not only guide readers from the foundational building blocks of creating well structured interfaces but also provide an exhaustive list of different philosophies for creating modular, extendable and scalable U&I — i.e. UI intended for all developers, like you and I.

This book is ideal for developers who are familiar with React and are looking for a comprehensive guide for building modular, extendable and scalable user interfaces. Even though this book is intended for intermediate to advanced React developers, anyone new to React can easily follow along given the progressive format of this book where each chapter builds on the chapters before.

Topics

Even though the concepts in this book are taught via React, they are transferable to other frontend technologies. I chose React as our base because of simplicity, wide adoption, and undeniable power that it provides.

Chapter 1: Introduction

Explains a brief history of web development and the rise of component-based architecture.

Chapter 2: What is U&I?

Provides an in depth view of U&I and the criteria for building them.

Chapter 3: Getting Started

Outlines some of the base technologies we'll be using and then walks us through setting up a boilerplate codebase.

Chapter 4: Building our App

Guides us through building the foundation of our application.

Chapter 5: Using U&I Concepts

Guides us on refactoring our application using U&I best practices.

Chapter 6: Exploring CSS Preprocessors

Explains CSS preprocessors and guides us on refactoring our interface using Sass.

Chapter 7: Exploring CSS Modules

Introduces CSS modules and guides us on refactoring our interface using CSS modules.

Chapter 8: Exploring Inline Styles

Takes us on a journey through inline styles and guides us on refactoring our application using this dated philosophy in a modern setting.

Chapter 9: Adding Real Time Capabilities

Introduces an entirely new perspective of looking at interactive interfaces and helps bring our application to life with real time capabilities.

Chapter 10: Showcasing

Guides us on how we can build, document and showcase our components in an isolated environment.

Chapter 11: Looking Ahead

Compares the various methodologies covered throughout this book, with a glimpse into the future of UI development.

Table of Contents

  • Profile
    • About the Author
    • Contact Details
  • Preface
    • Topics
      • Chapter 1: Introduction
      • Chapter 2: What is U&I?
      • Chapter 3: Getting Started
      • Chapter 4: Building our App
      • Chapter 5: Using U&I Concepts
      • Chapter 6: Exploring CSS Preprocessors
      • Chapter 7: Exploring CSS Modules
      • Chapter 8: Exploring Inline Styles
      • Chapter 9: Adding Real Time Capabilities
      • Chapter 10: Showcasing
      • Chapter 11: Looking Ahead
    • Requirements
    • Audience
    • Conventions
    • Example Code
    • Feedback
    • Errata
    • Piracy
    • Contributions
    • Questions
  • Chapter 1: Introduction
    • A Brief History of Web Development
      • Inline Styles
      • Internal CSS
      • External CSS
      • CSS Classifiers
      • A Necessary Change
    • The Rise of Components
    • Summary
  • Chapter 2: What is U&I?
    • UI Components
    • U&I Components
      • Sample U&I Contract
        • No global namespace
        • Unidirectional styles
        • Dead code elimination
        • Minification
        • Shareable constants
        • Deterministic resolution
        • Isolation
        • Extendable
        • Documentable
        • Presentable
    • Summary
  • Chapter 3: Getting Started
    • Tools
      • Webpack
      • Modern JavaScript with Babel
      • JSX
      • ESLint
      • Others
    • Our Project
    • Boilerplate
    • Overall Structure
    • A Clean Slate
    • Summary
  • Chapter 4: Building our App
    • First pass
    • Styling our App
    • Summary
  • Chapter 5: Using U&I Concepts
    • Organization
    • Necessary Components
      • On <App />
      • On <TodosList />
      • On <TodosListItem />
      • Others?
      • Building <TodosList />
      • Building <TodosListItem />
    • Considering U&I Concepts
      • Name Spacing Components
        • Application Name Spacing
        • Component Name Spacing
      • Unidirectional styling
      • Extendibility
      • In Action
        • Implementing App Name Spacing
        • Implementing Component Name Spacing
        • Implementing Extendable & Unidirectional Styles
    • Summary
  • Chapter 6: Exploring CSS Preprocessors
    • What is a CSS Preprocessor?
    • Why use a Preprocessor?
    • Meet Sass
    • Sass in Action
      • Configuring our Styles
      • Refactoring <App />
      • Refactoring <TodosList />
      • Refactoring <TodosListItem />
    • Enhancements
      • On <TodosListInfo />
      • Building <TodosListInfo />
    • Summary
  • Chapter 7: Exploring CSS Modules
    • What are CSS Modules?
    • Why use CSS Modules?
    • CSS Modules in Action
      • Refactoring styles/*.scss
      • Refactoring <App />
      • Refactoring <TodosList />
      • Refactoring <TodosListInfo />
      • Refactoring <TodosListItem />
        • Suggested Exercise
    • Summary
  • Chapter 8: Exploring Inline Styles
    • What are Inline Styles
    • Inline Styles in Action
      • Configuring our Styles
      • Refactoring <App />
      • Refactoring <TodosList />
      • Refactoring <TodosListInfo />
      • Refactoring <TodosListItems />
    • Inline Styles Enhanced
    • What is Radium?
    • Radium in Action
      • Configuring our Styles
      • Refactoring <App />
      • Refactoring <TodosList />
      • Refactoring <TodosListInfo />
      • Refactoring <TodosListItems />
    • Suggested Exercise
    • Summary
  • Chapter 9: Adding Real Time Capabilities
    • What is Theme Wrap?
    • Theme Wrap in Action
      • Refactoring <App />
      • Refactoring <TodosList />
      • Refactoring <TodosListInfo />
      • Refactoring <TodosListItem />
    • Dynamic Theme
    • Mixins
    • Summary
  • Chapter 10: Showcasing
    • What is Storybook?
    • React Storybook in Action
      • Documenting <TodosList />
      • Documenting <TodosListInfo />
      • Documenting <TodosListItem />
    • Summary
  • Chapter 11: Looking Ahead
    • Explorations
      • CSS Next
      • CSS in JS
      • Hardware Accelerated UI
    • Conclusion

Packages

Developer

Are you a professional developer? You can support the book with a nominal price.

  • English

  • PDF

  • EPUB

  • MOBI

  • APP

Free!
Minimum
$14.99
Suggested
Student

Are you a student or a beginner to web development? You can pay whatever you want for the book to get started.

  • English

  • PDF

  • EPUB

  • MOBI

  • APP

Free!
Minimum
$9.99
Suggested

About the Author

Farhad Ghayour
Farhad Ghayour

Farhad Ghayour is a technology consultant based out of San Francisco, CA, where he helps transform Fortune 500 companies worldwide. Currently, he is focused on solutions at the intersection of computer graphics, vision and machine learning. Previously, he was a core contributor to the Famous open source 3D WebGL rendering engine, lead software engineer at various innovative startups around the world, philosophy teacher, and investment banker. He is passionate about all things philosophy, math, code and design — and every so often you can find him in the high horsepower car racing scene.

Twitter: @farhadg_com

GitHub: github.com/farhadg

LinkedIn: linkedin.com/in/farhadg

Website: farhadg.com

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Write and Publish on Leanpub

Authors and publishers use Leanpub to publish amazing in-progress and completed ebooks, just like this one. You can use Leanpub to write, publish and sell your book as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub