Cdarts is a low level implementation of a computer darts player. It can be used as an opponent against a human in the game, or it can be used as a simulator for fun. It currently supports only two different game types (301 and 501), but can be extended to support more games. It supports three different levels: beginner, hobbyist, and professional. Each level tries to simulate a human at that level as well as possible.