Build Customized Apps with Amazon Honeycode - Aniruddha Loya - E-Book

Build Customized Apps with Amazon Honeycode E-Book

Aniruddha Loya

0,0
29,99 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

Amazon Honeycode enables you to build fully managed, customizable, and scalable mobile and web applications for personal or professional use with little to no code. With this practical guide to Amazon Honeycode, you’ll be able to bring your app ideas to life, improving your and your team’s/organization’s productivity.
You’ll begin by creating your very first app from the get-go and use it as a means to explore the Honeycode development environment and concepts. Next, you’ll learn how to set up and organize the data to build and bind an app on Honeycode as well as deconstruct different templates to understand the common structures and patterns that can be used. Finally, you’ll build a few apps from scratch and discover how to apply the concepts you’ve learned.
By the end of this app development book, you’ll have gained the knowledge you need to be able to build and deploy your own mobile and web applications. You’ll also be able to invite and share your app with people you want to collaborate with.

Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:

EPUB
MOBI

Seitenzahl: 341

Veröffentlichungsjahr: 2022

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Build Customized Apps with Amazon Honeycode

Quickly create interactive web and mobile apps for your teams without programming

Aniruddha Loya

BIRMINGHAM—MUMBAI

Build Customized Apps with Amazon Honeycode

Copyright © 2022 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

Group Product Manager: Alok Dhuri

Publishing Product Manager: Richa Tripathi

Senior Editor: Ruvika Rao

Content Development Editor: Urvi Shah

Technical Editor: Maran Fernandes

Copy Editor: Safis Editing

Language Support Editor: Safis Editing

Project Coordinator: Deeksha Thakkar

Proofreader: Safis Editing

Indexer: Hemangini Bari

Production Designer: Shankar Kalbhor

Marketing Coordinator: Deepak Kumar and Rayyan Khan

Business Development Executive: Uzma Sheerin

First published: June 2022

Production reference: 1080622

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham

B3 2PB, UK.

978-1-80056-369-8

www.packt.com

This book is dedicated to my family, friends, teachers, and everyone else who, at any point, came into my life and enriched it with their presence. And then there are those who deserve special mentions:

First, my mother, Hemangi Loya, and the memory of my father, Arun Loya, for their unconditional love, their values, and their strength and support at every step of my life.

Next to the loving memory of my grandparents: To my grandmother, Shanti Loya, for her love and nurturing disposition, and for sowing the seeds of curiosity in my childhood. "Maa," I love you and miss you! And to my grandfather, Ramgopal Loya, for his ever-so-simple pearls of wisdom, including "to keep laughing," and "to hear everyone's views but choose what you want to do," among many others.

And finally, to my partner, Tejashvini, who has stood by me through the ups and downs, supported, and, on occasion, tolerated me, but never stopped loving me. And to my sons, Avyukt and Aarit, who continue to fill my life with joy, happiness, love, and laughter. You three are my pillars, my energy source (and sink), and my daily inspiration (and desperation).

– Aniruddha Loya

Contributors

About the author

Aniruddha Loya is an engineering leader and entrepreneur with over 10 years of experience in building teams, scalable systems, services, and large-scale enterprise and consumer products, including the first version of Amazon Honeycode.

He is passionate about applying technology to solve everyday problems, and even more so when it can be applied to improving the environment. His most recent start-up attempt was also in the ESG space.

Presently, he is working as the engineering leader at CasaHealth Tech, building and establishing the engineering site in Canada, and leading multiple teams in bringing pharmacy and healthcare offerings to every Canadian's doorstep.

I want to thank my loving wife, Tejashvini, for her support and the borrowed time to make this book a reality, and to the Packt team for helping me in this wonderful and fulfilling journey of completing my first book.

About the reviewer

Alejandro Escobar Garces has almost 10 years of professional experience working as a software engineer. He began work developing applications for Point of Services, but later on worked for an outsourcing company in a variety of roles, from QA automation to frontend engineer. In the last 7 years, Alejandro has dedicated most of his time to working as a backend engineer, with interests in operational excellence and chaos engineering. He has received a BSc. and an MSc. in system and informatic engineering, with research experience in AI and simulations. Alejandro has also worked as a university professor on a number of different courses related to computer science at several universities in Colombia.

