Talks
Speakers
Events
Topics
Search
Sign in
Search
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
search talks for
⏎
Suggest modification to this talk
Title
Description
Progressive web applications (PWAs) allow us to provide rich offline experiences as native apps would, while still being easy to use and share, as web apps are. Come to learn how to turn your regular Rails application into a PWA, taking advantage of the new front-end tools that come with Rails by default since version 7. https://www.wnb-rb.dev/meetups/2023/05/30
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
The session led by Alicia Rojas at the WNB.rb Meetup focused on building offline experiences with Progressive Web Applications (PWAs) using Ruby on Rails. Rojas began by defining PWAs and discussing their advantages, such as enhanced reliability, installability, and the capacity to work offline, making them rich in user experience compared to traditional web apps. Key points discussed include: - **PWAs Overview**: Progressive Web Applications are designed to combine the best features of web and native applications, offering enhanced capabilities like offline support and push notifications. - **Case Study**: Rojas presented a case study where a PWA was developed for the Italian government to assist farmers and technicians in assessing farm sustainability. The need for offline functionality was critical due to unreliable internet access in rural areas. - **Implementation**: The speaker detailed the two main assets required to convert a Rails application into a PWA: - **Service Workers**: These act as intermediaries between the web browser and server, intercepting requests to enhance performance and provide offline capabilities. - **App Manifest**: This JSON file allows the browser to manage how the PWA is displayed on users' devices, helping to replicate a native application experience. - **Storage Solutions**: Rojas explored browser storage options, particularly focusing on IndexedDB for storing complex objects and the Background Sync API, which helps synchronize data in the background when internet connectivity is restored. - **User Control Over Synchronization**: The importance of giving users control over when synchronization occurs was emphasized, leading to a discussion on implementing a manual sync button using Stimulus, a JavaScript framework. - **Data Display**: Strategies for displaying data collected in IndexedDB were also addressed, using the Mustache library to render objects on the user interface. - **Best Practices**: Rojas highlighted the need for front-end and back-end validation to prevent errors during synchronization and the necessity for assessing browser compatibility based on user demographics. **Conclusions and Takeaways**: - PWAs can significantly enhance web applications, making them practical for diverse audiences, including those in rural locations. - Utilizing frameworks like Stimulus can simplify the implementation of offline features, guiding developers to create applications that behave similarly to single-page apps with minimal JavaScript. Rojas concluded the presentation with encouragement for developers to explore the capabilities of PWAs to create impactful web solutions.
Suggest modifications
Cancel