TAF Studio

A real IDE for metadata-driven applications.

Pull your app into files, design it, check it and release it, in the editor your developers already know.

64-bit Windows desktop app on the VS Code engine. No VS Code install needed.

OpportunityDetail screen
NameNorthwind renewal 2027
CustomerNorthwind Traders
Amount48,000.00
Discount %Drop a field here
1// Validation hook: runs before every Opportunity insert and update
2public class DiscountRule : IValidationHook
3{
4    public Task ValidateAsync(HookContext context)
5    {
6        if (context.Fields.TryGetValue("DiscountPercent", out var d)
7            && Convert.ToDecimal(d) > 20)
8            context.Errors.Add("Discounts above 20% need approval.");
9        return Task.CompletedTask;
10    }
11}
Check Script Compiled against the platform: 0 errorsInfo Hook phase: Validate. Entity: Opportunity
Northwind renewal 2027OpportunityAwaiting approval
Amount48,000.00
Discount %25
Approvers
Sales managerApproved
FinancePending
Illustration of TAF Studio. The Designer, Code and Preview tabs can be switched.

The problem

Developers should not have to fight the builder.

Browser builders slow down as apps grow and scatter one feature across dozens of screens.

A developer at a two-monitor desk in the evening, working in a dark-theme development environment with a file tree and a form designer on screen
One feature, many screens to hunt through
Go to: Opportunity detail → query → object
Explorer: Sales Operations Opportunity Opportunity list Opportunity detail Opportunity lifecycle DiscountRule.cs
Every part of the app in one explorer, linked
Illustration.

How it works

Change freely. Publish on purpose.

Edits stay in your working copy until they pass the checks and you choose to publish them.

  1. PullLoad the app into files. No IDs to paste.2 items changed on platform
  2. DesignDesigners run the real form engine.Discount % added to screen
  3. CheckProblems panel and the platform compiler.1 error. Nothing published.
  4. DebugRun a script locally with a sample record.Finished locally
  5. ReviewEvery unpublished change, before and after.3 unpublished changes
  6. PublishOnly the items you choose.Published. Restorable.
Every save kept in a local history. Restore any change instead of rebuilding it by hand.
Illustration.

What you get

A designer for every part of your app.

Your own app, read live from the platform. No demo mode, no mock data.

  • Explorer of every object

    More
    Objects, queries, screens, lifecycles, workflows, reports, menus and scripts, grouped by object or by type. Create anything from one gallery.
  • Object designer

    More
    See fields, types, keys and relationships. Add fields and lookups, set validation, bring in a table that already exists, and preview the SQL before anything runs.
  • Query designer

    More
    Pick fields, including fields of related objects, add filters, sort order and parameters, then run the query to see real rows.
  • Screens, drag and drop

    More
    Build forms and lists in a drag-and-drop designer that uses the same engine as the web app, so what you preview is what your users get.
  • Lifecycles as a diagram

    More
    Draw the statuses a record moves through and the transitions between them. Choose the screen each transition opens and the workflow it runs.
  • Workflows and triggers

    More
    Automate steps on record events or on a schedule. Run a workflow to test it, then see its recent runs taken from the platform logs.
  • Reports and notifications

    More
    Design reports, preview them and set their schedules. Define when each email or in-app notification is sent, who gets it and what it says.
  • Scripts, checked and debugged

    More
    Scripts open as real code files. Check them against the platform before you publish, debug them, and read the runtime logs when something fails.
  • Validation in the Problems panel

    More
    One command scans every screen and query for duplicate component keys, fields a query uses that its object lacks, and filter logic the platform would reject.
  • Roles and app administration

    More
    Roles and object permissions, users and teams, choice lists, approvals, SLAs and layout rules, each in its own editor.
  • Release diff and promote

    More
    Compare two environments without changing anything, build a release from the changes you choose, and deploy it from Development to QA.
  • TAFI inside Studio

    More
    Ask questions about your app, plan a change, or build a feature from chat, with an approval after each stage. Everything TAFI builds opens in the same designers.

Review and release

Compare, then release to QA.

See every difference between Development and QA. Production stays a separate, deliberate step.

@@ Opportunity fields
Name Text required
Amount Currency required
+ DiscountPercent Percent
+ ApprovalRequest Lookup → Approval request
@@ Opportunity flags
- Approvals off
+ Approvals on
Journal 14:02 Added DiscountPercent, before and after savedJournal 14:05 Published Opportunity detail screenRelease 5 items selected for QA. Production is released outside Studio.

How releases work across environments →

AI inside

TAFI is built in.

It knows the app you have open, proposes a plan, and applies it only after you confirm.

Explorer Ticket Open tickets Ticket form Ticket lifecycle Team lead alert
TAFI, Plan mode
Add SLA tracking to tickets.
Plan, nothing changed yet:
  1. Field SLA due date on Ticket
  2. Add it to the open-tickets query and form
  3. Escalation transition and a team-lead notification

Build in an editor your developers already trust.

Book a Studio demo: we open a real TechAppForce app, add a feature end to end, check it and release it to QA while you watch.

  1. Open a real TechAppForce app in Studio
  2. Add a feature end to end
  3. Check it
  4. Release it to QA
Illustration.