App built with Ionic Framework and Angular.js that implements this popular and challenging puzzle. It allows you to play in two different modes, Basic with a partition of 8 pieces (3x3) and Hard, with a 15 pieces puzzle.
It is tested on Android, providing a native-like experience only using HTML5, making it easier for a developer used to Web technologies.
Regarding the code, you can have a look at it in its Github repository. Among Ionic built-in services, the app uses its own services, using dependency injection to properly encapsulate the different functionalities.
The most remarkable features implemented are encapsulated in the following services.
Due to this is not a difficult problem, the way the project is organized is an app.js file where routes are initialized, a controllers.js file with all the controllers and the services.js file, where all the encapsulated services are located.