Node reference

Every node, what it does, and one worked example

302 nodes across 23 groups. Each page shows the node in a realistic pipeline, its settings, the rows going in and coming out, and the traps worth knowing before you build.

Input

21

Data Input

A small table you type or paste straight into the node — your own column names, types and rows — used as a data source like any file.

File Input

Reads one tabular file — on your own computer, in My files on FlowDoo, or in Google Drive — and turns it into rows for the pipeline.

Excel Input

Reads one sheet of an Excel workbook (.xlsx or .xls) — or just a cell range of it — from your computer, My files on FlowDoo or Google Drive, and turns it into rows.

CSV Smart Reader

Reads a delimited text file and works out the awkward parts itself: the delimiter (comma, semicolon, tab or pipe), whether the first row is a header, and the text encoding.

PDF File Input

Reads a PDF — on your own computer, in My files on FlowDoo, or in Google Drive — and returns one row per page with that page's text.

Word File Input

Reads an uploaded Word document and returns its text as one row per non-empty line.

MySQL Database

Reads a whole table from a saved MySQL connection into the pipeline.

SQL Server Database

Reads a whole table or view from a saved Microsoft SQL Server connection.

Input Folder

Lists every file of one type in a folder — on your own computer, in My files on FlowDoo, or in Google Drive — one row per file.

PostgreSQL Input

Reads a whole table or view from a PostgreSQL database — on your network or hosted (RDS, Azure, Supabase, Neon…) — and turns it into rows.

Azure SQL Input

Reads a whole table or view from an Azure SQL database (yourserver.database.windows.net) and turns it into rows.

DuckDB Input

Runs a SQL query with DuckDB over one local file — Parquet, CSV, JSON (the view data) or a DuckDB database (its own tables) — and turns the result into rows.

Oracle Input

Reads a whole table or view from an Oracle database and turns it into rows — Thin mode, so no Oracle Client needs installing on the server.

MongoDB Input

Reads documents from a MongoDB collection — optionally filtered and narrowed to some fields — one row per document, nested fields flattened to dot paths.

Snowflake Input

Reads a whole table or view from Snowflake and turns it into rows.

BigQuery Input

Runs a read-only standard-SQL query in Google BigQuery and turns the result into rows, every page of it.

Databricks Input

Reads a whole table or view from a Databricks SQL warehouse (Unity Catalog or hive_metastore) and turns it into rows.

IBM DB2 Input

Reads a whole table or view from an IBM DB2 database (LUW or Db2 on Cloud) and turns it into rows.

Teradata Input

Reads a whole table or view from Teradata Vantage and turns it into rows.

JDBC Input

Reads a whole table or view from any database that has a JDBC driver — Informix, SAP HANA, Sybase ASE, H2, Firebird and more.

ODBC Input

Reads a whole table or view through ODBC — a DSN set up on the FlowDoo server, or a connection string naming an installed driver.

Files & Folders

12

File Stat

Adds details of the file each row names — whether it exists, its name, extension, size in bytes and last-modified time — reading files on the server, in My files, in Google Drive or on a computer sharing through the desktop agent.

File Copy

Copies the file each row names into another folder — on the server, in My files, in Google Drive or on a computer sharing through the desktop agent.

File Move

Moves the file each row names into another folder: copied there, then removed from where it was.

File Rename

Renames each file in its own folder from a pattern: {name} is the old name without its extension, {ext} the extension, {date} today, {time} the time, and {Column} a value from the row.

File Delete

Deletes the file each row names, on the FlowDoo server or in My files.

File Merge

Reads every file in a folder whose name matches a pattern — part-*.csv, *.xlsx — and stacks them into one table, with each row's source file in __source_file.

File Append

Adds the incoming rows to the end of a file — CSV, tab-separated text or JSON Lines — creating it, with a header line, the first time.

Text File to Rows

Reads a text file as one row per line — or, given a delimiter, splits each line into columns.

File Encoding Convert

Re-saves text files in another encoding — for example Latin-1 or Windows-1252 exports as UTF-8 — in place, or into another folder.

File Path Builder

