Full Stack Web Development with Remix Enhance the User Experience and Build Better React Apps by Utilizing the Web Platform
Develop a web application while learning how to harness the capabilities of the web platform and advanced technologies for an exceptional user experience Key Features Create a full stack web application using cutting-edge technologies such as distributed edge deploy, Redis, and multi-region database...
Otros Autores: | , |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing
[2023]
|
Edición: | First edition |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009784595906719 |
Tabla de Contenidos:
- Cover
- Title page
- Copyright and credits
- Foreword
- Contributors
- Table of Contents
- Preface
- Part 1 - Getting Started with Remix
- Chapter 1: The Era of Full Stack Web Frameworks
- Introducing Remix
- Remix is a web framework
- Remix is a full stack framework
- Understanding the philosophy behind Remix
- Primitives, conventions, and levers
- Primitives
- Conventions
- Levers
- Remix behind the scenes
- Remix is a compiler
- Remix is a router
- Remix is a runtime
- What Remix is not
- Summary
- Further reading
- Chapter 2: Creating a New Remix App
- Technical requirements
- Creating a "Hello World!" Remix app
- Understanding Remix's file and folder structure
- Exploring the client and server environments
- The two bundles of your Remix application
- Client and server code
- Troubleshooting Remix applications
- A Remix troubleshooting process
- Looking for answers
- Summary
- Further reading
- Chapter 3: Deployment Targets, Adapters, and Stacks
- Technical requirements
- Picking a deployment target
- Picking a JavaScript runtime
- Picking a hosting environment
- Making the final decision
- Switching between adapters
- Using Remix Stacks
- Working with Remix official stacks
- Working with custom templates
- Working with BeeRich
- Summary
- Further reading
- Chapter 4: Routing in Remix
- Technical requirements
- Working with Remix's route module API
- Route file-naming conventions
- Working with file-based routing
- Creating route modules
- Available route module exports
- Composing pages from nested routes
- Using route parameters for dynamic routing
- Parameterized route segments
- Sharing layouts
- Using parent layout routes
- Using pathless layout routes
- Handling navigations in Remix
- Navigating with Remix's link components
- Indicating page transitions.
- Redirecting a user from the server
- Summary
- Further reading
- Part 2 - Working with Remix and the Web Platform
- Chapter 5: Fetching and Mutating Data
- Technical requirements
- Fetching data
- Fetching data at the route level
- Fetching dynamic data in parameterized routes
- Loading data in parallel
- Mutating data
- Mutating data without JavaScript
- Mutating data with JavaScript
- Summary
- Further reading
- Chapter 6: Enhancing the User Experience
- Technical requirements
- Understanding progressive enhancement
- Progressive enhancement in Remix
- Making it work without JavaScript
- Making it worse before making it better
- Testing on slow networks
- Prefetching data
- Working with action data
- Handling concurrent mutations
- Adding a form to a list
- Supporting multiple pending states
- Summary
- Further reading
- Chapter 7: Error Handling in Remix
- Technical requirements
- Dealing with unexpected errors
- Invoking client and server errors
- Handling errors with the root error boundary
- Nested error handling
- Handling thrown responses
- Throwing responses
- Handling exceptions with error boundaries
- Creating a resilient experience
- Handling page-not-found (404) errors
- Summary
- Further reading
- Chapter 8: Session Management
- Technical requirements
- Working with search parameters
- Reading search parameters in loader functions
- Updating search parameters with form submissions
- Programmatically submitting forms
- Creating user sessions with cookies
- Working with Remix's session helpers
- Adding a user registration flow
- Adding a user login flow
- Deleting a session during logout
- Authenticating access to user data
- Accessing cookie data on the server
- Working with user data on the client
- Enforcing authentication on the server
- Summary
- Further reading.
- Chapter 9: Assets and Metadata Handling
- Technical requirements
- Using meta tags in Remix
- Declaring global meta tags
- Exporting the meta function
- Nesting meta exports
- Using loader data in meta functions
- Using matches data in meta functions
- Handling fonts, images, stylesheets, and other assets
- Working with static assets
- Managing links in Remix
- Styling in Remix
- Working with images in Remix
- Exposing assets with loader functions
- Summary
- Further reading
- Chapter 10: Working with File Uploads
- Technical requirements
- Using multi-part form data in Remix
- Processing files on the server
- Loading files into memory
- Using Remix's upload handler helper functions
- Authorizing access to assets with resource routes
- Forwarding files to third-party services
- Summary
- Further reading
- Part 3 - Advanced Concepts of Full Stack Web Development with Remix
- Chapter 11: Optimistic UI
- Technical requirements
- Considering optimistic UI
- Communicating rollbacks
- Synchronizing client and server states
- Synchronizing client and server states in Remix
- Adding optimistic UI updates in Remix
- Creating an expense
- Updating an expense
- Deleting an expense
- Removing an attachment
- Summary
- Further reading
- Chapter 12: Caching Strategies
- Technical requirements
- Working with HTTP caching
- Adding HTTP headers in Remix
- Caching public pages in shared caches
- Understanding Remix's built-in caching
- Caching personalized pages in private caches
- Caching immutable data responses
- Caching dynamic data responses with entity tags
- Exploring in-memory caching
- Summary
- Further reading
- Chapter 13: Deferring Loader Data
- Technical requirements
- Streaming data to the client
- Motivating server-side data fetching and streaming
- Understanding HTTP streaming requirements.
- Deferring loader data
- Summary
- Further reading
- Chapter 14: Real Time with Remix
- Technical requirements
- Working with real-time technologies
- Understanding polling
- Understanding SSE
- Understanding WebSocket
- Building real-time UIs with Remix
- Summary
- Further reading
- Chapter 15: Advanced Session Management
- Technical requirements
- Managing visitor sessions
- Implementing pagination
- Summary
- Further reading
- Chapter 16: Developing for the Edge
- Living on the edge
- Computing at the edge
- Running web apps on the edge
- Remixing the edge
- Understanding the edge's benefits and limitations
- Summary
- Further reading
- Chapter 17: Migration and Upgrade Strategies
- Migrating to Remix
- Migrating non-React apps to Remix
- Migrating from a React app
- Migrating from React Router
- Working with a backend application
- Keeping Remix apps up to date
- Summary
- Further reading
- Index
- Other Books You May Enjoy.