A HyperText Markup Language (HTML) reader can be any of three types of computer software. The term is commonly used to indicate a program that has been designed to display HTML documents, but without the heavyweight components and online requirements of a web browser. An HTML reader also can be a programming component or library — sometimes included with an operating system — that can be called from within an application to process an HTML document. "HTML reader" also is the name given to a program or programming component intended to capture HTML code from a stream, whether online or embedded in a file, so the underlying code can be studied.
The wide array of different devices that have some online connectivity and also are used as mobile platforms means different hardware profiles exist that might not always be suitable for running a fully featured web browser. In addition, there are some operating systems for devices that have no functional ports of web browsers available. The use of a lightweight HTML reader in these cases can give the user of a device the ability to read HTML documents without the need to run complex interpreters or scripting engines in the background.
Another use for HTML reader software is to provide a clean interface for reading HTML documents that might not necessarily be considered web sites and might not be online. Electronic books, or ebooks, are sometimes published in HTML format because it is very easy to obtain and use an HTML reader on a wide variety of platforms. In an office setting, an HTML reader can be used to view dynamic reports or documents generated in larger, more complex programs without requiring the user to understand how to operate the larger office suite of programs.
In a programming environment, an HTML reader can be a software component that is integrated into a larger, separately developed application. Some web browsers, for example, use a reader for part of the rendering performed in the main window before more complex display engines modify the formatting. Through the use of a reader, any input stream that has been written in HTML can easily be converted into a properly formatted string that then can be processed or displayed.
An HTML reader also can be a program or programming object designed to connect to a remote server or scan a file with the intention of extracting HTML codes that might otherwise be stripped by a more formal program or obfuscated within a proprietary format. This can be used to see how an HTML document is constructed, or it can be used to capture input from a server that is using HTML as part of a communications protocol. The use of a reader in these situations is sometimes required when the originating program is attempting to hide or protect the HTML code being used.