Builds a file path per row from a template: {Column} takes the row's value, {date} today's date, {time} the time; characters a file name cannot hold become _.

Zip Create

Bundles files into one .zip — the files the rows name, or every matching file in a folder — and saves it to a folder in any location.

Zip Extract

Unpacks a zip file and gives one row per file inside it — name, inner folder, size and path — ready for File Input or a Loop.

Connectors

13

Google Sheets

Reads one tab of a Google Sheet through a service account and returns it as rows.

Google Drive

Reads the files in a Google Drive folder, either as rows or as a list of files for another node to open.

Salesforce

Runs a SOQL query against a Salesforce org and returns the matching records as rows.

PowerSchool

Reads records from PowerSchool SIS — a database table such as students or cc, or a named PowerQuery — and returns them as rows.

REST API

Calls a REST endpoint and turns the JSON it returns into rows.

Email Read (IMAP)

Reads messages from your own mailbox over IMAP — one row per message, or one per attachment saved as a file — filtered by folder, sender, subject, date and unread.

S3 / Object Storage Input

Reads the files under a prefix in an S3-compatible bucket (Amazon S3, Cloudflare R2, MinIO, Wasabi…) — merged into rows, or as one row per downloaded file.

FTP / SFTP Input

Reads the files in a folder of an FTP, FTPS or SFTP server — merged into rows, or as one row per downloaded file.

SharePoint Input

Reads the files in a SharePoint document library folder through Microsoft Graph — merged into rows, or as one row per downloaded file.

Dropbox Input

Reads the files in a Dropbox folder — merged into rows, or as one row per downloaded file.

Google Analytics Input

Runs a Google Analytics 4 report — dimensions and metrics over a date range — and turns it into rows, one per combination of dimensions.

ServiceNow Input

Reads the records of a ServiceNow table — incidents, changes, CMDB items, users — through the Table API, optionally filtered by an encoded query.

Dynamics CRM Input

Reads the records of a Dynamics 365 CRM (Dataverse) table — accounts, contacts, opportunities, custom tables — through the Web API.

Security

7

Filter

2

Column

9

Cleaning

5

Data Quality

9

Data Profile

Summarises every column — how many blanks, how many distinct values, the smallest and largest value and the commonest pattern — as a table with one row per column.

Schema Validator

Checks that the columns you expect are there, that their values can be read as the right type, and that columns that must be filled have no blanks — and stops the run (or warns) when they do not.

Quality Rules / Assertions

Checks every row against your rules — required, not-empty, range, regex and in-set. Rows that break a rule leave on the Fail pin with the broken rules written in a reason column; the rest leave on Pass.

Null / Blank Audit

Measures the share of blank cells in each column and stops the run (or warns) when any column is blanker than the threshold. The rows pass through unchanged.

Outlier Detection

Finds values far from the rest of a numeric column — by z-score, by IQR fences or by percentile — and adds a column flagging (or scoring) each row.

Fuzzy Match

Groups values that are spelled alike — Jon and John, Acme Inc and ACME Inc. — and writes each row's group number, or the group's first spelling, into a new column.

Standardize

Rewrites one column in a standard form: phone numbers as +<country><number>, emails in lower case, names in Proper Case, or addresses with USPS abbreviations.

Duplicate Grouping

Groups rows that share their match keys — exactly, or fuzzily — and keeps one survivor per group: the most complete row, the longest, or the first.

Address Verify / Geocode

Soon

Will verify postal addresses against a geocoding service and append latitude and longitude — plus, optionally, the verified address and how well it matched.

Text

11

Change Case

Rewrites the values of one column as upper case, lower case or title case.

Merge Columns

Joins two or more columns into a single new column with a separator, removing the originals.

Split Column

Splits one column on a delimiter and adds the parts as new columns named after the original.

Substring / Pad

Takes characters by position — from a start, the first few or the last few — or pads text to a fixed width, like 123 → 000123.

Index / Find

Finds where a piece of text first appears (its position, 0 when absent), or pulls out the text between two markers such as ( and ).

Word / Paragraph Tools

Splits text into words, lines or n-grams — one row each — or counts the words in a column.

Fuzzy Distance

