Contents

AWS Honeycode - Build an application in minutes using CSV data!

AWS Honeycode:


Remember writing macros in excel, well HoneyCode does the same thing but on steroid. In this blog, I will be building an application that will demonstrate the basic functionalities of Honeycode.


AWS Honeycode - This new fully-managed AWS service gives you the power to build powerful mobile & web applications without writing any code. It uses the familiar spreadsheet model such as XLS, CSV, and lets you get started in minutes. You just need a basic understanding of spreadsheets, its formulas, and how to work with data cells.

Is any kind of coding required? Well, No. But you should know how to apply conditions using spreadsheet functions.

Features:

  1. Building application using spreadsheet data. Just like Excel, where you can add macros to perform quick actions.
  2. Honeycode provides a user interface for building applications.
  3. The application can be shared among team members and can be customized for individual needs.
  4. Workflows can be automated via the trigger. For example, an email can be send based on data add or remove from CSV.
  5. Honeycode generates an application in web and mobile application form.
  6. No manual build, publish required. Make changes to your app at any time and the updates happen instantly.

Pricing:

Refer to this link for pricing. https://www.honeycode.aws/pricing. In the basic plan, you can add a maximum of 20 teammates.

Let’s get started with a quick demo:

In this demo, we will create an application to manage the daily task. Name of the application would be “My Task Application”

The process of application development is divided into 3 steps.

  1. Create Workbook
  2. Design Application
  3. Automate triggers

Step 1. Create Account

Create an account in https://www.honeycode.aws/ and log in. It doesn’t accept AWS credentials.

Step 2. Import CSV

Sign in to the AWS Honeycode account and you will be navigated to the below page.

Let’s understand this page. Using the ‘Create Workbook’ button, you can import existing CSV file or you can also use existing templates. /aws-honeycode/create_workbook.jpg

Honeycode provides you a basic set of controls using which you can modify/update CSV data. Controls to format text, insert/delete table row, add formulas to data cells, etc.

/aws-honeycode/csv_view.jpg

Step 3. Start building UI

  1. Click on the “Builder” option present at the left pane.
  2. To create a new application click on the “+” button.

/aws-honeycode/create_app_option.jpg

  1. The application can be created using 2 ways those are “Use app wizard” or “Build your own”. In this demo, we will be using “Build your Own”
  2. Click on “Build your own” and you will be navigated to the screen designer page.

/aws-honeycode/builder.jpg

Let’s understand this page.

  1. Screens: This option is used to create multiple screens. Here screens are nothing but web pages in web applications and views on mobile applications.
  • Click on the “+” button to create a new screen. Right-click/double click on the newly created screen option to rename and change properties.

  • For example, I have created a screen as “MainWindow”(Internal Reference) and display name of the screen is “Home”

  1. Add Options: This option is used to add controls on the screens. Controls as below

/aws-honeycode/controls.jpg

  1. Menu options to view properties and app navigations settings.

  2. Screen properties: This is where we can set the behavior of the controls such as default display, initial value, etc.

  3. View App: Using this option we can see the live build app. This is only applicable to the web application. For Mobile application, down Honeycode app.

Step 4. “Add Task” button

  • Click on “Add Objects” and click on “Button” control. It will be added to the screen.

  • Double click on the button to rename and provide the “Add Task” label.

Step 5. Add input controls

Now, Let’s create a form to insert data into the database.

  • Click on “Add Objects” and add “Content Box” to screen. Double click on “Content Box” and rename it to “TASK_ID”.

  • Now add an input box to accept TASK_ID value. For that open controls and add “Input Field” control to the screen.

Create the rest of the controls as per below.

LabelControl Type
TASK_NAMEInput Field
TASK_CREATED_DATEDate
TASK_OWNERContact
TASK_REMINDERTime

IMPORTANT: While creating controls it is important to assign a control name that can be used in formulas to retrieve the value from control.

The screen should look like this after adding all controls.

/aws-honeycode/with_input_controls.jpg

Now click on the “View App” option present at the right top to view live page. You should be able to see controls as shown in the below snapshot.

Step 6. Add Table List

Let’s add a list control to view additional data from CSV. Also, this is where we are going to see newly added data.

To create that list, add the “Column List” control to the screen.

/aws-honeycode/list_control.jpg

Step 7. Add action to “Add Task” button

So far, we have created a user interface where provides inputs for a new task and sees data from CSV. Now let’s add a trigger on the button to fetch values from control and insert it to the database.

  1. To add action. Click on the “Add task” button. In “Button Properties” select Actions

  2. Click on “Edit Automation”.

  3. Here you can add different actions, such as

    1. Notify
    2. Add row
    3. Delete Row etc.
  4. Click on “Add Row”

  5. Select value for “Add Row To”. This is the name of the table.

  6. Populate control name as =$[txtTaskID] and write to =[TASK_ID].

  7. Repeate step 6 for all input fields.

IMPORTANT: Controls are referenced by $. For exmaple, $[txtTaskID] represent input field for TASK_ID. Same control name can be used in IF() formula such as IF($[txtTaskID]="T001","Task id is 001","Invalid task id")

Step 8. Add button to delete row

Select “Context Box” of list row and add a new button at the end. Rename it to “X”.

The screen should like this.

/aws-honeycode/delete_button.jpg

  1. To add action to the delete button, click on Button, go to button properties > actions.
  2. Select “Add a action” > “Delete a row”
  3. Select “Context Row”

Step 9. Add “About” page

Add a new screen from the screen option. Rename screen name and display name as shown in the below screenshot.

Navigation of the screen can be configured using App Navigation Properties.

/aws-honeycode/about_page.jpg

Step 10. Verify Product

Once that is completed, go to the live page and verify that the data insert and row delete functionalities are working.

Step 11. Trigger email when a new task is added

  1. Click on the “Automation” tab and create a new automation
  2. rename it to “send mail”
  3. Select “Automation Trigger: = “Row Added or Deleted”
  4. Select Current Table Name and “Starts when” = “A row is added to”

/aws-honeycode/send_mail.jpg

  1. Click on “Add Actions” and select “Notify”
  2. Populate To, Subject, Message, and Link
  3. Click on Publish
  4. Once it is done verify the mail functionality by adding a new task.

Step 12. Share Workbook

To share the workbook, click on the “Share Workbook” button and select team members with you want to share the app.


Conclude:
I hope you liked this blog and got a good understanding of HoneyCode, at least basics. Honey Code is not ready yet, you will find a lot of issues while working with it. I liked the idea of using CSV data and building a quick utility. Well, it is too early to judge this platform but I would like to see API and lambda integration in future.