When I was learning to program I was building a "DVD Rental" application for the kiosk that would store information about disks, who borrowed them and when they had to return them. Having a simple-to-understand task motivated me to build an app and show to the owners of the kiosk.

Now I'm assisting a web app programming school with helping to design curriculum and I'd like to include some practical apps into the course.

I want students to develop business thinking. New SaaS idea? App to help people. App to help businesses.

I already have some app ideas but I am always looking for more. What was the first app you've built?


  • Our course is focused on business web apps, so no games.
  • Tasks should be simple to explain and familiar to students (14-18 years old)
  • Real-life application or attempt to solve a problem.
  • Focus on "client requirements" and not "implementation"
  • Simple tasks, limited to 5 data entity types (or tables).

You are welcome to use any of those apps to teach students about data models, databases, relations, UI / persistence. (Note: we use Agile UI platform)

  • 2
    $\begingroup$ You should explain what the goals of your course are, what topics you cover, and in which order, etc. Off the top of my head, I'd think of having students implement a game or something, but it seems that's not exactly what you're looking for. $\endgroup$ – Michael0x2a Jul 11 '17 at 14:57
  • $\begingroup$ Thanks, @Michael0x2a, I have refined the question, I hope this is better. $\endgroup$ – romaninsh Jul 11 '17 at 15:20
  • $\begingroup$ This question is still simply asking for a list of app ideas and provides no useful way to compare the answers to find a "best" answer. For that reason, I've voted to close it as too broad. $\endgroup$ – thesecretmaster Jul 11 '17 at 18:13
  • $\begingroup$ Can you convert it into wiki? If there are more app ideas, I thought it could be a good resource for this portal. $\endgroup$ – romaninsh Jul 11 '17 at 18:14
  • 1
    $\begingroup$ If you could provide ideas how to rephrase / modify the question, i would appreciate. $\endgroup$ – romaninsh Jul 11 '17 at 18:15

The Librarian

Application to help your local library to organise book catalogue and offer students a way to check which books they have checked out from the library.

Who will use this app?

This app will have two interfaces and two user roles. The first role is a "Librarian", a person who uses a computer inside a library for one of the following tasks:

  • registering new books and editing number of each book.
  • registering students
  • assigning borrowed books to the students
  • noting down returned books

The second user role is Student, who have account and password, allowing the following tasks:

  • see which books you have borrowed and when they are expiring
  • extend borrowed books

Data Model

We need to have the following models:

  • All the books (includes ISSN, title, author as well as number of copies)
  • Student (student code, password, email)
  • Librarians (librarian code, password, email)
  • "Borrowed book" (record for each borrowed book, date when borrowed, date when book must be returned, link to student and link to a book)


A Librarian should also be able to see several reports:

  • List of Student ordered by a number of "Borrowed books" which are Overdue
| improve this answer | |

Money Lending

Application to help a single user manage money which he have lent out to his friends. This is a single-user application, so log-in is not required.

Who will use this app?

A single user will have this app installed on his personal computer. He will open the app every time he lends money to someone. He needs to enter the name of the friend and amount he is lending. Later, he can see a list of friends and amounts. The following tasks should be available:

  • See a list of Friends and total amount lent.
  • Click on the name of the friend to see when and how much was lent.
  • Lend to a new friend - Enter friends name, amount and date when they must return a loan.
  • Lend more money to the same friend - click on friends name, enter the amount of additional loan and date when they must return.

Data Model

We need to have the following models:

  • Friends (name of the friend, total_lent, total_repaid and total_due)
  • Loans, how much is loaned, and date, due date and how much is repaid.


Just a single report:

  • List friends who are due to repay loans which they haven't repaid.
| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.