Table of Contents

Preface

Part 1: Introduction to Honeycode

Chapter 1: Amazon Honeycode – Day One

Technical requirements

Creating the first application

Creating an account on Amazon Honeycode

Creating a To-Do application

Running the application on the web and a mobile

Running our To-Do application on a web browser

Running our To-Do application on a mobile device

Summary

Chapter 2: Introduction to Amazon Honeycode

Technical requirements

Exploring Honeycode Dashboard

Dashboard

Teams

Learning & Resources

Exploring a Honeycode Workbook

Left Navigation Bar

Tables

Builder

Automations

Understanding Honeycode Teams

Adding team members

Managing a team

Honeycode's pricing tiers

Summary

Chapter 3: Building Your First Honeycode Application

Technical requirements

Defining the app requirements

Creating the app data model

Creating a workbook

Creating tables

Data formats and relations

Building the app interface

Creating an app from scratch

Creating an app using App Wizard

Summary

Chapter 4: Advanced Builder Tools

Technical requirements

Defining the app requirements

Applying styles to app components

Style controls in Honeycode

Conditional-styling app components

Styling the To-Do App

Controlling the component visibility with conditions

Restricting data access per user using personalized views

Searching, filtering, and sorting data views on the fly

Summary

Chapter 5: Powering Apps with Automations

Technical requirements

Defining the app requirements

Understanding variables in Honeycode

User-defined variables

System variables

Making apps more powerful with automations

Using actions for data input through forms

Adding functionality to delete a task

Processing data with automation based on triggers

Sending reminders based on set preference

Sending a task completion notification to the task creator

Debugging automations

Summary

Part 2: Deep-Dive into Honeycode Templates

Chapter 6: Introduction to Honeycode Templates

Technical requirements

Getting to know Honeycode templates

Applicant Tracker

Collaborative brainstorming

Connect manager

Content tracker

Customer tracker

Employee onboarding

Event management

Field Service Agent

Instant Polls

Inventory Management

Launch Manager

Meeting Runner

PO Approvals

Simple Survey

Simple To-Do

Team Task Tracker

Timeoff Reporting

Timesheet Manager

Weekly Demo Schedule

Summary

Chapter 7: A Simple Survey Template

Technical requirements

Defining the app requirements

Creating the Survey app

Reviewing the data model

Results

Scale

Survey

_README

Reviewing the app

Home

Thanks

Survey

Summary

Chapter 8: Instant Polls Template

Technical requirements

Defining app requirements

Creating an Instant Polls app

Reviewing the data model

Last_Visits

Options

Questions

Votes

z_Readme

Reviewing the app

Polls

New Poll

Cast a Vote

Summary

Chapter 9: Event Management Template

Technical requirements

Defining the app requirements

Creating an Event Management app

Reviewing the data model

A_Sessions

B_FAQ

D_Registrations

M_Category

M_Dates

M_Ratings

M_Speakers

R_Dashboard

_Readme

Reviewing the app

Sessions

Detail

My Agenda

Speakers

By Category

FAQ

Summary

Chapter 10: Inventory Management Template

Technical requirements

Defining the app requirements

Creating an Inventory Management app

Reviewing the data model

Categories

Devices

Inventory

Manufacturers

Status

_Readme

Reviewing the apps

My Devices app

My Devices – Manager app

Summary

Part 3: Let's Build Some Apps

Chapter 11: Building a Shopping List App in Honeycode

Technical requirements

Defining the app requirements

Translating requirements to app interactions

Defining the data model

Building the app

Creating a new workbook

Creating tables

Creating the app

Clearing the bought items list

Building an app using the Wizard

Summary

Chapter 12: Building a Nominate and Vote App in Honeycode

Technical requirements

Defining the app requirements

Translating requirements to app interactions

Defining the data model

Building the app

Creating the template app

Setting up the tables

Editing the template app

Functionalities just for organizers

Restricting voting to a panel of judges

Summary

Chapter 13: Conducting Periodic Business Reviews Using Honeycode

Technical requirements

Defining the app requirements

