All editions

Design powerful SharePoint forms by pointing and clicking, not coding.

The heart of Modern DFFS: a visual builder for laying out forms, and a rules engine for conditional logic, validation, and field behavior — all in modern SharePoint, no code required.

Key capabilities

  • Visual layout — grids, rows, columns, tabs, HTML and rich-text blocks, added where you click and moved by dragging.
  • Standalone form elements — not everything on a form has to be a column. Drop in a Power BI tile to render a live report inside the form, filtered to the current item with tokens; it lives in the form configuration and stores nothing on the list item. (Pro & Enterprise)
  • Rules engine — show/hide fields, set values, validate, and respond to user input with conditions and actions.
  • Dynamic content picker — wherever a box accepts a runtime value, focusing it reveals an Add dynamic content menu: field values, the current item, the signed-in user, site and web, timestamps, URL query-string values and variables. Pick from the list instead of memorising token syntax. Full token reference →
  • Advanced rule actions (Pro & Enterprise) — send email, Compute field value, write to another list, and integration actions (Power Automate flow / webhook).
  • Custom JS & CSS (Pro & Enterprise) — an escape hatch for developers, with autocomplete for field names and built-in dffs_ functions, plus a CRUD API for any list. Go further with a custom render function and replace a field’s input control entirely, without losing rules, validation or save.
  • Search & highlight the configuration, search by item ID, and label elements for organization.
  • Multi-language (MUI) labels and descriptions (Pro & Enterprise).
  1. Build the structure on the canvas

    Every form is a grid of rows and columns, each added with the green + on the container you want it in and moved afterwards by dragging its handle. Add a tab set to split a long form into steps — here Request, Items and Approval — then place fields inside. Each element carries its own controls for reordering, resizing and editing, and fields render as their real input type: Department as a dropdown, Priority as a star rating, Date needed as a date picker.

    The Modern DFFS form builder canvas: a grid containing a row, column and tab set with Request, Items and Approval tabs. Inside the Request tab are the Title, Requester, Department, Priority (shown as a star rating) and Date needed fields, each with its own drag, menu and edit controls.
  2. Add a field without leaving the canvas

    Every container has an Add element control, so new fields go in exactly where you clicked. Pick Field and the list’s columns come up with their internal names and types alongside the display names — the detail that matters when two columns read alike. Choose one and it lands in place, rendered as its real control: Status arrives as its three choice options, not a generic box.

    A Select field dialog with a Select multiple toggle and a filter box, listing the list's columns in a table of display name, internal name and type — Approver (User), Date needed (DateTime), Department (Choice), Priority (Number), Requester (User), Status (Choice) and Title (Text) — with the Status row highlighted under the pointer. The builder canvas after the field is added: the Approval tab now holds the Approver field and, below it, a new Status field rendered as three radio options — Pending, Approved and Rejected.
  3. Add the behavior with rules

    Rules are built the same way — no code. Name the rule, pick the conditions that trigger it, then add the actions to run when it matches — with a separate set for when it doesn’t, if you need one. This rule runs on Form loaded and sets Requester to [[currentuser:loginName]], prefilling the form with whoever opened it. You do not have to know that syntax, or type it: click into the value box and an Add dynamic content menu appears, listing everything DFFS can resolve at runtime. The quickstart walks through it → Actions can also show and hide elements, compute values, validate input, and send email.

    The Rules tab showing a rule named "Ready": a "Conditions for triggering this rule" panel set to Form loaded, and an "If yes" branch containing a Set field value action targeting the Requester field with the value [[currentuser:loginName]].

Worked example

Build a request form by adding fields into a two-column layout with the green +, add a tab set for details, then create a rule: when Request type is “Hardware”, show the Asset and Quantity fields and make them required. No code — and if you want more, drop into Custom JS.

Getting started documentation →

Build your first form free for 30 days.

Full functionality, no credit card.