001. Part 1. No framework
002. Chapter 1. Are frontend frameworks magic to you
003. Chapter 1. The framework we ll build
004. Chapter 1. Overview of how a frontend framework works
005. Chapter 1. Summary
006. Chapter 2. Vanilla JavaScript like in the old days
007. Chapter 2. Writing the application
008. Chapter 2. Summary
009. Part 2. A basic framework
010. Chapter 3. Rendering and the virtual DOM
011. Chapter 3. The virtual DOM
012. Chapter 3. Getting ready
013. Chapter 3. Types of nodes
014. Chapter 3. Element nodes
015. Chapter 3. Text nodes
016. Chapter 3. Fragment nodes
017. Chapter 3. Components The cornerstone of frontend frameworks
018. Chapter 3. Summary
019. Chapter 4. Mounting and destroying the virtual DOM
020. Chapter 4. Destroying the DOM
021. Chapter 4. Summary
022. Chapter 5. State management and the application s lifecycle
023. Chapter 5. Assembling the state manager into the framework
024. Chapter 5. Summary
025. Chapter 6. Publishing and using your framework s first version
026. Chapter 6. A short example
027. Chapter 6. Refactoring the TODOs app
028. Chapter 6. Summary
029. Chapter 7. The reconciliation algorithm Diffing virtual trees
030. Chapter 7. Comparing two virtual DOM trees
031. Chapter 7. Changes in the rendering
032. Chapter 7. Diffing objects
033. Chapter 7. Diffing arrays
034. Chapter 7. Diffing arrays as a sequence of operations
035. Chapter 7. Summary
036. Chapter 8. The reconciliation algorithm Patching the DOM
037. Chapter 8. Patching the DOM
038. Chapter 8. Publishing the framework s new version
039. Chapter 8. The TODOs application
040. Chapter 8. Summary
041. Part 3. Improving the framework
042. Chapter 9. Stateful components
043. Chapter 9. Components as classes
044. Chapter 9. Components with state
045. Chapter 9. Summary
046. Chapter 10. Component methods
047. Chapter 10. Binding event handlers to the component
048. Chapter 10. Mounting the DOM with a host component
049. Chapter 10. Patching the DOM with a host component
050. Chapter 10. Summary
051. Chapter 11. Subcomponents Communication via props and events
052. Chapter 11. Events
053. Chapter 11. Summary
054. Chapter 12. Keyed lists
055. Chapter 12. Extending the solution to element nodes
056. Chapter 12. Using the key attribute
057. Chapter 12. The application instance
058. Chapter 12. Publishing the framework
059. Chapter 12. Summary
060. Chapter 13. The component lifecycle hooks and the scheduler
061. Chapter 13. Implementing the mounted and unmounted lifecycle hooks
062. Chapter 13. The scheduler
063. Chapter 13. Publishing version 4 of the framework
064. Chapter 13. Summary
065. Chapter 14. Testing asynchronous components
066. Chapter 14. Publishing version 4.1 of the framework
067. Chapter 14. Where to go from here
068. Chapter 14. Summary