Translating requirements to app interactions

Defining the data model

Building the app

Creating a new workbook

Creating tables

Creating the app

Sending review updates to all and archiving the updates

Sending reminders for providing updates

Summary

Chapter 14: Solving Problems through Multiple Apps within a Workbook

Technical requirements

Defining the app requirements

Translating requirements to app interactions

The Realtor app

The Client app

Defining the data model

Building the app

Creating a new workbook

Creating tables

Creating the Realtor app

Creating the Buyer app

Creating the Seller app

Discussion

Summary

Assessments

Chapter 4 – Advanced Builder Tools in Honeycode

Exercise 1

Exercise 2

Exercise 3.1

Exercise 3.2

Exercise 4

Chapter 5 – Powering the Honeycode Apps with Automations

Exercise 1

Exercise 2

Chapter 7 – Simple Survey Template

Exercise 1

Chapter 8 – Instant Polls Template

Exercise 1. Can you think of another way of achieving the same result of separate text color based on a specified condition?

Chapter 9 – Event Management Template

Exercise 1

Chapter 10 – Inventory Management Template

Exercise 1

Exercise 2

Exercise 3

Chapter 11 – Building a Shopping List App in Honeycode

Exercise 1

Exercise 2

Exercise 3

Chapter 12 – Building a Nominate and Vote App in Honeycode

Exercise 1

Chapter 13 – Conducting Periodic Business Reviews Using Honeycode

Exercise 1

Chapter 14 – Solving Complex Problems through Multiple Apps Within a Workbook

Exercise 1

Exercise 2

Exercise 3

Exercise 4

Exercise 5

Other Books You May Enjoy

Preface

Amazon Honeycode enables users to build fully managed, customizable, and scalable mobile and web applications for personal or professional use with little to no code.

With this practical guide to Amazon Honeycode, you'll be able to bring your app ideas to life, improving your and your team/organization's productivity. You'll begin by creating your very first app from the get-go and use it as a means to explore the Honeycode development environment and concepts. After that, you'll learn how to set up and organize the data to build and bind an app on Honeycode, as well as deconstructing different templates to understand the common structures and patterns that can be used. Finally, you'll build a few apps from scratch and discover how to apply the concepts you've learned.

By the end of this app development book, you'll have gained the knowledge you need to be able to build and deploy your own mobile and web applications and share them with people who you want to collaborate with.

Who this book is for

Like the platform, this book is meant for anyone—professional and citizen developers alike—who wants to build and deploy apps for their personal or professional use as an individual or as a team. However, for professional developers, it is important to note that the book will not focus on advanced use cases with features such as using public APIs and 3P integrations.

What this book covers

Chapter 1, Amazon Honeycode – Day 1, starts the book by enabling you to discover the power and value of Honeycode straight away with a to-do app that runs on both mobile and web browsers, built and deployed within 2 minutes by a few simple clicks on the UI. Being able to build and deploy your own app is the key value proposition of Honeycode.

Chapter 2, Introduction to Honeycode, provides the typical introduction to any new platform. It walks through Honeycode's layout and different sections and explains the various components and terminology used.

Chapter 3, Building Your First Honeycode Application, is a step-by-step guide to building the same to-do app as the first chapter, but from scratch and not using the template. While doing so, it applies the topics covered in Chapter 2, Introduction to Honeycode, and introduces the next set of details needed to build the app.

Chapter 4, Advanced Builder Tools in Honeycode, builds on the previous chapter, in which the to-do app we built was functional but, in all fairness, it was very basic and left much to be desired. But Honeycode offers a lot more tools for customization. In this chapter, we'll explore some of the advanced functionality that enables builders to improve the presentation with conditional styling, control the visibility of different components, add controls for filtering and sorting views, and even personalize the view for each user of the app.

Chapter 5, Powering the Honeycode Apps with Automations, focuses on the processing of user inputs from the app to add or change data, as well as indirect triggers such as time reached and changing certain values using automation.

Chapter 6, Introduction to Honeycode Templates, introduces you to templates, how they work, and the use cases that are currently enabled out of the box through these templates. Honeycode provides a diverse set of templates aimed at helping users to jump-start their journey. The chapter also provides a showcase of capabilities and use cases that can be built using Honeycode.

