The Arduino Micro is a microcontroller board based on the ATmega32u4 (datasheet) developed in conjunction with Adafruit. It has 20 digital input/output pins (of which 7 can be used as PWM outputs and 12 as analog inputs) a 16 MHz crystal oscillator a micro USB connection an ICSP header and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a micro USB cable to get started. It has a form factor that enables it to be easily placed on a breadboard.
The Micro is similar to the Arduino Leonardo in that the ATmega32u4 has builtin USB communication eliminating the need for a secondary processor. This allows the Micro to appear to a connected computer as a mouse and keyboard in addition to a virtual (CDC) serial / COM port.
This version is the Arduino Micro with headers. Click here for the Arduino Micro without headers.