The LibCF library access data files in accordance with the CF Conventions.
The functions of the CF library are intended to be interspersed with netCDF library calls. That is, the programmer will open or create a netCDF file with the netCDF API, and then add or read metadata with libcf library functions, then continue to working with the netCDF API to read and write data.
By using libcf, a data producer can produce files that conform to the CF standards, without having to write netCDF code to create and decode all the attributes that the CF convention uses to store meta-data. A data consumer can use libcf to read any file which conforms to the CF conventions; the file does not need to be created with libcf to be read by libcf.