Field entry 06 · Data & connectorsTables · Schema · Transformation · Access · SQL

Your data, in one place.

Connect it once, clean it once, and every builder reads the same tables. Your web apps, your dashboards, your workflows and your search engine all start from here.

1,000 free tokens to try · Unlimited app users · Our cloud or your own servers

We open in waves. Join early access and we'll email you when your workspace is ready.

Fernleaf Supply/Data/Tables
Built-in database Dev
orders18,942 rows status = Paid Filter + Column Export
123order_idabccustomer@emailabcregion$totalabcstatus
10482Maya Chenmaya.chen@gmail.comWest$612.50Paid
10481Leo Parkleo.park@outlook.comEast$129.00Paid
10480Ana Ruizana.ruiz@gmail.comSouth$189.00Shipped
10479Sam Okaforsam.okafor@gmail.comWest$349.00Paid
10478Priya Nairpriya.nair@gmail.comCentral$47.00Shipped
10477Lena Foxlena.fox@gmail.comWest$149.00Paid
10476Tom Beckertom.becker@outlook.comEast$24.00Paid
10475Ivy Brooksivy.brooks@gmail.comNorth$18.00Shipped
10474Omar Haddadomar.haddad@gmail.comSouth$129.00Paid
10473Grace Liugrace.liu@outlook.comWest$189.00Paid
10472Noah Kimnoah.kim@gmail.comCentral$36.00Shipped
10471Ella Novakella.novak@gmail.comEast$149.00Paid

Newest orders first, straight from fernleaf.app.

RowOrder 10482
customerMaya Chen
regionWest
total$612.50
placed onfernleaf.app
Read byStorefrontSales overviewNew order workflow
SchemaDrag a field onto a tableSave
customers
idinteger
nametext
emailtext
regiontext
orders
order_idinteger
customer_idinteger
product_idinteger
totalnumeric
placed_attimestamp
products
idinteger
nametext
pricenumeric
in_stockboolean
regions
nametext
managertext
many to one
Schema saved to Dev
PreviewSourceSave as table

The raw file, as it arrived.

Saved as revenue_by_region
Preview asYou, OwnerJo Lee, West region manager
row.region in user.regionsemail masked
123order_idabccustomer@emailabcregion$total
10482Maya Chenmaya.chen@gmail.comWest$612.50
10481Leo Parkleo.park@outlook.comEast$129.00
10479Sam Okaforsam.okafor@gmail.comWest$349.00
10480Ana Ruizana.ruiz@gmail.comSouth$189.00
10477Lena Foxlena.fox@gmail.comWest$149.00
10478Priya Nairpriya.nair@gmail.comCentral$47.00
10473Grace Liugrace.liu@outlook.comWest$189.00
10471Ella Novakella.novak@gmail.comEast$149.00
10468Ruby Diazruby.diaz@gmail.comWest$89.00

You see every row and every column.

Request Jo Lee asked for access to customers Review
revenue_this_monthordersRun
abcregion$revenueshare
West$148,210.00
East$112,640.00
South$92,870.00
Central$71,330.00
North$57,260.00

5 rows · $482,310 this month · Ran in Dev

