Coding
PromptBeginner5 minmarkdown
Markdown Converter
Agent skill for markdown-converter
7
This project contains an Electron-based desktop app for manipulating CSV data. The JavaScript code uses ES modules and a small Node-based test suite.
Sign in to like and favorite skills
This project contains an Electron-based desktop app for manipulating CSV data. The JavaScript code uses ES modules and a small Node-based test suite.
npm install once to ensure dependencies are installednpm run build to generate the compiled app in docs/. The CI workflow also runs this command and commits any changes so the built files always match the source. Running it locally helps avoid extra commits from CI.npm run desktop to launch the Electron shell with the built files.tests/ directory and use Node's built-in test runner.npm test (which executes node --test) before each commit to verify functionality.README.md and guide.md whenever the DSL syntax or interpreter behavior changes.js/ directory contains the tokenizer, parser, interpreter, and UI logic.js/csv.js contains helper functions for CSV import/export used by the interpreter.js/datasetOps.js contains dataset transformation helpers (joins, filtering, column math).index.html loads PapaParse from a CDN for CSV processing in the desktop app.style.css; maintain existing formatting when making UI tweaks.UI-related code lives under
js/ui/ and is split into several modules:
elements.js – caches DOM nodes via queryElements and exports the elements object.highlight.js – provides escapeHtml and applySyntaxHighlighting for the editor overlay.peek.js – handles PEEK output rendering and export with generatePeekHtmlForDisplay, renderPeekOutputsUI, clearEditorPeekHighlight, and handleExportPeek.fileOps.js – file helpers saveScriptToFile, loadScriptFromFile, and loadDefaultScript.index.js – orchestrates UI initialization, event bindings, and exports helpers used in tests.When modifying UI behavior keep these files in sync and update this guide if the structure changes.
js/interpreter.js focuses on orchestrating pipeline execution. Heavy lifting is delegated to:
csv.js – loadCsv, parseCsvInput, exportCsvdatasetOps.js – keepColumns, joinDatasets, filterRows, withColumnWhenever the project structure changes, update this AGENTS.md to reflect the new organization so future agents can navigate quickly.