User:Guy Keogh/verify

verify is a tool that helps with the verification of English-language Wikipedia articles by comparing information in the article against the information in its citations and external links. It is available as a web-app hosted by Toolforge at https://verify.toolforge.org/, and can be locally hosted as a web-app on your own computer.

The tool is written in Python using the Flask framework for website delivery, and is available under the BSD 2-Clause open-source license, with source code available on GitHub. The code available in the repository is the exact same code used for the web-app.

Submitting

 * 1) Type the name of an article. This is case-sensitive, as on Wikipedia two completely different articles can be held under the same name, just with different capitalisation.
 * 2) You can change the settings if you wish, by clicking the "Default settings" switch and checking what you wish to test for and unchecking what you don't.
 * 3) By default the citation needs to be in the same paragraph as the text being verified, instead of every piece of text being able to be verified through any citation; if you do not want this (best for small to medium articles, as processing will be slower), uncheck "Require citation to be in the same paragraph as the text being verified".
 * 4) Submit and wait (there's lots of processing to do).

Bookmarklet
You can also create a bookmarklet which submits the Wikipedia page you have open when clicked; to do this, create a bookmark with the following as the URL:

Reading the information

 * 1) If text is present above the article name ("Correct [number] URLs with errors?") there was a problem in downloading one or more URLs. If you wish, follow each URL, paste the URL into the box followed by it's text to get more complete results; you can repeat this for every URL you wish to evaluate, submitting when you're finished.
 * 2) Text that is highlighted in yellow and underlined doesn't seem to be in the citations, while text that's highlighted in green appears to be.

Note on the usage
The program is not definitive, as it only flags information that needs checking to make accurate spot-checking of articles faster.


 * This tool works especially well on biographies with web sources as references. It can't handle references from PDFs, tables, books, etc.
 * It doesn't translate, it makes direct comparisons between the citations and the article. If the citations are in a different language the text will most likely be marked as needing to be checked.
 * It does not check how the information is used compared to the citations. It merely ensures the word is present in a citation and used in a similar way (e.g. used as a noun, in a quote, etc).
 * If text is marked in yellow and underlined it merely means it needs double-checking, not that it's necessarily wrong. For example, things may simply be spelled differently, in a format the tool can't read (e.g. a video), be uncited but still correct, etc.

Feedback and suggesting improvements
Feedback on the tool, from reporting bugs to suggesting improvements to the design can be posted on my talk page. Preferably, bugs may instead be reported on GitHub. Sensitive security issues may be confidentially reported using the contact method(s) in the repository security policy or by sending me an email through Wikipedia.

Contributions and hosting it yourself
The tool is designed to be straightforward to set up, requiring only Python 3 and a few modules which can be downloaded straight from the Python command line; the steps are available in README.md in the GitHub repository.

To contribute create a fork of the GitHub source code, make your changes, then submit a pull request. Absolutely any improvements would be much appreciated.