Chapter 7, Simple Survey Template, gets you started with setting up a simple survey out of the box.

Chapter 8, Instant Polls Template, gets you started with setting up polls out of the box.

Chapter 9, Event Management Template, gets you started with an out-of-the-box app for event management.

Chapter 10, Inventory Management Template, gets you started with an inventory management app out of the box.

Chapter 11, Building a Shopping List App in Honeycode, explains how to build an app for an everyday use case of maintaining an updated shopping list. The app we build will have the option to build lists for the different stores you may be purchasing from, move items from one list to another, and clear out items you've already bought. And finally, we have some exercises to further enhance the functionality.

Chapter 12, Building a Nominate and Vote App in Honeycode, asks you the question "have you ever found yourself searching for a tool/application that is not email or some word document or spreadsheet that lets you:

Run a contest where everyone can submit nominations and later vote for selecting a winner?

Decide by majority on the next movie to play on movie night or game(s) to play on games night?

Collect questions from an organization before an all-hands meeting, vote, and rank them to help pick the most-asked question?"

In this chapter, we'll build an app, using an existing template, that will enable you to answer these questions by adding functionality for running a contest.

Chapter 13, Conducting Periodic Business Reviews Using Honeycode, looks at the use case that most businesses have, where they hold periodic review meetings requiring collaboratively generated data and reports that are often shared and updated over email, requiring someone to collect all the threads and compile them for the final report.

In this chapter, we'll build an app that lets teams collaboratively work on a single source of truth and, therefore, always be able to see the latest information. We'll also make use of automation for sending reminders and generating a post-review email containing all the updates.

Chapter 14, Solving Complex Problems through Multiple Apps within a Workbook, explains that it is not always possible to solve a use case with a single app. Often, there are permissions, separate views, or even Honeycode limitations that require us to make use of multiple apps within the same workbook. In this chapter, we take the example of a realtor managing their buying and selling clients and servicing them to showcase the power of Honeycode in allowing multiple apps to provide different customized data views based on the user type.

To get the most out of this book

You'll need to have access to Amazon Honeycode, which requires a laptop with a web browser, preferably Google Chrome, and optionally a mobile device running either a Honeycode-supported version of Android (currently requires Android 8.0 and up) or iOS (currently requires iOS 11 or later). No programming knowledge or experience is expected to start creating basic apps. However, working knowledge of Microsoft Excel or similar spreadsheet tools and a general understanding of logical statements are helpful to get the most out of this book.

If you have questions, new ideas to discuss, or require help or consultation on your Honeycode projects, come and join this LinkedIn group: Honeycode builders | Groups | LinkedIn.

Download the color images

We also provide a PDF file that has color images of the screenshots and diagrams used in this book. You can download it here: https://static.packt-cdn.com/downloads/9781800563698_ColorImages.pdf.

Conventions used

There are a number of text conventions used throughout this book.

Code in text: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: " =Tasks[[#Headers], [Assignee]] and =Tasks[[#Headers],[Notes]]."

Bold: Indicates a new term, an important word, or words that you see onscreen. For instance, words in menus or dialog boxes appear in bold. Here is an example: "In the previous subsection, we added the two new fields on the Add New Task screen. However, as we had noted earlier, if you try to add a new task with these fields filled, the values will not be retained, and the fields would show up empty in the My Tasks list view. So, now let's update the automation defined on the Done button and learn how we can persist the information from a given form to our tables."

Tips or Important Notes

Appear like this.

Get in touch

Feedback from our readers is always welcome.

General feedback: If you have questions about any aspect of this book, email us at [email protected] and mention the book title in the subject of your message.

Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit www.packtpub.com/support/errata and fill in the form.

Piracy: If you come across any illegal copies of our works in any form on the internet, we would be grateful if you would provide us with the location address or website name. Please contact us at [email protected] with a link to the material.

If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit authors.packtpub.com.

Share Your Thoughts

Once you've read Build Customized Apps with Amazon Honeycode, we'd love to hear your thoughts! Please click here to go straight to the Amazon review page for this book and share your feedback.

