It's all too easy assume that your web, mobile, or Internet of Things (IoT) app will run on a fast and reliable network with great coverage. The reality for your app's users, though, is often a slow and unreliable network with spotty coverage. What happens when the network doesn't work, or when the device is in airplane mode? You get unhappy, frustrated users. Building on the principles of Mobile First, Offline First is an approach to application design in which a web, mobile, desktop, or IoT application is built for offline usage first and is then progressively enhanced to take advantage of network connectivity when available.