Stablecoins promise to bridge fiat currencies with the world of
cryptocurrencies. They provide a way for users to take advantage of the
benefits of digital currencies, such as ability to transfer assets over the
internet, provide assurance on minting schedules and scarcity, and enable new
asset classes, while also partially mitigating their volatility risks. In this
paper, we systematically discuss general design, decompose existing stablecoins
into various component design elements, explore their strengths and drawbacks,
and identify future directions.