WorldWideWeb: a simple web server utility for Mac, iPad and iPhone

Early today, The Iconfactory released its latest app, a simple web server utility called WorldWideWeb. Solidly developer-focused, the app serves files from a local directory to an auto-generated URL, making those files available on any device on your local network. While there are certainly more inventive use cases for such a utility, its general purpose is to test simple websites built on the web’s greatest primitive: HTML.

The star feature of WorldWideWeb is simplicity. The entire main interface of the application consists of two small sections: in the first you select a folder, and in the second you start or stop the web server. When the server is activated, a URL is generated. The app uses Bonjour to make the address available to any device on the same Wi-Fi network as the host. Simply copy and paste the URL or press the “Open in Browser” button to view the website natively in a web browser.

The main benefit of a tool like this is to allow developers to test their websites in an environment that matches their users. Although many coding apps for Mac support built-in previews of HTML websites, these previews may differ in their behavior from the actual web browsers from which users will view production websites. Also, simulating the size of devices is never as effective as viewing a website on the devices themselves. WorldWideWeb makes it easy for developers to open their developing website on a real smartphone or tablet sized device rather than using a simulator. They can then make changes to their files and simply reload the browser tab to see those changes live.

If you’re a Mac web developer, you probably know of other services that provide this use case. While I find it hard to imagine an easier out-of-the-box solution than WorldWideWeb, its simplicity also cripples it in many scenarios. The app’s advanced configuration options are extremely limited, making it unusable for server-rendered websites such as those written in React or PHP. This shortcoming will unfortunately prevent many (most?) modern web developers from having a use case for it.

The story here is a bit different for iPad and iPhone. These devices previously had no well-known way to achieve the functionality provided by WorldWideWeb, and certainly not with all the ease and elegance of an app from The Iconfactory. Now, alongside the excellent Runestone code editor (which I wrote about here last month), WorldWideWeb completes a potential end-to-end pipeline for web development on Apple’s mobile platforms. Of course, we’re mostly talking about the iPad here, and this addition continues to fuel my excitement about the state of developer tools on iPadOS. If you’re developing a website using standard HTML, CSS, and JavaScript, you can now seriously consider switching to the iPad as your full-time development machine. There’s still a long way to go for most developers considering iPadOS, but it’s exciting to see more holes in the process being filled.

As for the Mac, in the future I’d like to see The Iconfactory expand WorldWideWeb to serve more use cases. I think they could do it quite easily by having their app do it even less. Currently, it forces you to choose a folder and then sends requests to the files in it. I’d like to be able to override choosing a folder and instead give the app a port it would direct localhost traffic to. This would allow me to spin up my more advanced Docker development environment, while having a one-click Bonjour web server that I could then access from any device on my network.

For now, the app serves a more limited use case, although it does include some advanced options for developers. Using the gear icon in the web server section of the app, you can choose default file types, change the port the server is running on, have the app check other file types if an extension is missing or send query logs to a chosen location. These options are still quite limited, but The Iconfactory points out in its blog post introducing the app that you can use them to serve static test data for API endpoints. I feel like there are better ways to accomplish something like this given WorldWideWeb’s otherwise extremely limited usefulness for advanced development needs, but your mileage may vary if you’re willing to put in the effort. creativity.

WorldWideWeb has positioned itself in a venerable, albeit declining, niche of web development. I admire his dedication to the sacred art of pure HTML. Although the app is exceptionally modern in its implementation, it is delightfully reminiscent of an earlier era of the web; reminding us of a time before creepy ads, bloated web pages and invasive tracking. Although my current development needs do not match the narrow scope of the application, I hope that future updates could pave the way for me to use it.

WorldWideWeb is available for free via the App Store on macOS, iPadOS and iOS.