Scores from 0 to 1 how alike a column is to another column — or to one fixed value — with Levenshtein, Jaro-Winkler or Soundex.

Soundex / Phonetic Key

Adds the Soundex code of a name — a letter and three digits for how it sounds — so Robert and Rupert both become R163.

Text Template Merge

Writes one text per row from a template: {Column} placeholders are filled from the row, $Variables from the flow — e.g. a personalised email body for every customer.

Smart Title Case

Title case that knows names: O'Neil, McDonald and hyphenated parts come out right, small words like of and van stay lower case, and the acronyms you list stay upper case.

Delimiter Encode / Decode

CSV-quotes, URL-encodes or HTML-escapes a column — or undoes it — so values survive the trip into a feed, a link or a web page.

Parsing

10

JSON Parse / Flatten

Turns JSON held in a column into ordinary columns — every value gets its own column named by its path (customer.city) — or picks out one value by path.

JSON to Rows

Makes one row per item of a JSON list in a column: an order with three lines becomes three rows, each item's fields as columns.

Rows to JSON

The reverse of JSON to Rows: writes rows out as JSON — one list of every row, one list per group, or one object on each row — into a column.

XML Parse

Pulls values out of XML held in a column into new columns, one XPath per column — or one row per repeating element such as an order line.

HTML Extract / Scrape

Reads HTML — from a column, or fetched from page URLs in a column — and returns a table as rows, or one row per matching element with its text or attributes.

Regex Extract

Splits text into new columns with a regular expression: each capture group becomes a column after the one it reads.

Delimited to Rows

Gives each item of a list held in one cell — "red; large; sale" — its own row, copying the rest of the row onto each.

Log Parser

Splits log lines into fields — IP, time, method, path, status, bytes and more — with a ready-made Apache / Nginx access-log format or your own pattern.

Contact / VCard / ICS Parser

Reads contacts from vCard text, or events from calendar (.ics) text, held in a column: one row per contact or event.

File Type Sniffer

Adds a File Type column — csv, pdf, json, xlsx, … or unknown — to a list of files, from your own name rules, the extension and the file's first bytes.

Date

6

Automation

14

Parameter Input

Declares the inputs a flow runs with — a customer id, an as-of date — and hands them on as one row with a typed column per parameter.

Wait / Pace

Holds the rows for a set time — up to five minutes — and then passes them on unchanged.

Terminate

Stops the run with your own message as soon as any row meets a condition — the rows go no further and later steps do not run.

Retry

Runs the step before it again when that step fails — a flaky API batch, a database that drops the odd connection — waiting between attempts, then passes its rows on.

Error Handler

Catches a failure of the step before it (or of any step before it) so the run carries on: the rows that step was working on leave by the Error pin, with Failed Step and Error columns; rows from steps that worked leave by OK.

For Each File

Runs a saved flow once for every file in a folder that matches a pattern, with $file_path and $file_name set for each run, and stacks what the runs produce.

For Each Row

Runs a saved flow once for every row, with the row's values set as $variables and Parameter Input values by column name, and stacks what the runs produce.

Macro / Sub-flow

Uses a saved flow as a single step: these rows go into its first step (with columns renamed if you say so), and whatever it produces comes back out.

Script

Transforms the rows with your own JavaScript or Python, run in a sandbox with no file, network or process access, a time limit and a memory limit.

Run Program

Runs a program an administrator approved — a legacy scoring tool, a vendor's converter — on your own computer through the FlowDoo desktop agent, with the rows as CSV on its input, and reads back what it prints.

Webhook Trigger

Starts the flow when another system calls its own web address — an order system POSTing each new order, say — with the call's body as the first rows.

Schedule Trigger

Shows, as one row, what started this run and the schedule that starts the flow: a master schedule that runs it comes first, otherwise the flow's own Schedule settings.

File Watcher

Starts the flow whenever a file arrives (or changes) in a folder — on the server, in My files, in Google Drive, or a folder your computer shares through the desktop agent — with the file's path as $file_path.

Approval Gate

Stops the run and asks a person to approve before it carries on — for example before a step that writes to production. Approved, the steps after the gate run with the rows it held; rejected, the run ends there.

