Building your app with AI Chat

AI Chat builds your application for you. You describe what you need in plain language and AI Chat creates the tables, fields, calculations and automations directly in Tabidoo β€” no clicking through the designer, no scripting knowledge required.

This article covers what AI Chat can build. For adding, changing and finding records in a finished application see Working with your data in AI Chat; for what AI Chat is and what it already knows about your application see AI Chat.


Create a whole application from a description

Describe what you need to run and AI Chat creates the application in one step β€” tables, fields, the relationships between them, the modules that group them in the menu, the extensions it needs, and an icon and colour so it looks finished.

Create a fleet management application with drivers, vehicles and trip tracking.

It knows sensible starting points for invoicing, CRM, project management, task management and marketing, and adapts them to what you describe. You then keep refining in the same conversation β€” add a table you forgot, rename a field, connect two tables you built separately β€” instead of starting over. In a multi-language application it fills in table, field and option names in the languages you use.

Split very large builds into a few requests. Applications stay easiest to work with up to about 20 tables and 50 fields per table, and building in a couple of steps lets you check the result as you go.


Tables and fields

Tables β€” create, rename, describe, reorder and delete them, including their icon. A deleted table can be restored; just ask.

Fields β€” every field type Tabidoo offers, from text, numbers and money through dates, dropdowns and checklists to attachments, calculated fields and links to other tables. Beyond the type, AI Chat sets how a field behaves: required, minimum and maximum, maximum length, a regular expression to validate against, a default value, whether values must be unique, which field is the record's title, which one is the import key, the order of fields, and whether a field shows in the grid, in the form, or on its own tab.

Add a Status field with the options New, In progress and Done, and make it required.

Dropdown options β€” not just the option texts but the styling of each one: an icon, a colour from your theme palette and a badge, so statuses and priorities read at a glance in the grid.

Name your fields now, not later. A field's internal name is what scripts, integrations, formulas and the API refer to. Renaming it afterwards breaks everything that used the old name, so it pays to tell AI Chat what you want the fields called while they are being created.


Relationships between tables

All four kinds, with both sides set up:

Kind

What you get

Many-to-one

The common one β€” a record points to a single record elsewhere (an order points to a customer).

One-to-many

The parent's form shows an editable sub-table of its children.

Many-to-many

Both sides list each other.

One-to-one

A single matching record on each side.

On top of the link itself AI Chat can pull columns from the linked table onto this side, aggregate linked records (count, sum, average, minimum, maximum, or a listed-out text), and make those columns available to reports, workflows and formulas. With the Users and roles extension installed, records can be linked to users β€” an owner or assignee field.

Link orders to customers and show the customer's city and phone on the order.

Modules, extensions and appearance

Group tables into modules with a colour and an icon or a short abbreviation, and set the application's icon and colour and the icons of tables and modules.

AI Chat can install or remove extensions for you: Workflow Automation, Users and roles, Data Audit, Reporting system, Custom Data Source, Scripting Extensions, Snapshots, System log, Exchange Rates, GDPR report templates, Links to documents.

Check the icon. If the icon you asked for is not in the icon set, Tabidoo stores the closest available one instead. Change it in the table settings if it does not fit.


Calculated fields

Describe the calculation in words and AI Chat writes the formula.

Add a Total price field that multiplies quantity by unit price.

Formulas can do arithmetic and rounding, work with text (join, case, length, replace, substrings), work with dates (add days or months, difference between two dates, extract the year, month, weekday or ISO week, format a date), and read values from the record itself, from a linked record, from aggregations over linked records, and from the current user.

Two things to keep in mind:

  • A formula is a single expression for a single record. It cannot read other records, run multi-step logic or call anything outside Tabidoo β€” that belongs in a workflow.
  • A calculated field recalculates when its record is saved (plus once for all records right after the formula is set), never on its own as time passes. A "days until deadline" field will not count down by itself.

Highlight your data

AI Chat adds conditional formatting rules that colour a whole row or a single cell when a condition is met.

Highlight tasks in red when the deadline has passed and the status isn't Done.

