In this paper, we present a framework that supports experimenting with evolutionary hardware design. We describe the framework’s modules for composing evolutionary optimizers and for setting up, controlling, and analyzing experiments. Two case studies demonstrate the usefulness of the framework: evolution of hash functions and evolution based on pre-engineered circuits.