Your review is important to us and the tech community and will help us make sure we're delivering excellent quality content.

Part 1: Introduction to Honeycode

In this part, you will understand the basics of Honeycode. You will start with an out-of-the-box "Simple TO-DO" app with just a few simple clicks and then use it to explore and learn about the key components of Honeycode. You will then put all the pieces together and build the same TO-DO app from scratch. Finally, you'll cover advanced topics to improve the app's presentation layer and user experience as well as apply the power of automation to complex data processing.

This section comprises the following chapters:

Chapter 1, Amazon Honeycode – Day 1Chapter 2, Introduction to HoneycodeChapter 3, Building Your First Honeycode ApplicationChapter 4, Advanced Builder Tools in HoneycodeChapter 5, Powering the Honeycode Apps with Automations

Chapter 1: Amazon Honeycode – Day One

Amazon Honeycode's key value proposition is to enable users to build and deploy mobile and web applications with minimal to zero need of programming. Therefore, we'll start this book by enabling you to discover this power and value right at the first step.

You will first create your Honeycode account, and then in less than 2 minutes, you will be able to create and use a simple To-Do app that runs on both mobile devices and on laptops/desktops following some simple steps and a few clicks.

Are you wondering what Amazon Honeycode is? What are the key features, major components, and where are the other details that are typically covered at the start of a book? Do not worry – we have you covered in Chapter 2, Introduction to Honeycode. However, before all those details, let's zoom through the core product and learn what it has to offer.

In this chapter, we're going to cover the following main topics:

Creating the first applicationRunning the application on the web and mobile devices

Technical requirements

In order to follow this and all the subsequent chapters in this book, you'll need to have access to Amazon Honeycode, which requires a laptop with a web browser, preferably Google Chrome, and optionally a mobile device running either a Honeycode-supported version of Android (it currently requires Android 8.0 or upward) or iOS (it currently requires iOS 11 or later).

Creating the first application

In this section, we'll create a Free Tier account on Amazon Honeycode and then quickly create a to-do application.

Creating an account on Amazon Honeycode

To create an account on Amazon Honeycode, let's follow these steps:

We will start by using our browser to navigate to www.honeycode.aws and click on the Try for free button at the top-right corner of the page. Provide your details in the form, verify the email, and complete the signup. On the first login, you will be greeted with a Welcome to Honeycode! popup. It is up to you whether you want to provide the requested data review the content of the popup or skip it. In our next chapter, we'll cover in detail the information provided on the pop-up screens:

Figure 1.1 – The first Welcome to Honeycode! pop-up screen

