31. A system comprising: one or more processors; one or more non-transitory computer readable media comprising instructions which, when executed by one or more processors, causes performance of steps comprising: storing a first version of a particular document in storage accessible to a server-side machine; generating, by the server-side machine, an accessibility-enabled version of the particular document based on the first version of the particular document; wherein the accessibility-enabled version of the particular document has one or more accessibility features, which are not present in the first version of the particular document, that facilitate use of a particular assistive technology; storing the accessibility-enabled version in the storage accessible to the server-side machine; receiving a request, from a client-side machine, for the particular document; determining, by the server-side machine, whether to respond to the request with the first version of the particular document or the accessibility-enabled version of the particular document; responsive to determining to respond to the request with the first version of the particular document, the server-side machine sending the first version of the particular document to the client-side machine; and responsive to determining to respond to the request with the accessibility-enabled version of the particular document, the server-side machine sending the accessibility-enabled version of the particular document to the client-side machine.
31. A system comprising: one or more processors; one or more non-transitory computer readable media comprising instructions which, when executed by one or more processors, causes performance of steps comprising: storing a first version of a particular document in storage accessible to a server-side machine; generating, by the server-side machine, an accessibility-enabled version of the particular document based on the first version of the particular document; wherein the accessibility-enabled version of the particular document has one or more accessibility features, which are not present in the first version of the particular document, that facilitate use of a particular assistive technology; storing the accessibility-enabled version in the storage accessible to the server-side machine; receiving a request, from a client-side machine, for the particular document; determining, by the server-side machine, whether to respond to the request with the first version of the particular document or the accessibility-enabled version of the particular document; responsive to determining to respond to the request with the first version of the particular document, the server-side machine sending the first version of the particular document to the client-side machine; and responsive to determining to respond to the request with the accessibility-enabled version of the particular document, the server-side machine sending the accessibility-enabled version of the particular document to the client-side machine. 39. The system of claim 31 , wherein: the one or more accessibility features allow a user to navigate between two or more elements, in the second accessibility-enabled version of the particular document, using a keyboard; and the two or more elements could not be navigated using the keyboard in the first version of the particular document.