Develop on iPad with Wazaterm

For personal use, I use it for light development and system maintenance. Specifically, I use it when I work at home (basically, I don’t work at home) or when I’m on a trip. I don’t do much development on iPad, but use it to deal with urgent problems and make simple changes.

In this article, I will explain the process of developing Rails on the iPad as an example.

What you need
  • An iPad
  • Physical keyboard*.
  • WebSSH (iOS app, used for ssh port forwarding)
  • Inspect (iOS app, used in place of the browser development tools).

*I am using Apple’s Magic keyboard.

Preparation

We will assume that you have already completed the initial setup for Rails app development referring to this.

1. Access Wazaterm with Safari

You don’t have to use Safari, but the new small tabs in iOS15 seem to work well with Wazaterm.

There are many problems with PWA (add to home screen) in iOS (websocket cuts off as soon as it goes to background, tab key doesn't work, etc.). Opean Safari and go to Wazaterm.com and show the terminal.

2. Start each process on Wazaterm.

If you are using Tmux, configure the editor, Rails server and so on. Suppose we use the port 8000 as web process.

$ rails server -p 8000

3. SSH port forwarding using a WebSSH application

Many SSH port forwarders fail in the background on iOS, but WebSSH uses VPN and never fails in the background. Up to one can be used for free. You can get your SSH private key through iCloud or Google Drive.

Untitled-2021-12-21-0839.png

4. View the website you are developing in a browser.

Type “localhost:8000” in the address bar and check if the website under development is displayed.

IMG_0612.png

5. Install Inspect and adjust the JS and CSS.

I think you can develop with this, but I still think you need developer tools for web development. There are various apps available, but I use Inspect for its minimal role as a developer tool. (I use my main Mac or ChromeOS to do full front-end development)

Screenshot

This is what the screen looks like when I’m working. Slack is a bit hard to use in tab but I'm using it. Shortcuts work to some extent, so you can go to the terminal with cmd+1 quickly.

IMG_0615.png