Paused
    Fig. 1. The data console on Fernleaf Supply. Pick a tab to jump, or hover to pause.
    01What people build with itThree Fernleaf examples

    One table, used by every builder.

    Most teams start with one table they all need. Here is how Fernleaf Supply uses the data console.

    Fernleaf · Orders

    An orders table the whole shop shares

    The storefront writes each order, the sales dashboard reads it, and the New order workflow starts when a row lands.

    Fernleaf · Products

    A clean supplier price list

    A messy spreadsheet comes in, gets trimmed, split and typed in applied steps, and is saved as the products table.

    Fernleaf · Access

    A view for each region manager

    One row rule means each manager sees only their own region, with customer emails masked.

    02The data consoleSeven entries · Fig. 2 to 8

    Connect it, clean it, share it.

    The foundation under every builder. Start with the built-in database, bring your own, then decide who sees what.

    01built-in database

    Entry 01

    A database is already there

    Every workspace comes with a built-in database. Design tables by dragging fields in the Schema builder, then add functions and triggers next to them.

    • Tables, functions and triggers in one place
    • Design tables by dragging, with links between them
    • A SQL editor with logs of the queries you ran

    Fig. 2. Two Fernleaf tables in the Schema builder, linked by customer.

    02connect your own

    Entry 02

    Connect the database you already have

    Save a connection to your own database or a REST API once. Then query it, or load its tables into the built-in database with a connector, by hand or on a schedule.

    • PostgreSQL, MySQL, MariaDB, SingleStore, Oracle, SQL Server, Firebird, Vertica, IBM Db2, Teradata, IBM Informix, Firebase, MongoDB and more
    • REST APIs, called from pages and workflows
    • The list grows with every release
    See every integration

    Fig. 3. A new connection for the Fernleaf shop database. Pick a type and test it.

    03import and export

    Entry 03

    Bring files in, take tables out

    Load a spreadsheet or a data file into a table with a connector. Export rows as CSV or JSON when someone needs a copy.

    • Load CSV, Excel, JSON and Parquet files
    • Export rows as CSV or JSON

    Fig. 4. Four file types in, two ways out.

    04transformation

    Entry 04

    Clean it once, in applied steps

    Each change is a step in a list, with a live preview of the data at that point. Add a Python or R step when you need one, then save the result to a table.

    • Split, trim, clean, change case, add a prefix or suffix, extract text
    • Fill down or up, unpivot, maths
    • Group By with sum, average, median, count and more

    Before

    After

    Fig. 5. Pick a step to see what it does to Fernleaf data.

    05access

    Entry 05

    Decide who sees which rows

    Write a rule once and it holds everywhere the table is used. Check it by previewing the table as any person.

    • Row rules and column masking, with tags on columns
    • Preview as any person before you share
    • Review changes, see activity, handle access requests and reviews
    Preview as
    customeremailregiontotal
    Maya Chenmaya.chen@gmail.comWest$612.50
    Leo Parkleo.park@outlook.comEast$129.00
    Sam Okaforsam.okafor@gmail.comWest$349.00
    Tom Beckertom.becker@outlook.comEast$24.00

    Owner: every row, every column.

    Fig. 6. The same orders table, previewed as three people.

    06combine sources

    Entry 06

    Combine sources Enterprise

    When two tables hold the same thing and nothing links them, consolidation lets you say which columns match. A run then fills your start table from the tables you linked.

    • Match tables by a column they share, even when nothing links them
    • A run fills columns of the start table, in place
    • Works inside one database
    • Available on the Enterprise plan

    Fig. 7. Two tables linked by a shared column. A run fills the start table.

    07your own connectors

    Entry 07

    Write your own connector

    For a system nobody else has, write a connector in the Plugin studio. It then sits in your list next to the rest.

    • JavaScript, Python, Java or Go
    • Built in the Plugin studio, inside your workspace
    Browse integrations
    Plugin studio
    • PostgreSQLData
    • MongoDBData · Triggers
    • Fernleaf stock systemYour own · JavaScript

    Fig. 8. Your own connector, listed next to the others.

    03Works withThe builders that read it

    Every builder reads the same tables.

    Change a table once, and the page, the chart, the workflow and the search engine all see it.

    Connects to

    PostgreSQL · MySQL · MariaDB · SQL Server · Oracle · MongoDB · Firebase · REST APIs · and more

    Browse integrations

    Plan notes

    • EnterpriseCombine sources with consolidation
    • Connector syncEvery 60 min on Starter, 15 on Team, 5 on Enterprise
    04QuestionsAbout your data

    Fair questions.

    No. Every workspace has a built-in database. Design tables in the Schema builder and start building. You can connect your own database later.

    PostgreSQL, MySQL, MariaDB, SingleStore, Oracle, SQL Server, Firebird, Vertica, IBM Db2, Teradata, IBM Informix, Firebase, MongoDB and more, plus REST APIs. The list grows with every release.

    Yes. Load CSV, Excel, JSON or Parquet files into a table with a connector, then clean it in applied steps. You can export rows as CSV or JSON.

    Yes. Row rules decide which rows a person sees, column masking hides values like emails, and you can preview a table as any person to check it.

    Call it as a REST API, or write your own connector in JavaScript, Python, Java or Go in the Plugin studio.

    Where to begin

    Connect your first table.

    Start with the built-in database or your own. Either way, every builder reads it.

    We open in waves. Join early access and we'll email you when your workspace is ready.