Fork me on GitHub


Important notice about the «ADG» project

Important notice: Due to large demand, the «Accessibility Developer Guide» project (currently a proof of concept with low priority) will become a top priority priority in 2017. We will make this guide become what it deserves to be for so long already: a comprehensive resource for all folks interested in accessibility. For this we need your support!

Windows in a box

Windows is the most used desktop operating system when it comes to accessibility.

You won't get around having a current version of it running when developing and testing accessible websites.

Why Windows is a must-have

  • Blind internet surfers use screenreader software to let it read the screen contents to them
  • You won't get around acquiring some Windows operating system
    • If you're on a Mac or Linux computer, you can install Windows as a virtual machine (see below)
    • Even if Windows is your host OS already, it's a good thing to do accessibility testing in a virtual machine, as otherwise, running test tools (like a screenreader) may impair your daily workflow

Using a virtual machine (VM)

  • The easiest way is to grab a free Windows VM from modern.IE and run it using VMWare virtualisation software
  • All these VMs are free and legal, as they will expire after some time period (90 days?)
  • I suggest you download the VM IE11 on Win7 as it can be re-activated a few times after expiration

VMWare Fusion (Mac)

  • Unzip the VM using The Unarchiver, as the built-in unzip version isn't capable of zip64 files
  • Download VMWare Fusion (Mac) or VMWare Workstation Player (Windows, Linux), install and launch it
    • There are alternatives to VMWare, but VMWare has proven to us to be the most seamless and performing option
  • Choose FileImport and select the *.ovf file in the extracted folder
  • Start the VM
  • If you have a retina display, under Virtual MachineSettings, go to Display and deselect Use full resolution for Retina display (otherwise your eyes will begin to hurt)
  • To be able to connect to the internet, first shutdown the VM, then add a network adapter by clicking on Add Device... and choosing Network Adapter
    • Use option Share with my Mac
    • You may have to start and restart the VM to make it work

Change behavior of function keys

  • NVDA makes use of the function keys (F1-F12) a lot
  • By default, you have to press the Fn key in addition to the function key to enable it
  • As NVDA shortcuts are quite tricky already, we suggest that you change the behaviour of function keys

Emulating the Insert key

  • Screenreaders rely heavily on the Insert key which isn't available on Macs, so you will have to emulate it
  • Download Karabiner, install and launch it
  • Under Misc & Uninstall click on Open private.xml, which will open a Finder window
  • Replace private.xml with (private.xml)
  • Reload the configuration by clicking Change Key and then Reload XML (you should see an entry Command-right to Insert (VMWare Fusion) in the list, make sure it is active!)
  • Now you can use your right Cmd key as Insert key (in VMWare Fusion only)
  • Feel free to choose some other key instead of right Cmd, see private.xml Reference Manual
  • PS: VMWare Fusion offers a similar feature under under PreferencesKeyboard & MouseKey Mappings
    • Here, you can map a key combination to Insert, but sadly not a modifier key alone
      • For example, you could map Option-X
      • Now whenever you have to press an NVDA keyboard shortcut, instead of Insert press Option-X (for example, instead of Insert-F7, press Option-X-F7)
      • This works for many cases, but some keyboard shortcuts of screenreaders are so complex that this won't work anymore
  • PPS: You can also buy an USB num lock keyboard

Prevent opening the Start menu when pressing Cmd-Tab

  • Power users are used to use Cmd-Tab to switch between opened applications in OSX
  • Sadly, this triggers the Start menu within the running Windows virtual machine
  • Prevent this by going to PreferencesKeyboard & MouseMac Host Shortcuts, then under For Windows key, use select Right Command Key.


  • We think it's easiest to have VMWare running in Single Window mode (default)
    • Use Cmd-Tab to switch between Mac apps
    • Use Alt-Tab to switch between Windows apps (when VMWare is active)
  • If you want all Windows apps to be accessible from the Dock, the "Unity" mode is pretty cool, too
    • Even the Windows' task bar icons will appear in the Mac's menu bar!
  • Whichever mode you prefer, simply start new Windows apps through the VMWare icon in the menu bar

VMWare preventing OSX from waking up correctly?

VMWare Workstation Player (Windows, Linux)


  • We think Single Window mode (default) isn't the best choice
    • There's a conflict between the host Windows and the virtual machine when using Alt-Tab.
  • We suggest to use the "Unity" mode
    • You will notice a yellow border around the virtual machine's windows (and a small yellow icon in their menu bars)
    • Simply start new Windows apps through the VMWare menu bar on the bottom left, right above the host Windows' Start menu
    • There's a small bug that causes the VMWare app to be displayed when switching between opened windows of the VM
      • This won't happen as long as the VMWare app window is minimized

Additional information

  • Because these free VMs expire after some time (and you have to download a new one), it's better to get a registered copy of Windows yourself because many accessibility related tools only run on Windows and you will customize and maintain your own selection over time.
  • If you already own a Windows serial, you can download the appropriate official ISO file directly from Microsoft → look here: Where can I download Windows 7 (legally from Microsoft)?


  • We hightly recommend to install an antivirus software in your VM, for example Avira Free Antivirus