Free knowledge blog: linux, programming, open source, databases, android, frameworks, web and computing in general
Today, I’m adding to the list of my free programs a software for managing restaurants. This program will allow you to register tables, payment methods, dishes (with photos), modify the currency, language, generate a printable menu, view the order, and even allow self-service for customers.
Moreover, the free restaurant system I’ve created is compatible with Android (Termux), Windows, Linux, and Raspberry Pi. In fact, it is compatible with any platform where C and Go can compile, including an internet server.
Throughout this post, I will show you all the features of this program, which is the largest one I’ve created so far, not because of its complexity but because of all the new things it offers, such as the installer, the multilingual section (with choice of locale and currency), ticket customization, logo, and dasboard.
This restaurant software will allow you to manage your restaurant business and keep track of your earnings. Its features include:
With the free restaurant software, you can register all types of dishes and beverages. This versatility makes it adaptable for various businesses, allowing you to unleash your creativity.
For example, the program can be used in a taqueria by simply registering the dish ‘Taco Order’ and specifying the quantities.
Similarly, you can register desserts, beverages, and everything else needed. To do so, just create the necessary categories.
Once the dishes are registered in the free restaurant system, we can take a new order. Here, all the dishes will appear categorized:
When tapping on a card displaying a dish or beverage, it will prompt for the quantity and any additional comments, and then add it to the order.
In the end, the waiter will finalize and complete the order, also indicating the table where the diner is seated.
The list of requested dishes, along with quantities and comments, will immediately reach the kitchen. As mentioned, they are listed in the order they were placed, based on the time of the order.
Additionally, more dishes can be added to the order. It is important for the chef to mark the dishes as delivered only when they have been completed, so that the restaurant software can accurately calculate the preparation time.
Next, we can view the pending and/or completed orders to review the dishes, print the details, or process payments. Remember, we have the flexibility to choose any payment method as they are managed within the software itself.
We can print the order at any time, either before payment (to let the customer know the current consumption) or afterwards. Here is an example of the order we have created, printed automatically on a thermal printer after payment:
In this case, it was sent to print on a thermal printer, although it can also be printed using the system’s print dialog by specifying the width in centimeters. Remember that the logo and footer of the ticket are fully customizable.
Since we are talking about printing tickets, we can also print the cash report or cash register summary. This report essentially prints all the dishes that were ordered throughout the day along with the total, as well as all payments broken down by payment method.
By the way, you can print this report for any time period, but it is usually preferred to do it on a daily basis.
Here’s an example:
This can be done on a thermal printer or any inkjet printer. You can also take a screenshot or photo, it’s up to you.
This free restaurant management application enables automatic printing of the menu, taking into account prices, photos, categories, and preparation time.
It also prints the business logo in the header. In my case, it looks like this:
This way, you don’t have to design the menu yourself, and you can print it as many times as you want whenever you update the menu or any prices.
I have included a module for you to adjust the printing mode, columns for the menu, automatic printer selection, logo, footer, user activity logging, and background data refreshing for automatic data-update when needed.
There is also a section to configure the language, currency, and locale.
Currently, you can choose between Spanish and English, but it can obviously be translated into more languages as I am using a special library for that.
Here is an example of how it would look in the Regional Settings of Saudi Arabia using the dollar as the currency. Of course, there is also the Mexican peso and various currencies according to an ISO standard that I found.
What I like is that the currency, numbers, and dates are displayed correctly according to the regional settings. Furthermore, the translations are managed in a single file, making it easier to add new languages.
This free web application requires authentication before you can use it. You can create unlimited users and change the password whenever you want, as long as you provide the previous password.
Each user has a set of permissions. There is a permission for each operation that can be performed in the restaurant, allowing you to limit certain users to a specific role.
It’s important to note that you should not forget your password and be cautious with the permissions of your own user. If you remove your own permissions or lose access, you won’t be able to use the program and will need to seek assistance.
All the operations described above can be viewed on the dashboard. The more data you add, the more information will be available, and the graphs will be more comprehensive.
Finally, I need to explain the customer self-serving mode. This mode allows the diner to serve themselves. The only difference is that the screen is displayed in full mode and when the order is completed, it navigates to the component that allows adding or removing dishes from that order.
To use it, you must:
Note: If you activate customer mode by mistake, simply press F5 or refresh the page.
I have shown you all the capabilities of the program; now let’s see how to use it. Please read carefully.
I recommend to disable antivirus programs.
If you want to try it right away, go to the following link, download it, and give it a try. It’s just a matter of clicking “Siguiente” (The installer may be in Spanish but remember that the language can be changed) in the installer and granting the requested permissions: https://github.com/parzibyte/releases_restaurante/releases/latest
I assure you that it is virus-free. If you have been following my blog, you will know that I simply dedicate myself to creating and sharing free software (along with exercises or algorithms), whether open source or not.
However, sometimes Windows may flag it as a virus. If you don’t trust it, then don’t download it, that’s fine. In case you do, remember to disable Windows Defender so it doesn’t delete the installer; and if you see the following screen:
Clic on More information and then Execute anyway (I am guessing the translation because my Windows is in Spanish)
Once installed, you should open the system in your default browser.
You should also see 2 icons on the desktop (if not, then refresh with F5 or Right-click > Refresh), one for uninstalling the program and another one that will be a shortcut opened with your preferred browser; that shortcut is the one you need to open whenever you want to access the program.
By the way, the default user is
firstname.lastname@example.org and the password is the mighty
123. I recommend changing it as soon as you log in (and please, don’t waste your valuable time claiming that my program doesn’t work when you actually forgot your password).
By default, the software’s language is spanish. You can change it anytime (as shown in the previuous screenshots), just login and then go to Mantenimiento > Idioma, in “Idioma del sistema” select “en” and click “Guardar“:
If you do it the right way, the webapp will refresh and then everything will be in english.
It only remains to say that I have been trying to finish this program for years, and I had been unable to do so. I have created so many versions that ended up forgotten, to the point where I lost count.
In the end, I narrowed down what I wanted and added new features such as translation, automatic installation, and several other things.
If you are interested in the source code, you can download it as indicated at:
If you want to remove my credits, then check this:
On the other hand if you are using my plugin to print tickets on a thermal printer and want to remove my credits, check this:
Here you can find tutorials about the system: https://www.youtube.com/playlist?list=PLat1rFhO_zZjuDbEFoEzfU_DESAZcmTHM
To wrap up, I’ll leave you with more free programs that I have created.