The source code for the W3C HTML Validation Service is available under the terms of the W3C Software Copyright.
The purpose of making the source code available is partly to allow others to set up mirrors of the service (either publicly or within an intranet behind a firewall), but also to allow us to collaborate on making the service better -- there are many ways the service could be improved!
You can retrieve the code a number of ways:
The most interesting files are currently a CGI script called "check" that does pretty much everything, and possibly also the httpd.conf. (select the topmost revision numbers on these pages to see the most recent revision of each file.)
If you want a copy of all the files that make up the service, you can grab a tar ball (~2.0M, updated hourly.)
If you intend to actively mirror the code and/or contribute patches to the code, you should install and become familiar with CVS; this is the tool we use for revision control (it is also used by the Apache and Mozilla developers, and is generally a good thing to get to know.) More information on CVS is available courtesy of Pascal Molli.
Our CVS base is available read-only, using CVS pserver authentication a la:
bash$ export CVSROOT=":pserver:anonymous@dev.w3.org:/sources/public"
bash$ cvs login
(Logging in to anonymous@dev.w3.org)
CVS password: anonymous
bash$ cvs get validator
cvs server: Updating validator
cvs server: Updating validator/htdocs
U validator/htdocs/about.html
...
Before you will be able to get the code to run, you will need a few things already installed on your system:
If you try to use the code and succeed (or fail), please let us know!
For information on current development activity, see the www-validator
mailing list archives. To join in discussions about the Validator,
please join us in the #validator
IRC channel on
irc.OpenProjects.net
.
Some of the developers use IRC (Internet Relay Chat) to discuss development issues in real time; this takes place on a server run by the Open Projects IRC Network: server irc.openprojects.net, port 6667, channel #validator. If you are interested in contributing code, documentation or ideas, feel free to drop by.
Any changes to the service will attempt to maintain compatibility with a list of test cases. Any changes to the code or documentation related to the service cause a notification message to be sent to the www-validator-cvs mailing list.