Sequence

3

Transformations

18

Rank

Adds a SQL RANK() column: rows are numbered by the order you choose, tied rows share a number, and the next number skips the ties.

Dense Rank

Adds a SQL DENSE_RANK() column: tied rows share a number, and the next number follows on with no gap.

Rownum

Adds a SQL ROW_NUMBER() counter: every row gets its own number, with no ties, restarting for each partition.

Surrogate Key

Adds a warehouse surrogate key: a counting number, a pattern you write, or a UUID — a key that belongs to your warehouse rather than to the source system.

Merge Tables

Puts the columns of several tables side by side in one wide table, lining rows up by position.

Pivot Table

Summarises rows into a pivot table, the way Excel does: fields down the side, fields across the top, and a summary of one column in every cell.

Repeat Rows

Duplicates each row a fixed number of times, or as many times as a column says.

Sort Rows

Puts rows in order by a column — A to Z, Z to A, smallest to largest or the reverse.

Limit / Head-Tail

Keeps only the first or the last so many rows and drops the rest.

Sample

Takes a smaller, representative subset of the rows: a random percentage, a random fixed number, or simply the first or last rows.

Row Count

Adds the number of rows as a column on every row, and can stop the run when the count is not the one you expect.

Deduplicate by Key

Keeps one row per key — or the first few — and drops the other rows that share that key, even when their other columns differ.

Unpivot / Transpose

Turns columns into rows: each picked column becomes its own row, holding the column's name and its value beside the columns you did not pick.

Normalizer

Turns repeating groups of columns — Phone1, Phone2, Phone3, or Child1Name, Child1Age, Child2Name, Child2Age — into one row per occurrence, numbered.

Formula

Runs several calculations per row in one node: each line is Name = formula, and later lines can use what earlier lines worked out.

Update Strategy

Adds a column telling a database load what to do with each row: I to insert, U to update, D to delete.

Slowly Changing Dimension

Keeps a dimension table's history: Type 1 overwrites old values with the latest, Type 2 adds a dated version row for every change and marks which version is current.

Type Conversion

Changes the type of one or more columns: text to a number, a number to text, text to a date, a date to text, and so on.

Join

6

Analytics

20

Chart

Draws the incoming data as a chart in the preview panel and passes the charted rows on to the next node.

Group By

Groups rows by one column and returns a single row per group holding the group value and one aggregate.

Summarize (Multi-Aggregate)

Groups rows and works out several summaries at once — total, average, median, distinct count and more — one output column for each.

Cross Tab

Counts (or sums, averages…) one field against another: the Rows field's values go down the side, the Columns field's values go across the top.

Statistics

Adds a statistic for each picked numeric column, in a new column beside the data: a z-score, a percentile rank, a running total or a moving average.

Numeric Binning

Puts each number into a labelled range — equal-width bins, bins with the same number of rows, or edges you choose such as 0-100, 100-500, 500+.

K-Means Clustering

Groups rows into k clusters of similar values across the numeric columns you pick, and writes each row's cluster number (1…k) in a new column.

Linear Regression

Fits a least-squares line that predicts a number from one or more other columns, and adds the prediction to every row — including rows where the value to predict is blank.

Logistic Regression

Fits a logistic model that gives the probability of a yes/no outcome from other columns, plus a 1/0 prediction at the threshold you choose.

Decision Tree

Grows a CART decision tree that predicts a class (Gini) or a number (variance) from other columns, and writes the prediction and the readable rule behind it.

Train/Test Split

Sends a random share of the rows out of the Test pin and the rest out of Train, reproducibly from a seed, and labels each row in a Split column.

Score Model

Applies a model made by Linear Regression, Logistic Regression or Decision Tree to new rows, writing the prediction (or probability, or class) in a new column.

Correlation Matrix

Measures how strongly each pair of the picked numeric columns moves together, from −1 to 1, as a matrix with one row per column.

Time Series Forecast

Projects a dated measure forward — the next weeks, months or quarters — with Holt-Winters (level, trend, season) or a seasonal naive forecast.

Anomaly Alert

