1. Урок 1. 00:01:23
    Course Overview
  2. Урок 2. 00:02:08
    Intro
  3. Урок 3. 00:01:01
    Agenda
  4. Урок 4. 00:04:36
    Why Reusable Components?
  5. Урок 5. 00:03:11
    Why Not Web Components?
  6. Урок 6. 00:04:33
    Why React?
  7. Урок 7. 00:00:55
    Decision Overview
  8. Урок 8. 00:01:43
    Decision 1: Audience
  9. Урок 9. 00:03:41
    Decision 2: Rigid vs. Flexible
  10. Урок 10. 00:02:54
    Warning: Tragedy of the Commons
  11. Урок 11. 00:06:45
    Decision 3: Link, Wrap, or Fork Third Parties?
  12. Урок 12. 00:03:26
    Decision 4: When Should I Add Components to My Library?
  13. Урок 13. 00:00:52
    How I'm Handling Demos and Issues
  14. Урок 14. 00:01:39
    Summary
  15. Урок 15. 00:00:51
    Intro
  16. Урок 16. 00:06:30
    Library vs. Standalone
  17. Урок 17. 00:05:18
    Environment Option 1: Boilerplate
  18. Урок 18. 00:04:33
    Environment Option 2: Documentation Tool
  19. Урок 19. 00:03:47
    Environment Option 3: Custom
  20. Урок 20. 00:01:16
    Install Node and Git
  21. Урок 21. 00:01:48
    Demo: Create GitHub Repository
  22. Урок 22. 00:05:53
    Demo: Create Project with Create React App
  23. Урок 23. 00:04:06
    Demo: Eject Create React App
  24. Урок 24. 00:01:00
    Summary
  25. Урок 25. 00:00:51
    Intro
  26. Урок 26. 00:02:37
    Documentation Goals
  27. Урок 27. 00:01:22
    Why Generate Documentation?
  28. Урок 28. 00:00:46
    Documentation Tools
  29. Урок 29. 00:03:57
    Custom Documentation Generation Approach
  30. Урок 30. 00:01:06
    Demo: Documentation Framework Setup
  31. Урок 31. 00:06:14
    Demo: Generate Component Metadata
  32. Урок 32. 00:03:44
    Demo: npm Scripts
  33. Урок 33. 00:02:11
    Demo: Create HelloWorld Component
  34. Урок 34. 00:01:54
    Demo: Create Docs Component
  35. Урок 35. 00:00:39
    Demo: Create Navigation Component
  36. Урок 36. 00:01:05
    Demo: Create ComponentPage Component
  37. Урок 37. 00:03:01
    Demo: Create Example Component
  38. Урок 38. 00:04:47
    Demo: Create Props Component
  39. Урок 39. 00:03:35
    Demo: Enhance HelloWorld with Comments
  40. Урок 40. 00:04:18
    Demo: Webpack Alias
  41. Урок 41. 00:01:29
    Syntax Highlighting
  42. Урок 42. 00:03:27
    Demo: Syntax Highlighting
  43. Урок 43. 00:02:43
    Potential Enhancements
  44. Урок 44. 00:00:43
    Summary
  45. Урок 45. 00:00:42
    Intro
  46. Урок 46. 00:00:41
    Tip 1: Avoid Weak Elements
  47. Урок 47. 00:01:28
    Tip 2: Declare PropTypes
  48. Урок 48. 00:01:21
    Tip 3: Don’t Hard Code HTML IDs
  49. Урок 49. 00:01:23
    Tip 4: Declare Logical Defaults
  50. Урок 50. 00:01:46
    Tip 5: Consider Accessibility
  51. Урок 51. 00:01:42
    Tip 6: Consider Configuration Objects
  52. Урок 52. 00:01:40
    Tip 7: Consider Server-side Rendering
  53. Урок 53. 00:01:33
    Tip 8: Honor the Single Responsibility Principle
  54. Урок 54. 00:05:28
    What Is Atomic Design?
  55. Урок 55. 00:01:25
    Why Atomic Design?
  56. Урок 56. 00:01:14
    Summary
  57. Урок 57. 00:00:35
    Intro
  58. Урок 58. 00:00:51
    What's an Atom?
  59. Урок 59. 00:02:26
    Decision 1: Wrap HTML Primitives?
  60. Урок 60. 00:03:34
    Decision 2: Folder Structure
  61. Урок 61. 00:00:55
    Tip 1: Honor the Native API
  62. Урок 62. 00:01:06
    Tip 2: Pass Props via Spread
  63. Урок 63. 00:02:09
    Tip 3: Use Spread with Destructuring
  64. Урок 64. 00:00:56
    Tip 4: Create Formatting Components
  65. Урок 65. 00:07:41
    Demo: ProgressBar Atom
  66. Урок 66. 00:04:29
    Demo: Label Atom
  67. Урок 67. 00:02:01
    Demo: Icon Atom
  68. Урок 68. 00:00:58
    Summary
  69. Урок 69. 00:00:44
    Intro
  70. Урок 70. 00:01:36
    What's a Molecule?
  71. Урок 71. 00:06:18
    Demo: TextInput Molecule
  72. Урок 72. 00:01:41
    TextInput Review
  73. Урок 73. 00:06:47
    Demo: PasswordInput
  74. Урок 74. 00:01:17
    PasswordInput Review
  75. Урок 75. 00:00:53
    Summary
  76. Урок 76. 00:00:49
    Intro
  77. Урок 77. 00:00:54
    What's an Organism?'
  78. Урок 78. 00:02:19
    Tip 1: Strong Opinions Are a Feature
  79. Урок 79. 00:04:42
    Tip 2: Keep Organisms Dumb
  80. Урок 80. 00:07:18
    Demo: RegistrationForm Organism
  81. Урок 81. 00:00:59
    Summary
  82. Урок 82. 00:01:08
    Intro
  83. Урок 83. 00:02:36
    Compiled CSS
  84. Урок 84. 00:03:13
    Naming Schemes
  85. Урок 85. 00:05:04
    Demo: CSS with BEM
  86. Урок 86. 00:03:57
    React Inline Styles
  87. Урок 87. 00:04:12
    CSS Modules
  88. Урок 88. 00:08:05
    Demo: CSS Modules
  89. Урок 89. 00:04:24
    CSS in JS
  90. Урок 90. 00:06:12
    Demo: CSS in JS via Styled-components
  91. Урок 91. 00:08:33
    Decision: Styling Approach
  92. Урок 92. 00:04:02
    Decision: Unstyled, Enforced, or Themeable?
  93. Урок 93. 00:02:31
    Theming Approaches
  94. Урок 94. 00:00:54
    Summary
  95. Урок 95. 00:01:33
    Intro
  96. Урок 96. 00:02:50
    Decision 1: Framework
  97. Урок 97. 00:05:28
    Decision 2: Testing Types
  98. Урок 98. 00:00:41
    Decision 3: Assertion Library
  99. Урок 99. 00:00:40
    Decision 4: Helper Libraries
  100. Урок 100. 00:01:00
    Decision 5: Where to Run Tests
  101. Урок 101. 00:00:49
    Decision 6: Where to Place Test Files
  102. Урок 102. 00:00:49
    Decision 7: When to Run Tests
  103. Урок 103. 00:08:13
    Demo: Unit Test
  104. Урок 104. 00:05:36
    Demo: Snapshot Test
  105. Урок 105. 00:05:22
    Demo: Interaction Test
  106. Урок 106. 00:01:42
    Continuous Integration
  107. Урок 107. 00:04:47
    Demo: Continuous Integration
  108. Урок 108. 00:01:14
    Summary
  109. Урок 109. 00:01:04
    Intro
  110. Урок 110. 00:03:31
    Decision 1: Open, Closed, or Inner Source?
  111. Урок 111. 00:03:28
    Decision 2: Package Hosting
  112. Урок 112. 00:04:38
    Decision 3: Import Approaches
  113. Урок 113. 00:05:10
    Decision 4: Declaring Package Files
  114. Урок 114. 00:00:53
    Decision 5: Output Format
  115. Урок 115. 00:06:30
    ES Module Build
  116. Урок 116. 00:03:11
    UMD Build
  117. Урок 117. 00:00:54
    Decision 6: Documentation Hosting
  118. Урок 118. 00:01:33
    Summary
  119. Урок 119. 00:00:59
    Intro
  120. Урок 120. 00:03:22
    Demo: Publish Docs via GitHub Pages
  121. Урок 121. 00:02:21
    Demo: Set up Readme
  122. Урок 122. 00:01:13
    Demo: Initial npm Configuration
  123. Урок 123. 00:05:22
    Demo: Production Component Library Build
  124. Урок 124. 00:02:14
    Preparing package.json for Publish
  125. Урок 125. 00:00:35
    Demo: Add Named Import Support
  126. Урок 126. 00:04:53
    Demo: Prepare package.json for Publish
  127. Урок 127. 00:01:28
    Demo: Publish npm Package
  128. Урок 128. 00:03:04
    Demo: Consume npm Package
  129. Урок 129. 00:02:11
    Demo: Compare Import Approaches
  130. Урок 130. 00:02:05
    Decision: Pick a Direct Import Approach
  131. Урок 131. 00:01:02
    Adding Short Direct Import Support
  132. Урок 132. 00:06:06
    Demo: Add Short Direct Import Support
  133. Урок 133. 00:04:08
    Demo: Releases
  134. Урок 134. 00:02:51
    Semantic Versioning
  135. Урок 135. 00:00:51
    Accepting Contributions
  136. Урок 136. 00:01:32
    Inspiration
  137. Урок 137. 00:00:54
    Challenge