Conditions combine several criteria with AND/OR and nested groups and can look at columns from a linked record. Dates can be relative β€” today, today+7, today-3 β€” so "due within a week" keeps working without maintenance, and a rule can single out the records belonging to whoever is looking.

The highlight is expressed as a meaning (success, warning, danger, negative) rendered as coloured text or a filled background that follows your theme, so the grid stays readable in light and dark mode. If you need one exact colour, set it in the table settings β€” AI Chat works with meanings, not hex codes. The rule belongs to the table, so it applies everywhere the table is shown: grid, calendar and Gantt.


Workflows

Describe what should happen and when, and AI Chat creates the whole scenario: it picks the trigger, writes the script and switches the workflow on. If the application does not have the Workflow Automation extension yet, saving the first workflow installs it.

When I set an order to Done, fill in the completion date automatically.

All six triggers are available:

Ask for this

Trigger you get

"When I set an order to Done, fill in the completion date."

When Record Changed

"Send me a reminder 3 days before the due date."

Time from Table Field

"Every Monday morning, give me a summary of open orders."

At the Scheduled Time

"I want an Approve button that marks the selected rows."

Custom Button

"When a form arrives from my website, create a record."

Webhook

"After an import, fill in the source on the new records."

When Records Imported

The steps are written as scripts, including the ones you would otherwise assemble from boxes β€” sending an e-mail or a notification, posting to Slack, calling a webhook, generating a report, loading external data, conditions and loops. The result behaves the same; it is just written as code, which you can read and edit in the workflow editor. AI Chat can also read the run log afterwards and tell you why a run failed.


Scripts AI Chat writes but cannot save

AI Chat knows the typed model of your application, so it writes form scripts, workflow logic and custom code against your real tables and fields, including validation and error handling. It also reads the scripts already on your tables and explains what they do.

It cannot save that code for you β€” you paste the result into the Tabidoo UI. Button and Free HTML fields are therefore created as empty placeholders. Review and test generated code before using it in production.


What stays in the designer

AI Chat builds structure and logic. These parts are yours to finish by hand:

  • Views β€” grid, cards, kanban, calendar and Gantt, saved filters, view column settings
  • Form layout β€” tabs, containers, field placement and widths
  • Form scripts and the code behind Button and Free HTML fields β€” drafted by AI Chat, pasted in by you
  • Roles and permissions β€” AI Chat installs the extension and explains the setup; dedicated support for building roles is being prepared
  • Number series (automatic numbering) and table inheritance (base tables)
  • Pictures on dropdown options β€” AI Chat sets an icon or a colour; a picture is uploaded by hand
  • The owner of an existing application β€” ownership is set when the application is created

Good to know

You see a preview before anything is written. AI Chat shows an interactive preview of what it is about to do, so you can look it over and confirm it.

Automations apply from the moment they exist. A new workflow does not run over records that are already in the table, and a new calculated field fills in only when each record is next saved (plus once for all records right after the formula is saved). To apply an automation to existing data, save the records again β€” or ask AI Chat for a one-off workflow that does it in bulk.

Renaming a dropdown option does not rewrite your data. Records still holding the old value keep it. See Working with your data in AI Chat for how to rewrite them.

Be specific. Name the exact table or field you mean. A vague request is more likely to touch more of your application than you intended.


Troubleshooting

The workflow was created but nothing happens. Open the workflow and check its run log β€” a failed run is recorded there with the reason. The most common cause is the run identity. A workflow runs either as the logged-in user, as you, or under an API token; if it runs as the logged-in user and that user has script execution disabled in their profile settings, every run fails with The user did not allow scripts under their login. Switching the workflow to Run under Me or to an API token resolves it.

The workflow runs but skips some records. Check whether the trigger is limited to specific fields. A When Record Changed trigger restricted to one field only fires when that field actually changes β€” setting the value on a brand-new record through an import or the API may not count as a change.

A calculated field is empty. The formula is validated when the table is saved, so a broken one would have been rejected. An empty value usually means one of the input fields is empty and the whole expression evaluates to nothing. Ask AI Chat to guard the optional parts.

AI Chat says it cannot do something. Check What stays in the designer above. Everything else is worth rephrasing once β€” describing the outcome you want ("orders past their deadline should stand out") usually works better than describing the mechanism.