{"id":43078,"library":"monaco-sql-languages","title":"monaco-sql-languages","description":"A library providing SQL language support for the Monaco Editor, including syntax highlighting, code completion, and error diagnostics for multiple SQL dialects. Based on monaco-languages, it supports Hive, Spark, MySQL, PostgreSQL, Flink, Trino, Impala, and a generic SQL mode. Current stable version 1.1.0 requires Node >=18 and monaco-editor >=0.37.1. Released under MIT, actively maintained on GitHub by DTStack. Key differentiator: comprehensive dialect coverage with built-in completion logic, good for embedding SQL editing in web apps running on modern Node.js.","status":"active","version":"1.1.0","language":"javascript","source_language":"en","source_url":"https://github.com/DTStack/monaco-sql-languages","tags":["javascript","monaco-editor","SQL","code-completion","hive","spark","mysql","postgresql","flink","typescript"],"install":[{"cmd":"npm install monaco-sql-languages","lang":"bash","label":"npm"},{"cmd":"yarn add monaco-sql-languages","lang":"bash","label":"yarn"},{"cmd":"pnpm add monaco-sql-languages","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency required for the Monaco Editor instance to register language providers.","package":"monaco-editor","optional":false}],"imports":[{"note":"Default function to register a SQL language with predefined completion and validation.","symbol":"registerLanguage","correct":"import { registerLanguage } from 'monaco-sql-languages';"},{"note":"Enum used to specify dialect (e.g., SQLDialect.MySQL, SQLDialect.Hive). Not a default export.","wrong":"import SQLDialect from 'monaco-sql-languages';","symbol":"SQLDialect","correct":"import { SQLDialect } from 'monaco-sql-languages';"},{"note":"Utility to get inline completions for SQL; available in ESM path only. Direct import from root may not work in all bundlers.","wrong":"import { getCompletions } from 'monaco-sql-languages';","symbol":"getCompletions","correct":"import { getCompletions } from 'monaco-sql-languages/esm';"}],"quickstart":{"code":"import * as monaco from 'monaco-editor';\nimport { registerLanguage, SQLDialect } from 'monaco-sql-languages';\n\n// Register MySQL language support\nregisterLanguage(SQLDialect.MySQL);\n\n// Create editor with SQL content\nconst editor = monaco.editor.create(document.getElementById('container'), {\n  value: 'SELECT * FROM users WHERE id = 1;',\n  language: 'mysql',\n  automaticLayout: true\n});","lang":"typescript","description":"Registers MySQL language support for Monaco Editor and creates an editor instance with sample SQL."},"warnings":[{"fix":"Upgrade Node.js to version 18 or higher.","message":"Requires Node.js >=18. Older versions will fail to install or run.","severity":"breaking","affected_versions":">=1.0.0"},{"fix":"Update monaco-editor to version 0.37.1 or later.","message":"Only compatible with monaco-editor >=0.37.1. Using older versions may cause errors in language registration.","severity":"breaking","affected_versions":">=1.0.0"},{"fix":"Import from specific paths like 'monaco-sql-languages/esm' or use dynamic imports to reduce bundle size.","message":"Eagerly imports all dialects if using the root import; tree-shaking may not work.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Use 'registerLanguage' instead.","message":"The 'registerCompletionProvider' function is deprecated in favor of 'registerLanguage' which automatically registers completions.","severity":"deprecated","affected_versions":"<1.0.0"},{"fix":"Use 'SQLDialect' enum and 'registerLanguage' which have full type support.","message":"TypeScript types are shipped but only for the main entry point; internal utilities may not have declarations.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'0.37.1':57 '1.1.0':49 '18':52 'activ':61 'app':85 'base':27 'built':74 'built-in':73 'code':18,96 'code-complet':95 'complet':19,76,97 'comprehens':69 'coverag':71 'current':46 'diagnost':22 'dialect':26,70 'differenti':68 'dtstack':66 'edit':82 'editor':14,56,93 'embed':80 'error':21 'flink':38,102 'generic':43 'github':64 'good':78 'highlight':17 'hive':34,98 'impala':40 'includ':15 'javascript':90 'key':67 'languag':4,9,31 'librari':6 'logic':77 'maintain':62 'mit':60 'mode':45 'modern':88 'monaco':2,13,30,55,92 'monaco-editor':54,91 'monaco-languag':29 'monaco-sql-languag':1 'multipl':24 'mysql':36,100 'node':51 'node.js':89 'postgresql':37,101 'provid':7 'releas':58 'requir':50 'run':86 'spark':35,99 'sql':3,8,25,44,81,94 'stabl':47 'support':10,33 'syntax':16 'trino':39 'typescript':103 'version':48 'web':84","created_at":"2026-06-05T16:58:04.633859+00:00","updated_at":"2026-06-05T16:58:04.633859+00:00","problems":[{"fix":"Run 'npm install monaco-editor' (ensure version >=0.37.1).","cause":"monaco-editor is a peer dependency and not automatically installed.","error":"Module not found: Error: Can't resolve 'monaco-editor' in '.../node_modules/monaco-sql-languages'"},{"fix":"Use 'import { getCompletions } from 'monaco-sql-languages/esm';' instead.","cause":"Importing 'getCompletions' from the wrong path; root exports may not include it.","error":"Cannot read properties of undefined (reading 'getCompletions')"},{"fix":"Install the package: 'npm install monaco-sql-languages'. Ensure tsconfig.json includes 'node_modules' in compilerOptions.paths if using custom resolution.","cause":"Package not installed or TypeScript resolver misconfigured.","error":"Cannot find module 'monaco-sql-languages' or its corresponding type declarations."},{"fix":"Set 'type': 'module' in package.json or use dynamic import(). For Node <18, upgrade Node.","cause":"The package is ESM-only; CommonJS environments cannot load it directly.","error":"SyntaxError: Unexpected token 'export'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/DTStack/monaco-sql-languages#readme","github":"https://github.com/DTStack/monaco-sql-languages","docs":null,"changelog":null,"pypi":null,"npm":"monaco-sql-languages","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-05","next_check":"2026-09-03","install_tag":null}}