About This Title

Pages: 184
Published: August 2024
ISBN: 9798888650769
In Print

Skill Level Meter

Server-Driven Web Apps with htmx

Any Language, Less Code, Simpler Code

by R. Mark Volkmann

htmx is a library that adds logic and server interaction to HTML; you get the effect of using a front-end SPA framework without writing front-end code. Use any server-side programming language and framework to build server applications with endpoints that simply return snippets of HTML. Dynamically update portions of the current web page from HTTP responses. Add interactivity with JavaScript and libraries such Alpine and _hyperscript. Make your apps more secure by escaping user-supplied content and specifying a Content Security Policy. Go beyond basic HTTP requests with WebSockets and server-sent events.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $22.95 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal


Paperback Formats:

Please support indie bookstores!
Find indie bookstores in the U.S. Find indie bookstores around the world.


The htmx JavaScript library gives you a new way to craft web applications. The htmx approach differs significantly from that of the currently popular single-page application (SPA) frameworks; rather than write a bunch of JavaScript, you simply annotate HTML elements before you send them to the browser. The resulting code is easier to understand and modify, and because it downloads less to the browser and doesn’t need JSON creation and parsing, you’ll find it performs better, too.

  • Rethink web application design; write code in any language that simply responds to requests with htmx snippets.
  • Dynamically update portions of the current web page directly from the server.
  • Implement common patterns such as lazy loading, input validation, CSS transitions, active search, optimistic updates, pagination, infinite scroll, polling, and click-to-edit.
  • Add interactivity with JavaScript and libraries such as Alpine and _hyperscript.
  • Use the htmx JavaScript API to simplify DOM operations.
  • Make your web apps more secure: escape user-supplied content, use Subresource Integrity hashes, and enforce a Content Security Policy.
  • Go beyond the basic HTTP request/response pattern with WebSockets and server-sent events.

Discover a simpler way to implement web applications that emphasizes web fundamentals.

What You Need

  • A modern web browser and the ability to build and run a local HTTP server using the server-side language and framework of your choice.
  • The code examples are fully compatible with htmx 2.0.

Resources

Releases:

  • P1.0 2024/08/14
  • B4.0 2024/07/30
  • B3.0 2024/07/10
  • B2.0 2024/06/21

Contents & Extracts

  • Foreword
  • Preface
    • Required Knowledge
  • Jumping In excerpt
    • Choosing a Tech Stack
    • Using htmx Attributes
    • Creating Your First Project
    • Creating a CRUD Application
    • Your Turn
    • Wrapping Up
  • Exploring Server Options
    • Making the Grade
    • Popular Choices
    • Our Choice
    • JavaScript Tooling
    • Your Turn
    • Wrapping Up
  • Developing Endpoints
    • HTTP Requests
    • HTTP Responses
    • Endpoint Targets
    • Widening the Scope
    • Performing Out-of-Band Swaps
    • Triggering Events
    • Putting It Into Practice
    • Your Turn
    • Wrapping Up
  • Recipes for Common Scenarios excerpt
    • Boosting
    • Lazy Loading
    • Input Validation with API Calls
    • Deleting an Element
    • CSS Transitions
    • Resetting a Form
    • Active Search
    • Optimistic Updates
    • Pagination
    • Infinite Scroll
    • Toggling Selection
    • Polling
    • Custom Dialogs
    • Adding Headers to All Requests
    • Click to Edit
    • HTML and JSON Endpoints
    • Automating Reload
    • Your Turn
    • Wrapping Up
  • Implementing Interactivity
    • Alpine
    • _hyperscript
    • Your Turn
    • Wrapping Up
  • Utilizing the htmx JS API
    • DOM Methods
    • Styling Methods
    • Event Methods
    • Other Methods
    • htmx.config Object
    • htmx.ajax Method
    • htmx.process Method
    • Your Turn
    • Wrapping Up
  • Adding Security excerpt
    • Scrutinize Resources
    • Escape User-Supplied Content
    • Sanitize User-Supplied Content
    • Make Cookies Secure
    • Make CDN Downloads Safer
    • Specify a Content Security Policy
    • Cross-Site Scripting Attacks (XSS)
    • Your Turn
    • Wrapping Up
  • Beyond Request/Response
    • WebSockets
    • Server-Sent Events (SSE)
    • Your Turn
    • Wrapping Up

Author

Mark Volkmann is a Partner and Distinguished Engineer at Object Computing, Inc. in St. Louis where he has provided software consulting and training since 1996. As a consultant, Mark has assisted many companies with JavaScript, Node.js, htmx, Svelte, React, Vue, Angular, Swift, SwiftUI, and much more.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $22.95 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal


Paperback Formats:

Please support indie bookstores!
Find indie bookstores in the U.S. Find indie bookstores around the world.

Related Titles:

Skill Level Meter

About This Title

Pages: 184
Published: August 2024
ISBN: 9798888650769
Edition: 1
In Print