Android Daily is a web application that helps users discover cool and useful apps. People visit the website to read app reviews and grab new ones to bring out the best experience for their devices.
Nowadays, there were over 6,000 apps added on Google Store per day. Sometimes people download apps based on the recommended list or the top chart list that create by Play Store. However, there are lots of apps that are underrated and are not included in those lists, which may lead users to miss a chance to download the app that fits their needs.
I first started by designing the structure and navigation model of the website. As the sitemap is shown below, each page is coordinated with different functionalities. The website is designed for both visitors and registered members: both visitors and registered members can browse and search apps with filter options. Search criteria include price and genres. In order to ensure the credibility of the reviews, only registered members are allowed to give reviews to apps. Also, the members can save the apps to their personal favorite apps list.
I imported data from the Google Play Store that is relevant to the app's information, such as name, description, updated date, app version, and price. I created an ER diagram that shows different entities, properties, and relationships. And used it as the blueprint when creating data tables in phpMyAdmin.
When building this website, I applied techniques (PHP, MySQL, AJAX) learned from the course to support the backend server of AndroidDaily. For the login and register system, I used sessions to store and carry user information between pages. For the search function, I used user inputs to perform dynamic queries and get the result from the MySQL database. I also created commenting and saving favorite apps system using PHP and JavaScript, when users submit their feedback, the call will be realized by AJAX without reloading the whole page.
Through the development process, I was able to apply conceptual knowledge by programming the website using PHP, AJAX, and MySQL database. And I had a better understanding of the client-server model and request-response. For the next steps, I would like to add more features on the site, such as rating or recommendation to the users.