Scores each row's value against the rest (z-score or IQR) and routes unusual rows to the Alert pin and the others to Normal, with an optional quiet period after each alert.

PCA

Reduces many numeric columns to a few principal components — new columns PC1, PC2… that keep as much of the variation as possible.

Sentiment Score

Scores text from −1 (negative) to 1 (positive) with a built-in English word list, and labels it Positive, Neutral or Negative.

Entity Extract

Pulls people, organisations, money amounts and dates (and optionally email addresses and phone numbers) out of text by pattern, one column per kind.

Geo Distance

Adds the great-circle (haversine) distance between each row's coordinates and a fixed point, or a second pair of coordinate columns, in km, miles, metres or nautical miles.

Reverse Geocode

Turns each row's coordinates into a place: the full label, street, city, postcode and country, from OpenStreetMap data (Nominatim or Photon).

Code

1

Logic

4

PDF

17

Template Input

Loads a Word (.docx) template and lists the <<tag>> placeholders it holds — in the body, headers and footers — one row per tag.

Template Merge

Fills the template's <<tags>> with each data row's values and makes one Word document per row.

PDF Generator

Renders the Word documents on its rows — usually Template Merge output — as PDFs with the page size, orientation, margins and image compression you choose.

PDF Table Extract

Reads tabular data out of PDF files using either the built-in pdf.js engine or Tabula, and turns the detected tables into rows.

PDF Grayscale

Converts the selected pages of each incoming PDF to greyscale and writes a new file for the rows to carry on.

PDF Extract Text

Extracts the text of each upstream PDF and returns one row per page.

Merge PDF

Combines the PDF on its Top input with the PDF on its Bottom input into one file per bottom document.

PDF Split

Splits each PDF into parts — every N pages, by page ranges such as 1-3; 4-10, or one part per top-level bookmark — one row per part.

PDF Rotate

Turns pages of each PDF 90°, 180° or 270° clockwise, on top of any rotation they already have.

PDF Watermark

Stamps large diagonal text — CONFIDENTIAL, DRAFT — or an image across the middle of each page, at the opacity you choose.

PDF Page Numbers

Stamps page numbers on each page — Page 3 of 120, or your own format with {n} and {total} — in the corner or centre you choose.

PDF Compress

Makes PDFs smaller without touching how they look: objects are repacked into compressed streams, raw streams are compressed and unused objects dropped; High also removes metadata and thumbnails.

PDF Encrypt

Password-protects each PDF with AES-256, and can limit what readers may do — print only, or only view.

PDF Decrypt

Removes the password from protected PDFs — RC4 and AES, 40 to 256-bit — given the user or the owner password, so other PDF nodes can read them.

PDF Form Fill

Fills a PDF form's fields from each row — text boxes, tick boxes, drop-downs and radio buttons — making one filled-in PDF per row.

PDF OCR

Makes scanned PDFs searchable: each page is read with English text recognition and the words are laid over the page as invisible text, so it looks the same but can be searched, selected and extracted. The text also comes out in an OCR Text column.

PDF Image Extract

Saves the pictures inside each PDF as their own files — one row per image with its page, size and path.

Output

41

SQL Server Output

Writes the incoming rows into an existing SQL Server table and passes the same rows on to the next node.

MySQL Output

Writes the incoming rows into an existing MySQL table and passes the same rows on to the next node.

Google Sheets Output

Writes the incoming rows to a tab of a Google spreadsheet and passes the same rows on to the next node.

Salesforce Output

Inserts, updates, upserts or deletes Salesforce records, one per incoming row, and passes the rows on with the outcome of each: its Salesforce Id, Created/Updated/Deleted or Error, and the error message.

VizzDoo Output

Sends the incoming rows to a VizzDoo project as a dataset with the name you give it, ready to use in a worksheet or dashboard, and passes the same rows on to the next node.

Export CSV

Writes the incoming rows to a .csv file in a folder you choose and passes the rows on unchanged.

Export JSON

Writes the incoming rows to a .json file in a folder you choose and passes the rows on unchanged.

Export Excel

Writes the incoming rows to an Excel .xlsx file in a folder you choose and passes the rows on unchanged.

