Requires iOS 5 or higher
MyAlarm is a tweak that lets you play music from your music library instead of the system tones that apple provides for the built in Alarms.
All you have to do is go to the MyAlarm tab in the settings app, press "Choose Song" and choose the song you want for the alarm, and press "Set Song As Alarm". Alarms will now play that song when they go off. The songs also act as normal a normal alarm. When you slide it away the song turns off. Snooze is also perfectly functional with this tweak also.
It is also open source and you can view it here - Github
Configure options from Settings