text-word-count Edge Function — Content
ContentCounts words, unique words, characters, and sentences in a text string. Handles edge cases like empty text, whitespace, and punctuation.
Edge function text-word-count Counts words, unique words, characters, and sentences in a text string. Handles edge cases like empty text, whitespace, and punctuation.. Deployed on Cloudflare Workers — zero cold starts, globally distributed. Mount it via your Aerostack workspace to call it from any AI agent.
npx aerostack add navin/text-word-count Use with AI Assistants
MCPConnect Claude, Cursor, or any MCP-compatible client — then call this function by slug
① Add MCP Server
Add this once — access all Aerostack functions from your AI tool.
{
"mcpServers": {
"aerostack": {
"url": "https://mcp.aerostack.dev",
"type": "http"
}
}
} ② Call this function
Ask your AI to use the call_function tool with this slug:
call_function({
slug: "text-word-count",
args: {
"text": "example_text",
"countUnique": true
}
}) text-word-count
Counts words, unique words, characters, and sentences in a text string. Handles edge cases like empty text, whitespace-only input, and punctuation-only tokens. Zero external dependencies.
Install
aerostack function add text-word-count
Usage
import { wordCount } from './functions/text-word-count';
// Basic word count
const result = wordCount({ text: 'Hello world. How are you?' });
// { success: true, data: { words: 5, unique: 5, characters: 25, charactersNoSpaces: 21, sentences: 2 } }
// Disable unique word counting
const simple = wordCount({ text: 'Hello hello world', countUnique: false });
// { success: true, data: { words: 3, unique: 0, ... } }
API
POST /api/text-word-count
Request
{
"text": "The quick brown fox jumps over the lazy dog.",
"countUnique": true
}
Response
{
"success": true,
"data": {
"words": 9,
"unique": 8,
"characters": 44,
"charactersNoSpaces": 35,
"sentences": 1
}
}
| Field | Type | Required | Default |
|---|---|---|---|
text |
string | Yes | -- |
countUnique |
boolean | No | true |
Output Fields
| Field | Description |
|---|---|
words |
Total number of words |
unique |
Unique words (case-insensitive). 0 if countUnique is false |
characters |
Total characters including spaces |
charactersNoSpaces |
Total characters excluding spaces |
sentences |
Sentences delimited by . ! ? |
Metadata
Tags
Publisher
@navin verified
Build and publish your own functions
Write a TypeScript function, deploy it to the edge, and share it with thousands of developers — in minutes.
More Content Functions
Browse Content Functions →text-extract-emails
by @navin
Extracts all valid email addresses from free-form text using an RFC 5321 compliant pattern. Supports deduplication and preserves order of first appearance.
text-html-to-markdown
by @navin
Converts HTML to Markdown text. Handles headings, bold, italic, links, code, lists, blockquotes, and horizontal rules. Strips all other HTML tags while preserving text content.
text-markdown-to-html
by @navin
Converts Markdown text to HTML with optional sanitization. Supports all common Markdown syntax including headings, bold, italic, code blocks, lists, links, images, and blockquotes.
text-keyword-highlight
by @navin
Highlights keyword occurrences in text by wrapping them in configurable HTML tags. Handles case-insensitive matching, longest-match-first for overlapping keywords, and HTML entity escaping.
text-sanitize-html
by @navin
Sanitizes HTML by removing dangerous tags and attributes. Always strips script, style, iframe, form elements, and all event handlers. Keeps only whitelisted tags with whitelisted attributes.
text-slug-generate
by @navin
Generates a URL-safe slug from any string. Handles Unicode, accents, and special characters. Zero dependencies.
Frequently asked questions
What does the text-word-count function do? +
text-word-count is a serverless edge function for content automation written in aerostack. Deploy it to Cloudflare Workers via your Aerostack workspace.
How do I deploy the text-word-count function? +
Install the Aerostack CLI and run: ```bash aerostack deploy function @navin/text-word-count ``` It will be live on Cloudflare Workers in seconds.
What runtime does text-word-count use? +
text-word-count runs on aerostack on the Cloudflare Workers edge runtime — zero cold starts, globally distributed.
Can I customise the text-word-count function? +
Yes. Fork the function from your Aerostack dashboard, modify the source, and redeploy. All changes are version-controlled.