I recently came across the Browsh project (https://www.brow.sh/) and
thought it might be relevant. I have no idea how friendly the current
implementation is to screen readers but it might be a good starting
point or at least interesting for reference. The maintainer of the
project might be willing to accept contributions to add a mode that is
better for screen readers. Caveat, it is written in Go, not Rust.

Joel Martin

On Sun, Sep 2, 2018 at 1:46 PM Aura Kelloniemi <kaura....@sange.fi> wrote:
>
> Dear Servo developers,
>
> I am a blind person who is very frustrated about the current situation of WWW
> accessibility. Until now I have been using traditional text web browsers
> (elinks, etc.). This road is coming to an end because these browsers do not
> support Javascript (or DOM events). I won't start using firefox with orca
> (GNOME project's screen reader), because it is absolutely slow and
> inconvenient.
>
> So I had an idea of writing my own very simple console web browser which would
> use an existing browser engine to run the DOM events. (See below to know which
> alternatives I've looked at).
>
> I would like to run servo's script component (and other components that are
> absolutely compulsory) to retrieve and parse documents, and run javascript on
> the DOM.
>
> I would like then to develop a simple rendering engine which would at first
> provide a REPL-like environment for querying page information, and maybe later
> write a basic terminal layout engine, if it seems like a feasible project.
>
> I am not new to Rust, but I don't have a lot of experience in working with
> such a big software projects as servo (and projects which have such a limited
> amount of documentation).
>
> So I want to ask you: what would be the steps I would need to do in order to
> achieve my goals.
>
> In detail:
> - What are the components of servo that I need to run?
> - How would I go about achieving that?
>
> I will try to do my best to be self sufficient and understand the architecture
> of servo, but at least for now trying to grasp the meaning of all servo's
> components feels like a daunting task.
>
> In ideal world I would like to avoid running any graphical rendering, because
> its results are not of any use for me.
>
> The other alternatives that I have looked at are:
> 1. PhantomJS - project development has ceased and I really don't want to write
> a big application in Javascript anyway.
> 2. PyQt5WebKit: Module deprecated
> 3. Haskell WebKitGtk: Haskell bindings have not been developed for a long time
> and as far as I understand I can't run it without X (xvfb feels like waste of
> resources).
> 4. WebDriver: It does not give me good access to the DOM - it really has not
> been designed for this kind of usage.
>
> Thank you in advance for any response!
>
> --
> Aura
> _______________________________________________
> dev-servo mailing list
> dev-servo@lists.mozilla.org
> https://lists.mozilla.org/listinfo/dev-servo
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to