~alcinnz/rhapsode

ref: 8adde0e9dfa8899a23ffb5f19b7b2515c3838149 rhapsode/README.md -rw-r--r-- 1.3 KiB
8adde0e9 — Adrian Cochrane Don't use :not(), it's not supported by Stylish Haskell. 5 years ago
                                                                                
e7966356 Adrian Cochrane
6aa42076 Adrian Cochrane
e7966356 Adrian Cochrane
d310e8f0 Adrian Cochrane
3aa82b8b Adrian Cochrane
d310e8f0 Adrian Cochrane
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Rhapsode

Web browser targetting voice I/O.

## Desired Experience
Rhapsode will read a webpage outloud to you according to some special CSS properties. Arrow key navigation will be supported for navigation between headings, paragraphs, and table cells.

Links (defined generally enough to include `<audio>`, etc) will be indicated via a special beep for the user to repeat one back (via microphone or keyboard) at any time in order to navigate between pages. Rhapsode will start reading from the `<main>` element if present.

Forms will be rendered as ordinary elements and be navigated to as a link. Once navigated to you will be prompted to fill each input of the form in turn before reviewing/correcting your submission before sending it.

## Why?
Because I want The Web to be "universal", for browsers to have the slack they need to present it however best suits their users and the devices they use. Rhapsode demonstrates HTML/CSS's capabilities this way.

## Writing webpages for Rhapsode

* Make sure your webpage is readable without JavaScript or ideally CSS.
* Make good use of `<main>` and `<label>` tags, and the `alt`/`longdesc` attributes.
* [Optional] Write your own CSS for Rhapsode by adhearing to the (retired) [CSS Speech Module](https://www.w3.org/TR/css3-speech/)