A README file contains information about other files in a directory or archive of computer software. A form of documentation, it is usually a simple plain text file called READ.ME, README.TXT, README.md (for a text file using markdown markup), README.1ST – or simply README.
The file's name is generally always written in upper case. On Unix-like systems in particular this makes it easily noticed – both because lower case filenames are more usual, and because traditionally the ls command sorts and displays files in ASCIIbetical ordering, so that upper-case filenames appear first.
The contents typically include one or more of the following:
It is unclear when the convention began, but there are examples dating back to the mid 1970s.
A README file is a requirement in the GNU Coding Standards Since the advent of the web as a de facto standard platform for software distribution, many software packages have moved (or occasionally, copied) some of the above ancillary files and pieces of information to a website or , sometimes including the README itself, or sometimes leaving behind only a brief README file without all of the information required by a new user of the software. However, the popularity of GitHub (as well as older community conventions) has contributed towards README files still being widely used in open-source software (see next section).
On GitHub, if a Git repository has a README file in its main (top-level) directory, it is automatically converted into formatted HTML and presented on the main web page. Various different file extensions can be used, and conversion to HTML takes account of the file extension of the file – for example, a "README.md" would be treated as a GitHub-flavored Markdown file.