Everything in one place, so it can talk to itself.
Most small operations run on four or five tools that don't know about each other. The point of MFICore is that the form, the database, the page and the automation are the same system — so wiring them together is a choice rather than a project.
Websites
Pages you can undo.
A tree of pages edited in the browser. Every save is a version you can go back to, and publishing is a separate step — so a draft is never live by accident.
- Your own domain, or one of ours
- Certificates issued and renewed without you thinking about it
- Your own header, footer and reusable blocks
Draft Published 3 days ago
v7 — today 14:02you
v6 — Tue 09:41you
v5 — Mon 16:30sam
Restore any version. Publishing is its own, deliberate step.
Data
A database, not a spreadsheet.
Tables with a schema, stored as JSON but queryable as real SQL columns. Read them in a console, save the query as a view, and drop that view onto a page as a live table or a chart.
- Reads run sandboxed against a role that can only read
- A saved view is what a page binds to — no exporting
- The same tables your workflows read and write
select customer, total from orders
where paid_at > now() - interval '7 days'
| customer | total |
|---|---|
| Rivera Landscaping | $1,240 |
| Okafor & Sons | $860 |
| Blue Ridge Dental | $2,110 |
saved as view: weekly_paid
Save the query once; put it on a page as a table or a chart.
Forms
Where a contact form stops being a mailbox.
Typed fields including image and video capture. Public, or restricted to people who have signed in. A submission is stored — and can start a workflow.
- Photos and video, straight from a phone
- Every submission kept, searchable and exportable
- Works with JavaScript switched off
Your name
What do you need?
Photo of the job
Send it
↳ workflow started · quote-intake
The submission is the trigger. Nobody has to notice an email.
Automation
Watch it happen, step by step.
A visual builder with conditions, loops and parallel branches. Nodes for HTTP calls, email, your datastore, a local language model, and scripting in C# or JavaScript.
- Triggered manually, on a schedule, by a form, or by a webhook
- Connectors for IMAP, calendars, SFTP, SSH and more
- A run viewer showing every node's input, output and error
When something breaks, the run tells you which node and why.
Accounts and access
Your site is its own identity provider.
Every site speaks OpenID Connect, so other software can use it to sign people in. Access to the dashboard is per-feature, and can be handed to a team without handing over the site.
- Members sign in to your site, not to ours
- Grant one feature, not the whole dashboard
- Every access change is written down
Pages Studio team · edit
Datastore Sam · read
Workflows you only
Billing you only
OpenID Connect enabled
Hand over a panel without handing over the keys.
See the whole thing for the price of a coffee.
Or read exactly what each part costs first.