A spreadsheet plugin for MulmoChat - a multi-modal voice chat application with OpenAI's GPT-4 Realtime API.
This plugin provides a full-featured spreadsheet component with:
- Excel-like cell editing with formula support
- Mathematical functions (SUM, AVERAGE, MIN, MAX, etc.)
- Text functions (CONCATENATE, LEFT, RIGHT, MID, etc.)
- Date functions (TODAY, NOW, DATE, YEAR, MONTH, DAY, etc.)
- Logical functions (IF, AND, OR, NOT, etc.)
- Lookup functions (VLOOKUP, HLOOKUP, INDEX, MATCH)
- Financial functions (PMT, PV, FV, NPV, IRR)
- Multi-sheet support
- Excel file import/export (.xlsx)
- Cell formatting and styling
Note: This package uses SheetJS for Excel file import/export. SheetJS is not installed from npm, but directly from the official SheetJS CDN:
https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgzSee SheetJS Installation Guide for details.
yarn add @gui-chat-plugin/spreadsheet gui-chat-protocol
gui-chat-protocolis a peer dependency — install it alongside the plugin; the host application provides the runtime and this plugin only declares the compatible range.
// In src/tools/index.ts
import SpreadsheetPlugin from "@gui-chat-plugin/spreadsheet/vue";
const pluginList = [
// ... other plugins
SpreadsheetPlugin,
];
// In src/main.ts
import "@gui-chat-plugin/spreadsheet/style.css";import { pluginCore, TOOL_NAME } from "@gui-chat-plugin/spreadsheet";
// or
import pluginCore from "@gui-chat-plugin/spreadsheet";| Export | Description |
|---|---|
@gui-chat-plugin/spreadsheet |
Core (framework-agnostic) |
@gui-chat-plugin/spreadsheet/vue |
Vue implementation with UI components |
@gui-chat-plugin/spreadsheet/style.css |
Tailwind CSS styles |
SUM, AVERAGE, MIN, MAX, COUNT, COUNTA, ABS, ROUND, FLOOR, CEILING, POWER, SQRT, MOD, RAND, RANDBETWEEN, PI
CONCATENATE, LEFT, RIGHT, MID, LEN, UPPER, LOWER, PROPER, TRIM, SUBSTITUTE, REPLACE, TEXT, VALUE, FIND, SEARCH, REPT
TODAY, NOW, DATE, YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, WEEKDAY, DAYS, EDATE, EOMONTH, WORKDAY, NETWORKDAYS, DATEDIF
IF, AND, OR, NOT, TRUE, FALSE, IFERROR, IFNA, IFS, SWITCH, XOR
VLOOKUP, HLOOKUP, INDEX, MATCH, OFFSET, INDIRECT, ROW, COLUMN, ROWS, COLUMNS, TRANSPOSE
MEDIAN, MODE, STDEV, STDEVP, VAR, VARP, LARGE, SMALL, RANK, PERCENTILE, QUARTILE, CORREL, COUNTIF, COUNTIFS, SUMIF, SUMIFS, AVERAGEIF, AVERAGEIFS
PMT, PV, FV, NPV, IRR, RATE, NPER, IPMT, PPMT, SLN, DB, DDB
# Install dependencies
yarn install
# Start dev server (http://localhost:5173/)
yarn dev
# Build
yarn build
# Type check
yarn typecheck
# Lint
yarn lintTry these prompts to test the plugin:
- "Create a budget spreadsheet with income and expenses columns"
- "Make a multiplication table from 1 to 10"
- "Create a spreadsheet to track monthly sales with SUM totals"
MIT
- Protocol spec: gui-chat-protocol
- Reference implementations using this protocol: mulmoclaude · MulmoChat