Export TXT

Writes the incoming rows to a delimited .txt file in a folder you choose and passes the rows on unchanged.

Export PDF

Saves the PDFs produced upstream into a folder you choose, or renders the incoming rows as a PDF table when there are no PDFs.

Word to PDF

Converts each .docx file coming from an upstream node into a PDF and adds the result's path and page count to the row.

Report Header

Adds a title block — title, subtitle and a Generated line — as an HTML section that HTML Report and Email Send put at the top of the report.

Report Footer

Closes a report with totals of the columns you pick and a closing line, as an HTML section HTML Report puts at the bottom.

Report Table

Lays the rows out as a styled HTML table — striped, compact or with grid lines — split into pages wherever Page Break says, ready for HTML Report or an email body.

Report Field

Formats a column for reading — currency ($1,234.50), percent (12.50%), number (1,234.50) or date (15 Oct 2026) — in place or into a new column.

Report Image

Shows a picture per row in an HTML report, from an https:// image address or a Base64 PNG, JPEG, GIF or WebP.

Page Break

Starts a new report page whenever a column's value changes — a page per region — or every N rows, with the value as the page's heading.

Barcode / QR

Turns a column into QR codes, Code 128 or EAN-13 barcodes, as pictures in an HTML report — no outside service involved.

HTML Report

Assembles the report sections — headers, tables, footers — into one self-contained .html file and saves it to a folder; with no sections it lays the rows out as a table itself.

REST API Output

Sends the rows to an API or webhook as JSON — in batches as arrays, or one request per row — with bearer, basic or custom-header authentication.

Email Send

Sends an email from your own email account — HTML or plain text, with attachments and your signature — as the last step of a flow.

Notify

Raises an alert with a severity — into the run's own log and preview, and optionally by email or to a Slack, Teams or other chat webhook — then passes the rows on.

PostgreSQL Output

Writes the rows that reach it into an existing PostgreSQL table, in one transaction, and passes them on unchanged.

Azure SQL Output

Writes the rows that reach it into an existing Azure SQL table, in one transaction, and passes them on unchanged.

Oracle Output

Writes the rows into an existing Oracle table — append, replace, or upsert on key columns — in one transaction, and passes them on.

MongoDB Output

Writes the rows as documents to a MongoDB collection: insert, replace the collection, or upsert by key columns.

Snowflake Output

Loads the rows into a Snowflake table — append, replace or upsert on key columns — in one transaction.

BigQuery Output

Appends the rows to an existing BigQuery table with streaming inserts.

S3 / Object Storage Output

