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

Reply via email to