Skip to Content

Building a Workspace Reservation App with AWS HoneyCode: A Review

Posted on October 27, 2022 by

Categories: AWS

Tags:

We had to deal with the new reality in recent months as the world descended into a worldwide health catastrophe, just like everyone else. We needed a system to set up so that individuals could securely operate from the office when Croatia’s health status started to improve.

To maintain the social distance requirements, we put up a mechanism to restrict the number of people who may work in the office.

Some employees loved working from home, but others were ready to return to the office, where there was much free coffee, a designated workplace, and a positive work environment. Those folks had to enter their names in the spreadsheet to book a seat in the office.

We created an app for booking a desk on one of the office floors to test HoneyCode.

Users might check-in, view their bookings, and add new reservations if space is available. The system took care of enforcing the capacity regulations for each level and wouldn’t let more than one reservation per individual per day.

The system’s bookings and daily floor capacity statistics would be visible to the administrators.

How and if so, did it work?

Yes, HoneyCode made all of this possible. This program was created entirely from scratch in around 6 hours, without having seen the software before.

standard workflow

You may build Workbooks using HoneyCode’s web app, and each Workbook can include many tables, automation, and applications. You can create numerous teams. However, we haven’t tested this feature yet. This is likely used to control which applications are shown to which users.

data origin

ALT goes here
ALT goes here

It’s straightforward to define the app’s data source. Simply construct several tables in the workspace so they may be referenced from other tables and the user interface (UI) directly and through functions. Reminders and alarms for when the data changes can also be set up.

UI

By including screens and items in them, the UI is developed. Each screen can be explicitly added to the top-level navigation, but if not, clicking a button or table row is the sole method to access it.

ALT goes here

You have a mobile and web interface without making any effort to support the various form factors; that portion just works.

ALT is used here

The fundamentals function adequately; after you attach the data to a field, you even get a live preview with only a few seconds of lag between altering an item’s values in the UI object and viewing the preview.

Link the UI components to a data source, such as a table, a function that refers to a table, a local variable, or a combination of them, to show data in them.

Authentication

Everyone must have a HoneyCode account and be added to the team to utilize the applications made using HoneyCode. I’ve experimented with creating a user table and login/register pages to create my own authentication. Still, it isn’t feasible because there isn’t a mechanism to send emails or hash passwords.

Having that option would also provide a challenge for their per-user price.

Authorization

ALT goes here

There is no elegant solution to restrict certain app features for specific users. A new table containing a list of app admins must be introduced to distinguish between an admin and a user. Then you can determine whether $SYS USER (a global variable that contains the currently logged-in user) is on that list and hide some UI components as a result.

usability for consumers

Users must be invited to HoneyCode and log into the online interface or the HoneyCode mobile app to utilize the app. There doesn’t appear to be a method to publish the program to a solo web server or app store after exporting it. Users may find it a little challenging as a result.

Papercuts in progress

The UI possibilities are limited, and there is no ability to add graphics to displays. You can size and color the text, which works well for showing tables and forms, but that’s about it. Ignore graphs, pictures, and other visual aids.

The newly added record is not shown after adding a new record and returning to the list. But when you restart the app, it’s still there.

A form field cannot be made mandatory, nor can any field-specific validation rules be defined. The remedy is to create a complex visibility rule that hides the submit button if the form’s fields are incorrectly filled in.