mirror of
https://github.com/bigskysoftware/hypermedia-systems.git
synced 2025-12-03 00:03:50 -05:00
118 lines
2.8 KiB
Plaintext
118 lines
2.8 KiB
Plaintext
== Outline
|
|
|
|
[none]
|
|
. 1 Reintroducing Hypermedia
|
|
[none]
|
|
.. 1.1 So, What Is Hypermedia?
|
|
.. 1.2 Why Use Hypermedia?
|
|
.. 1.3 REST
|
|
.. 1.4 When Should You Use Hypermedia?
|
|
.. 1.5 When Shouldn't You Use Hypermedia?
|
|
.. 1.6 Summary
|
|
|
|
. 2 A Simple Web Application
|
|
[none]
|
|
.. 2.1 A Simple Contact Management Web Application
|
|
.. 2.2 A Brief Introduction to Flask & Our First Route
|
|
.. 2.3 Contact.App Functionality
|
|
.. 2.4 Summary
|
|
|
|
. 3 Extending HTML As Hypermedia
|
|
[none]
|
|
.. 3.1 The Shortcomings of "Plain" HTML
|
|
.. 3.2 Extending HTML as a Hypermedia with htmx
|
|
.. 3.3 Triggering HTTP Requests
|
|
.. 3.4 Targeting Other Elements
|
|
.. 3.5 Swap Styles
|
|
.. 3.6 Using Other Events
|
|
.. 3.7 Passing Request Parameters
|
|
.. 3.8 History Support
|
|
.. 3.9 Summary
|
|
|
|
. 4 Putting Hypermedia Into Action
|
|
[none]
|
|
.. 4.1 Installing htmx
|
|
.. 4.2 Adding AJAX Navigation
|
|
.. 4.3 Deleting Contacts
|
|
.. 4.4 Next Steps: Validating Emails
|
|
.. 4.5 Another Improvement: Paging
|
|
.. 4.6 Summary
|
|
|
|
. 5 Advanced Hypermedia Patterns
|
|
[none]
|
|
.. 5.1 Active Search
|
|
.. 5.2 Lazy Loading
|
|
.. 5.3 Inline Delete
|
|
.. 5.3 Bulk Delete
|
|
.. 5.4 Summary
|
|
|
|
. 6 Hyperview: A Mobile Hypermedia
|
|
[none]
|
|
.. 6.1 State of Mobile App Development
|
|
.. 6.2 Hypermedia for Mobile Apps
|
|
.. 6.3 Introduction to HXML
|
|
.. 6.4 Summary
|
|
|
|
. 7 Building a Contacts App with Hyperview
|
|
[none]
|
|
.. 7.1 Setup
|
|
.. 7.2 Contacts screen
|
|
.. 7.3 Contact screen
|
|
.. 7.4 Extending the client
|
|
.. 7.5 One Backend, Multiple Hypermedia
|
|
.. 7.6 Summary
|
|
|
|
. 8 Client Side Scripting
|
|
[none]
|
|
.. 8.1 Scripting in Hypermedia-Driven Applications
|
|
.. 8.2 Scripting languages for the Web
|
|
.. 8.3 Using off-the-shelf components
|
|
.. 8.4 Events and the DOM
|
|
.. 8.5 Adding a Keyboard Shortcut for Focusing the Search Input With VanillaJS
|
|
.. 8.6 Adding Support for Re-Ordering Contacts (No Scripting Needed!)
|
|
.. 8.7 Adding Support for a Drop-Down with AlpineJS
|
|
.. 8.8 Adding a Nicer Confirmation for Deleting Contacts With _hyperscript
|
|
.. 8.9 Being Pragmatic
|
|
.. 8.10 Summary
|
|
|
|
. 9 Data APIs & Hypermedia Driven Applications
|
|
[none]
|
|
.. 9.1 Data APIs
|
|
.. 9.2 Hypermedia APIs & Data APIs
|
|
.. 9.3 Adding a JSON Data API To Contact.app
|
|
.. 9.4 Summary
|
|
|
|
. 10 Creating A Dynamic Download UI
|
|
[none]
|
|
.. 10.1 A Dynamic Archive UI
|
|
.. 10.2 Polling
|
|
.. 10.3 Smoothing Things Out: More On The htmx Swap Model
|
|
.. 10.4 Dismissing The Download UI
|
|
.. 10.5 Auto-Download
|
|
.. 10.6 Summary
|
|
|
|
. 11 Developing With htmx
|
|
.. 11.1 Getting Deeper Into htmx
|
|
.. 11.2 htmx Attributes
|
|
.. 11.3 Events
|
|
.. 11.4 HTTP Requests & Responses
|
|
.. 11.5 Updating Other Content
|
|
.. 11.6 Debugging
|
|
.. 11.7 Security Considerations
|
|
.. 11.8 Configuring
|
|
.. 11.9 Summary
|
|
|
|
. 12 Other Hypermedia-Oriented Technologies
|
|
[none]
|
|
.. 12.1 Unpoly
|
|
.. 12.2 Hotwire
|
|
.. 12.3 jQuery
|
|
.. 12.4 VanillaJS
|
|
.. 12.5 Summary
|
|
|
|
. 13 Conclusion
|
|
[none]
|
|
.. 13.1 Hypermedia Reconsidered
|
|
.. 13.3 Pausing, And Reflecting
|
|
|
|
. Appendix 1: A Review of Chapter 5 of Roy Fielding's Dissertation On The Web |