The content of this post is copyrighted material. If you wish to reuse any part or copy this post somewhere else, you must have written permission from me to do so
If you're a new iOS developer and have just started learning a few concepts, chances are, you want to develop an app of your own for practice or practical use. As an experienced iOS developer, I am familiar with lots of app ideas that new developers can use to write iOS apps.
For example, the idea must be practical, it should have real-life usage, it should be easy enough to implement for beginners, and students should learn and get challenged on their current comfort level.
Based on these criteria, here are the top 5 app ideas that new iOS developers can utilize to put their iOS knowledge to the test.
1. Phone Directory App
Students should develop a Phone Directory Application to allow app users to add and perform operations on their contacts in the phone directory. Contact fields will include name, address, phone number, email address, etc.
- The app should allow editing and deleting the existing contacts
- User should be able to search contacts based on the contact name (Or any other applicable criteria)
- The app should provide a validation error in case the user enters invalid input
- The app should display the list of contacts on the home screen (Just the contact name is fine)
- In case there are many entries, the user should be able to scroll the list (Using TableView construct)
- Users should be able to favorite or unfavorite the contacts
2. To-do List app
Students should develop a To-do List App that allows users to create a list of things to do. Users should be able to create them and check them off as complete once they finish doing it. This app will allow users to view the list of outstanding and completed to-do items.
- App users should be able to create to-do list items by providing details such as event title, number of hours needed to do a task, due date, etc.
- The home screen should show a list of all the tasks
- The user should be able to check the completed tasks
- If the task is already completed, it should have a checkmark next to the task cell
- Each task should show basic info such as task name, and due date
- Users should be able to search through the task list by their name
- The app will give a summary of how many tasks have been completed and the total hours associated with them
3. Calories counter
Students should develop an app that allows them to record food and calories they have consumed on a specific day. Then they can view the total calories consumed and filter them on the basis of total consumption or consumption per day
- Users should be able to enter a food item’s name, category and calorie count in the app
- The home screen should show a list of all food items and their calories content
- The home screen should show the total calories count at the top of the page
- There should be an empty state if no food item has been entered
- User should be able to search for consumed food by name
- Users should be able to filter food items by category
- User should be able to choose a specific date and the app should display list of food items and total calories consumed on that day
- Additionally, the app can provide a list of existing food items so that most of the time users don’t even need to enter them manually
4. Unit Conversion App
An app that will allow users to convert from one unit of measurement to another. The app will have a predefined list of supported units and the app user can dynamically select source and destination units for conversion.
- The app should have two sections, source, and destination. Users can select what source it wants to start from and to what destination and the source value. For example, conversion from feet to inches with input value in feet section and the app will output result in inches section
- Students can provide the “Convert” button, which when tapped will perform validation and convert the current input value to the destination unit
- If necessary, the user can also include additional conversion features by providing unit names and a two-way conversion factor
- There should be validation on input values (Only numbers are allowed for example)
- The app should prevent runtime errors (Such as divide by zero)
- The home screen should display all the available conversions user can choose from
5. An Expense Tracker App
An app that will allow users to track their expenses. Users can enter their expenses with the total amount, description, and category. The app will then show the list of all the expenses on the home screen.
- Add support to add expenses for the current day by adding details such as expense description, total amount, category, etc
- The app should have support to edit or remove any redundant expense
- Users should be able to search through specific expenses by name
- Users should have the ability to search the expenses by selected ranges (Between 10-20, between 20-100, and so on)
- The app can also have a top label indicating the total amount spent in the current day
- Optionally, users can set the total budget for the day and the app will show whether they are under or over the budget
- Students can also choose to map purchase price to table item color (For example, inexpensive items should appear green, and most expensive items should turn red, etc.)
- The app should have a maximum expenditure threshold set up in the app so that as soon as total expense touches this level, it will alert the user
If you have any questions or comments about these ideas, feel free to message me on LinkedIn. As usual, you're not alone in this. If you get stuck, want some help with the coding, want to dig deep into these ideas, or looking for even more real-world app ideas, feel free to message me. I will be more than happy to help you develop your very first batch of iOS apps
If you have any comments or questions, please feel free to reach out to me on LinkedIn.
If you like my blog content and wish to keep me going, please consider donating on Buy Me a Coffee or Patreon. Help, in any form or amount, is highly appreciated and it's a big motivation to keep me writing more articles like this.
© Jayesh K. Kawli. All Rights Reserved