areaDetector is a new EPICS module designed to support 2-D detectors. It is modular C++ code that greatly simplifies the task of writing support for a new detector. It also supports plugins, which receive detector data from the driver and process it in some way. Existing plugins perform Region-Of-Interest extraction and analysis, file saving (in netCDF, HDF, TIFF and JPEG formats), color conversion, and export to EPICS records for image display in clients like ImageJ and IDL. Drivers have now been written for many of the detectors commonly used at synchrotron beamlines, including CCDs, pixel array and amorphous silicon detectors, and online image plates.