After logging in and skipping through the popups and nudges, we land on a screen that is called DASHBOARD (there'll be more on the dashboard in Chapter 2, Introduction to Honeycode), which is the place where we'll start creating our To-Do application:

Figure 1.2 – An empty dashboard on the first login

Creating a To-Do application

Let's understand how to create a To-Do application with the following steps:

On the DASHBOARD screen, locate the Create app button in the top-right corner and click it.This loads a popup with quite a number of options for us. Under the USE A TEMPLATE header, locate a tile with the Simple To-Do label and click it:

Figure 1.3 – Selecting the Simple To-Do application template

Next comes a popup to name the workbook and choose a team. For now, let's leave the default values and click on the Create button:

Figure 1.4 – Providing a workbook name and team details to create the workbook

This creates and loads our Simple To-Do workbook and, given it is our first time using it, another set of popups with links and information about the components of the workbook.

It is up to you whether you want to review the links and follow the popups or skip them.

After reviewing or skipping the popups, click on the Honeycode icon in the top left, which navigates back to the dashboard.Your Honeycode dashboard now has the newly created Simple To-Do app:

Figure 1.5 – The dashboard showing the newly created application

And that's it. In six simple steps, you have created your first Honeycode application that is ready to be used. In the next section, we'll learn how to start using this application through browsers and mobile devices.

Running the application on the web and a mobile

In the previous section, we created the Amazon Honeycode account and used it to log in and create our first application – To-Do. In this section, we'll learn how to run this application on the web and mobile devices.

Running our To-Do application on a web browser

Let's see how to run the To-Do app:

If not already logged in, log in to your Honeycode account.Locate the To do application in DASHBOARD and click on it:

Figure 1.6 – Launching the To-Do web application from the dashboard

And there we have our To-Do application ready to use. Try it out by adding a new task, marking tasks complete, and reviewing the screens:

Figure 1.7 – The To-Do application running in a web browser

Running our To-Do application on a mobile device

The next set of steps will require a mobile device running either a Honeycode-supported version of Android (it currently requires Android 8.0 and upward) or iOS (it currently requires iOS 11 or later). For the purpose of illustration, the screenshots in this section are taken from an iPhone, so there might be some differences in look and feel on Android devices:

Go to the app store on your mobile device, search for Amazon Honeycode, and download it.Log in using the credentials of the Honeycode account we created in the first section. The Apps screen loads with the To-Do app we created. Tap on it to launch the app:

Figure 1.8 – The To-Do application on a mobile

And there we have our To-Do application ready to use. Try it out by adding a new task, marking tasks complete, and reviewing the screens:

Figure 1.9 – The To-Do application running on a mobile device

Bonus

Open both the web and mobile applications. Make a change in one and note that the change is reflected in the other app in near real time. In a later chapter, we will learn more about how this sync hronization enables real-time collaboration among the team members using Honeycode apps and across different platforms and devices too.

Summary

In this chapter, in less than 10 steps, we created and tested a new mobile and web application without writing a single line of code.

Now that we know the power of Honeycode and, more importantly, how to navigate and run apps on both mobile devices and the web, it's time to dive into the details of different aspects and terminology associated with Honeycode.

In the next chapter, we'll use our Simple To-Do workbook and the To-Do app to get ourselves acquainted with Honeycode.

Chapter 2: Introduction to Amazon Honeycode

Amazon Honeycode is a fully managed low-code/no-code application development tool offered by AWS. We learned about this key value proposition in the previous chapter when we deployed our own to-do list application in less than 10 steps and tested it on both mobile and the web. With the power of AWS behind it, a simple to-do application barely scratches the surface, as the platform offers scalability, performance, security, and compliance, which we are accustomed to expecting from AWS.

This enables citizen developers to focus on their core ideas and convert them into real-world applications with ease. They can then share these ideas with their friends, family, or teams to test them out and iterate quickly without having to worry about the required technology infrastructure had they built and deployed a similar application natively. Alternatively, they might just want to get control of their data and, thereby, want to have a small application simply for their personal use or an application to improve the team's productivity. The use cases are many, and we'll explore a range of them in the following sections and chapters of this book.

In this chapter, we will look at the basic concepts of Honeycode. This will equip you with the knowledge to identify the different components of the platform and understand how they relate and interact with each other. Additionally, it will enable us to share a common vocabulary to use in the remainder of the book.

We will also look at another important aspect of Honeycode – collaboration. We'll learn how we can use Honeycode Teams to collaborate with others in the process of building our application or just invite them as an app user only.

Following this, we will look at the pricing model for using Honeycode to enable you to understand the key differences between the different pricing tiers and to empower you to choose the appropriate tier based on the functional needs of the application that you want to build.

In this chapter, we're going to cover the following main topics:

Exploring the landing screenExploring a Honeycode workbookUnderstanding Honeycode TeamsHoneycode's pricing tiers

Technical requirements

In order to follow this and all the subsequent chapters in this book, you'll need to have access to Amazon Honeycode, which requires a laptop with a web browser, preferably Google Chrome, and, optionally, a mobile device running either a Honeycode supported version of Android (currently, this requires Android 8.0 or higher) or iOS (currently this requires iOS 11 or later).

In this chapter, we'll continue to use the To-Do workbook and application from the previous chapter. While the previous chapter is not a prerequisite for following this chapter, it is highly recommended that you do, as we will use the workbook to illustrate and describe some of the concepts.

Exploring Honeycode Dashboard

Honeycode's Dashboard is the default landing page of the product and is designed to provide quick and easy access to all the key components of Honeycode. The default view for the Dashboard is the list of apps that you can start using with a single click. The Dashboard is composed of a header panel at the top, and a navigation panel on the left that governs the data displayed in the center.

The header panel has the Honeycode icon on the left, and three icons on the right for Help, Notifications, and Profile respectively. The Help icon, Figure 2.1 (a), provides you with a quick search for various Honeycode resources available at your disposal. It also provides links to get help from the vibrant Honeycode community, as well as to report issues with the product, or provide a suggestion to the product team. The bell icon, Figure 2.1 (b), is for notifications. You might receive notifications from one of your applications, or a request to join the team, or for an app or workbook that was shared with you, and so on. The Profile icon, Figure 2.1 (c), opens the menu required to access your account settings, and to sign-out.

Figure 2.1 - Honeycode Dashboard

The navigation panel consists of three sections:

DashboardTeamsLearning & Resources

Let's check out each of these sections in detail.

Dashboard

The Dashboard sub-section of the navigation panel typically consists of two navigation links: My Apps and What's new, as shown in Figure 2.1. However, there is a hidden navigation link for Workbooks that is only visible when there is a workbook that does not contain any apps (see Figure 2.2). This hidden link, and the default view it takes you to will not come as a surprise to users, as the key use of Honeycode is not storing data, but being able to build and use apps on top of it with ease.

Figure 2.2 Dashboard sub-section with Workbook link

Both the My Apps and Workbooks list views provide the capability to search, filter, and sort the list of apps and workbooks displayed, allowing you to quickly locate the app or workbook you are interested in. The view also provides collapsible grouping of apps by the teams they belong to.

The What's new section is where you can find the highlights of the latest updates and releases by the Honeycode product team, with links to learn more about them. Look for the New icon that shows up against the link whenever there is an update.

Teams

This sub-section lists all the teams you are a part of. You can click on each team link and view the members of that team, along with their roles. Based on your assigned role within the team, you can perform other actions to manage the team and its members. We will cover Honeycode Teams in detail later in this chapter, in the section Understanding Honeycode Teams.

Learning & Resources

This section is essentially quick access to a collection of getting started guides provided in the Knowledge Center, and to getting help from the Honeycode community.

Now we know about Honeycode's Dashboard and the different resources we can access from it, let's jump into the core of the product and start exploring a Honeycode Workbook.

Exploring a Honeycode Workbook

In this section, we'll explore a Honeycode workbook and dive into the three key components that it is made up of, namely:

TablesBuilderAutomations

For this section, we'll use the Simple To-Do workbook created in Chapter 1, Amazon Honeycode - Day 1, to illustrate and explain the components. So, let's load our workbook by clicking on the pencil icon next to the ToDo app from the Dashboard (see Figure 2.2). Our workbook will load into the Builder view, displaying the ToDo app. Also, note the black bar on the left. This is the Left Nav Bar, which contains different icons to help you navigate to the different components of the workbook, as well as shortcuts for other key components in Honeycode. Given that we will need to use this bar extensively for moving around the different components of our workbook, let's review it before diving into the workbook components.

Left Navigation Bar

The Left Navigation Bar, or Left Nav Bar for short, is the dynamic bar on the left side of the window. The bar is context-aware and changes depending on whether you are currently accessing the workbook or using the webapp. The bar is essential for moving around in the workbook as we go about building our apps, so let's take a quick look at all the navigable icons present on this bar.

The Honeycode icon (Figure 2.3 (a) ) allows you to navigate back to the Dashboard from anywhere in the product.The Tables icon (Figure 2.3 (b)) is for listing all the tables present in the workbook.The Builder icon (Figure 2.3 (c)) is for listing the apps in the workbook.The Automations icon (Figure 2.3 (d)) is for listing all the workbook automations.

Figure 2.3 - Left Navigation Bar – pinned with Tables icon selected of left; unpinned to only display the icons for pulling out a slider to navigate

The help icon (Figure 2.3 (e)) directs you to the various helpful resources available at your disposal.The bell icon (Figure 2.3 (f)) is for notifications that could be from one of your applications, or perhaps a request to join a team.The teams icon (Figure 2.3 (g)) opens a menu with links to pages for any teams that you are part of.

The Profile icon (Figure 2.3 (h)) opens a menu with options to access your account settings, or to sign-out. You can also report issues with the product, or provide a suggestion from this icon.

The Left Nav Bar can be pinned to always list the menus for the associated icons, or be left as an on-click slide-in. In the case of web apps, the entire bar can be hidden by clicking on the left point arrow in the middle of the bar.

Tables

Tables are the data store for Honeycode applications. A workbook can have multiple tables, up to a current maximum of 100, and each table can be used by multiple applications, enabling you to build several different applications using the same underlying data.

While a developer could make a direct association to tables in the context of databases, the interface used to present and model data is that of a spreadsheet, with support for most of the Excel functions and formats, making it intuitive for users to get started. Figure 2.4 lists all of the components of the Tables interface in Honeycode:

Figure 2.4 – The Tables interface in Honeycode

Components of the Tables interface

Here are the components of the Tables interface:

Importing data to tables

Being able to easily build and deploy an app is the key value proposition of Honeycode. However, not every app is meant for data collection, and not every app needs to be built on an empty dataset. There are use cases for easier representation and access of existing data via apps that can be built with Honeycode. To facilitate this, we need to be able to import this existing data into Honeycode.

In Honeycode, you can easily import your existing data by uploading a CSV file. The data can be uploaded to a new table or an existing table following the steps listed in the following sub-sections.

Importing data to a new table

Click on the control to create a new table, and then select Import CSV file from the list, as shown in Figure 2.5:

Figure 2.5 – Creating a new table by importing data from the CSV file

Next, a popup opens, as shown in Figure 2.6, that lets you choose whether the data imported through the CSV file has a header row or not. If you do not select this option, Honeycode will provide the default column names for each of the data columns created, namely Column1, Column2, and so on:

Figure 2.6 – The follow-up dialog to declare whether there is a header row for the data or not; if unselected, default column headers will be applied

Importing data to an existing table

Right-click on the table to which you'd like to import the data. Alternatively, click on the 3-dot icon on the right-hand side of the table name and then select Import to this table from the list of possible actions, as shown in Figure 2.7:

Figure 2.7 – Importing data from the CSV file to an existing table

Next, a popup opens that allows you to choose whether the data imported through the CSV file has a header row or not and also provide the mapping from imported data columns to those in the existing table: If the imported data has a header row option that has been selected, the popup reads the first row of the file and populates the field on the left-hand side with those values. Now you can select which imported data columns should be mapped to which of the existing data columns in the table, as shown in Figure 2.8:

Figure 2.8 – Mapping imported data columns to your existing table when the imported data also has column headers

If the imported data does not have a header row, Honeycode will provide the default column names for each of the data columns created, namely Column1 and Column2, and you can use those as a reference to map to the existing data columns in the table. Take a look at Figure 2.9:

Figure 2.9 – Mapping imported data columns to an existing table when the imported data does not have column headers

Builder

Builder is where the magic happens in Honeycode. This is where we'll create our apps for both mobile and the web. In this section, first, we'll take a look at the components of the Builder interface, as shown in Figure 2.10. Following that, we will dive in and explore the app screen and its parts. Finally, we will list and describe all the objects or controls that you can add to the screen:

Figure 2.10 – The Builder interface

Components of the Builder interface

Here are the components of the Builder interface:

App screens

In general, an app will be made of multiple screens, and the builder lists all of the screens in the column to the left-hand side of the screen editor. Each screen in the app has two separate identifiers for each screen, as marked by a and b in Figure 2.11. Sometimes, it can be confusing to know which one is for what, and in general, the best option is to keep them the same:

Local name: This is the identifier marked a in the following screenshot and is used for local references when building the app, for example, identifying the screen when building navigations through automation. This name is not exposed outside of the builder context and is, therefore, not visible to the end user.Screen name: This is the identifier marked b in the following screenshot and is the value exposed to the end users of the app. The value is what you'll see in the screen header and the global navigation menu of the app.

Every app screen consists of three main sections:

Header: This contains two parts:A content box with the name of the screenAn optional button to define an action at the screen levelBody: This is where we build our application layout and define our business logic.Global Navigation: This section is located at the bottom of the screen for mobile apps and