Publishes the rows as one file (CSV, JSON, Excel or TXT, by the key's extension) in an S3-compatible bucket — or uploads the files a path column names.

FTP / SFTP Output

Delivers the rows as a file — or the files a path column names — to an FTP, FTPS or SFTP server.

SharePoint Output

Files the rows as a document (CSV, JSON, Excel or TXT, by the name's extension) — or the files a path column names — in a SharePoint library folder.

Databricks Output

Writes the rows that reach it into an existing Databricks (Delta) table, and passes them on unchanged.

IBM DB2 Output

Writes the rows that reach it into an existing IBM DB2 table, in one transaction, and passes them on unchanged.

Teradata Output

Writes the rows that reach it into an existing Teradata table, in one transaction, and passes them on unchanged.

JDBC Output

Writes the rows that reach it into an existing table of any database with a JDBC driver, in one transaction, and passes them on.

ODBC Output

Writes the rows that reach it into an existing table through ODBC, in one transaction, and passes them on unchanged.

Dropbox Output

Saves the rows as a file (CSV, JSON, Excel or TXT, by the name's extension) — or the files a path column names — in a Dropbox folder.

Google Analytics Output

Sends each row to a GA4 property as an event through the Measurement Protocol — the other columns become its parameters.

ServiceNow Output

Creates records in a ServiceNow table, or — Upsert — updates the records whose key fields match and creates the rest, then passes the rows on.

Dynamics CRM Output

Creates records in a Dynamics 365 CRM (Dataverse) table, or — Upsert — updates the records whose key columns match and creates the rest, then passes the rows on.

Transaction Control

Makes every database write upstream of it one transaction: committed together when all of those steps worked, rolled back together otherwise.

Miscellaneous

2

Unstructured Text

52

Text Input

Brings unstructured text into a flow — typed or pasted straight into the node, or read from a text, Markdown, log, HTML, Word or PDF file on your computer, in My files, on the server or in Google Drive.

Text Output

Writes the text column to a file — every row into one file, or one file per row named after the file it came from.

Remove Line Breaks

Turn text that is broken into short lines into smooth sentences, while keeping your paragraphs if you want to.

Remove Extra Spaces

Replace runs of spaces and tabs with a single space and trim the start and end of every line.

Remove Duplicate Lines

Keep only the first copy of each line in a list, without changing the order of what remains.

Remove Special Characters

Remove symbols, emoji and other special characters so that only letters, numbers and spaces remain.

Remove Numbers

Remove every digit from your text, with optional clean-up of the gaps left behind.

Remove Empty Lines

Delete every blank line, including lines that only contain spaces or tabs.

Remove HTML Tags

Turn HTML code into readable plain text, with line breaks where paragraphs and list items were.

Trim Text

Remove spaces and tabs from the beginning and end of each line, while leaving the spacing inside lines alone.

Remove Non-ASCII Characters

Make text safe for older systems by keeping only the 128 basic ASCII characters.

Remove Punctuation

Delete punctuation marks from your text while keeping letters, numbers, symbols and spacing.

Word Counter

Get an instant count of words, characters, sentences and paragraphs, plus estimated reading and speaking time.

Character Counter

See exactly how many characters your text has, with a breakdown of letters, digits, spaces and symbols.

Sentence Counter

Count your sentences and see how long they are on average, a quick check for readable writing.

Paragraph Counter

Count the paragraphs in your writing and check how long each one tends to be.

Count Duplicate Words

List every word that appears more than once, sorted from most to least frequent.

Keyword Density

Find the words you use most and see what share of your text each one makes up.

Uppercase Converter

Turn every letter in your text into a capital letter.

Lowercase Converter

Change every capital letter in your text to lowercase.

Title Case Converter

Capitalise the important words in a heading while keeping short words such as “and”, “of” and “the” in lowercase.

Alternating Case

Switch between lowercase and uppercase letter by letter to create aLtErNaTiNg cAsE text.

Email Extractor

Pull every email address out of a block of text and get a clean list with duplicates removed.

URL Extractor

Find every web address in your text and list each unique link on its own line.

Number Extractor

Pull every number out of your text and list them one per line, ready for a spreadsheet.

Reverse Text

Write any text backwards, from the last character to the first.

Reverse Word Order

Keep each word readable but put the words on every line in reverse order.

Sort Lines A–Z

Put every line of your list into alphabetical order from A to Z.

Sort Lines Z–A

Put every line of your list into reverse alphabetical order, from Z to A.

Duplicate Lines

Repeat each line of your text a chosen number of times, keeping the copies next to the original.

Find and Replace

Replace every occurrence of a word, phrase or pattern in one go.

Text Repeater

Repeat a word, emoji or block of text as many times as you need.

Random String Generator

Generate random strings with the length and characters you choose.

Shuffle Lines

Put the lines of your list into a random order with a fair shuffle.

URL Encoder

Convert text into percent-encoded form so it can be used safely inside a web address.

URL Decoder

Convert percent-encoded text back into normal, readable characters.

Base64 Encoder

Encode text as Base64, the standard way to carry data through systems that only accept plain characters.

Base64 Decoder

Turn a Base64 string back into the original text.

HTML Encoder

Convert characters that have a special meaning in HTML into entities, so text displays exactly as written.

HTML Decoder

Turn HTML entities back into the characters they represent.

Text to Binary

See how your text is stored by a computer, as a series of eight-bit bytes.

Binary to Text

Decode binary bytes back into letters, numbers and symbols.

ROT13 Encoder / Decoder

Apply the ROT13 letter substitution. Run it again to get the original text back.

Text to ASCII Codes

Show the numeric code of each character in your text, in decimal or hexadecimal.

ASCII Codes to Text

Translate a list of character codes back into readable text.

URL Slug Generator

Convert page titles into short, readable URL slugs such as my-first-blog-post.

JSON Formatter

Make JSON readable with consistent indentation, and find out straight away if it is invalid.

JSON Minifier

Compress JSON onto a single line by removing all unnecessary whitespace.

Add Line Numbers

Put a number in front of every line of your text.

List to Comma Separated

Join the lines of a list into one line, separated by commas or any separator you choose.

Comma Separated to List

Split comma separated text into a tidy list with one item per line.

Text Wrapper

Break long lines so that none is longer than the width you choose.

Audio Analysis

19

Audio File Input

Reads audio files — .wav, .mp3, .flac, .ogg, .m4a and more — one row per file, with each file's format, sample rate, channels, bit depth, duration and size.

Microphone Stream

Records a clip from your browser's microphone (Web Audio) and hands it to the flow as an audio file.

URL / Stream Ingest

Captures a window of a live stream — RTSP cameras and intercoms, HTTP or Icecast radio, HLS (.m3u8) — and hands it on as one clip.

Directory Watcher

Starts the flow when a new audio file arrives in a folder — on the server, in My files, Google Drive or a computer — or picks up what arrived in an S3 bucket since the last run.

Resampler

Converts every clip to one sample rate with a band-limited (windowed-sinc) filter, so lowering the rate never folds high frequencies back as noise.

Mono / Stereo Downmixer

Mixes multi-channel audio down to one channel (the average, or just the left or right) — or to stereo, folding 5.1 down with the standard weights.

VAD (Voice Activity Detection)

Finds where someone is speaking (or where there is loud sound) and drops the silence and background noise: one row and clip per segment, one clip per file with the gaps cut out, or just the list of segments.

Audio Chunk / Slicer

Cuts each clip into fixed-length windows — overlapping if you like — one row and clip per window, the last one padded with silence to full length (or kept short, or dropped).

Normalize / Gain

Brings every clip to the same level: its peak to a target (e.g. -1 dBFS), its average loudness (RMS) to a target, or a fixed gain — never clipping, and never raising near-silence into loud noise.

Log-Mel Spectrogram

Turns each clip into a log-mel spectrogram — frequency bands over time, in dB — saved as a NumPy matrix (.npy) and as an image (.png) for image models such as CNNs.

MFCC Extractor

Mel-frequency cepstral coefficients: a compact, low-dimensional description of each clip's timbre — summarised as the mean and spread of each coefficient, or one row per frame.

Embeddings Vectorizer

Runs each clip through a foundation model — Wav2Vec 2.0 for speech, CLAP for sounds and music — and returns one dense vector (768 or 512 numbers) per clip.

Audio Event Classifier

Names the sounds in each clip — glass breaking, dog barking, siren, engine knocking, speech, music — with the 527 AudioSet labels of the Audio Spectrogram Transformer, and a score for each.

ASR (Speech-to-Text)

Transcribes speech to text with OpenAI's Whisper (or another Hugging Face speech model): one transcript per clip, or one row per segment or word with its start and end time.

Diarization (Who Spoke When)

Works out who spoke when: one row per speaker turn (Speaker 1, Speaker 2…) with its start and end — or tags incoming rows, such as ASR segments, with the speaker talking at that moment.

Speaker Identification

Compares each clip's voiceprint with enrolled reference voices to name the speaker (or say Unknown), or to verify that it is the person a column claims.

Music Information Retrieval (MIR)

Music information retrieval for each track: tempo (BPM), musical key, genre, mood, and emotional valence (sad…happy) and arousal (calm…energetic) on a -1 to 1 scale.

Audio File Writer

Saves each processed clip — resampled, trimmed, sliced or normalised — as WAV (16, 24 or 32-bit float), FLAC, MP3 or Ogg, on the server, in My files, Google Drive or a folder on a computer.

Metadata Joiner

Brings the results back together: one row per original file, with that file's original details (format, sample rate, channels, bit depth, duration) and the extracted columns combined — text joined, numbers averaged — ready as JSON or CSV.