Resources

Web Wrapper for Web Services

https://github.com/nativefier/nativefier

Can be used as a docker image without any additional installation.

docker run --rm -v /docker_data/config/nativefier/applications:/target nativefier/nativefier http://127.0.0.1:123 /target --platform osx --arch arm64 --name BookStack --icon /target/bookstack.icns

Explanations

-v /docker_data/config/nativefier/applications:/target → This mounts the volume to docker with a local path to docker path mapping. Output app will be saved in host applications folder which is also the target folder in docker.

nativefier/nativefider → Pulls the docker image from docker hub

http://127.0.0.1:1234 → The target website to be wrapped as an app

/target → The destination folder to save the app

--platform osx → Output as a Mac app

--arch arm64 → Uses arm64 architecture. M1 Mac uses arm64

--name Bookstack → Name of the output app.

--icon /target/bookstack.icns → The icon file to use for the app

Icon Files

https://github.com/walkxcode/dashboard-icons/tree/main/png

More than 1000 icons are available for download and more added frequently. Look for the desired image and download png file.

Use icon converter website such as ConvertICO to convert and rename to icns format for use by nativefier.

Setup on Mac

The .app file generated by nativefier is unable to be launched directly on my Mac due to error “This app is not compatible with your Mac”.

Use the following workaround instead (assuming application name to be wrapped is Bookstack :

  1. Right click the .app file and extract contents with Archive Utility. A new folder Contents  should be created in the same folder.
  2. Create a new folder which will be your application name (e.g Bookstack )
  3. Move folder Contents  into Bookstack  folder
  4. Rename Bookstack  folder to Bookstack.app . Mac will prompt you to confirm the changes.
  5. Once confirmed, there should be a Bookstack.app  with the icon specified during the creation of app.
  6. Move Bookstack.app  into Applications  folder and launch it. (optional)