If you are using iOS 8, you can already shoot time-lapse using the built-in app. However, that app is too user-friendly and doesn't give you much control. In my opinion, a good time-lapse app must be able to provide the source pictures that generate the final output video. Why is that important? First, it is usually easier to edit still pictures than videos. Next, the resolution of your still pictures are usually higher than the final video e.g. 8 vs 2 megapixels and this allows you to generate even higher resolution video such as 4K or crop or achieve pan and zoom in your video (Ken Burns effect).
There are a plethora of time-lapse apps in the Apple App Store. Lapse It is probably one of the best out there. Unfortunately you need to pay to unlock critical features like taking HD or higher resolution pictures. If you don't feel like paying, iMotion is probably a better choice. It allows you to take full HD (1920x1080p) pictures and produce video up to 30fps. You can also save both the source pictures and the final video to your camera roll. Last but not least, it offers other interesting modes such as remote and mic. What more do you want in a free app? ^^;
One final tip: you may want to use manual focus in iMotion to prevent having pictures with slightly different focus and consequently the time-lapse video created may be a bit jerky.