# Codebase Structure These are the folders and some key files used to generate and store various unified hosts files. ## Data folders There are two facets of the hosts files generated by [/updateHostsFile.py](https://github.com/StevenBlack/hosts/blob/master/updateHostsFile.py): ### Basic hosts Basic hosts are domains that purvey advertising, malware, tracking, coin mining and other abominable behavior. These hosts are included in all our products. The [/data](https://github.com/StevenBlack/hosts/tree/master/data) folder holds the metadata and latest hosts for all our basic hosts sources. The hosts are updated automatically by `/updateHostsFile.py` which iterates all the subfolders within `./data`. ### Optional hosts extensions Hosts extensions include domains that push potentially addictive content like `porn`, `fake news`, `gambling`, and `social` media. The [/extensions](https://github.com/StevenBlack/hosts/tree/master/extensions) folder holds metadata and latest hosts for all our basic hosts sources. The hosts are updated automatically by `/updateHostsFile.py` which iterates all the subfolders within `./extensions`. ## Product folders ### Basic hosts The [basic hosts file](https://github.com/StevenBlack/hosts/blob/master/hosts), containing just adware, malware, etc, is stored in the root folder of this repository. The [/hosts/alternates](https://github.com/StevenBlack/hosts/tree/master/alternates) this folder contains the products of `updateHostsFile.py`, one subfolder for each permutation of `fakenews`, `gambling`, `porn`, and `social` media hosts, all of which include the base extensions containing hosts that block adware, malware, tracking, etc. ## Other notable files + [./readme_template.md](https://github.com/StevenBlack/hosts/blob/master/readme_template.md): This file is used to generate all the various readme files in this repository. Therefore, if you wish to change the readme, you need to change only this file.