skillfed

qtmonaco

Qt Monaco is a Python library for working with the Monaco Editor in Qt applications.

qtmonaco v0.11.0 92.4K downloads/30d#13,455 on PyPI14
License unclear Active released

What it is and what it does

QTMonaco wraps the Monaco Editor—the same editor that powers VS Code—into a native Qt widget for Python applications. It provides syntax highlighting, code folding, find-and-replace, multiple cursors, and a minimap. The package includes a built-in Language Server Protocol client for Python via python-lsp-server, enabling advanced features like code completion and diagnostics.

The library is designed for developers building Qt applications (using PySide6 or PyQt6) who want a professional code editor embedded in their UI without building one from scratch. It handles the bridge between the web-based Monaco Editor and Qt's widget system, managing resources and exposing editor state through Qt signals and slots. Installation is low-friction—just the wheel plus two runtime dependencies—though you must supply a Qt framework yourself.

Use it for:

  • Build a Python IDE or script editor within a Qt desktop application with syntax highlighting and LSP features.
  • Create a code review or diff viewer that shows side-by-side comparisons with Monaco's rendering and theming.
  • Embed a configuration or template editor in a scientific or engineering tool that needs language-aware editing.
  • Develop a teaching tool or notebook interface where students write and run code in a familiar editor.
  • Add a code snippet library or code generator UI to an existing Qt application.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Embeds the Monaco Editor (VS Code's editor) into Qt applications with syntax highlighting, code completion, and Language Server Protocol support.

Yes, with conditions. Install if you need a professional code editor in a Qt application and can accept Alpha-stage API stability. The license is unclear, so verify it matches your project's constraints before committing. Low install friction and active maintenance are in its favor; the small user base means less real-world battle-testing than mature packages.

Install

qtmonaco on PyPI

pip

pip install qtmonaco

uv

uv add qtmonaco

poetry

poetry add qtmonaco

Installing qtmonaco

Before you install

Low friction: pure Python wheel with only two runtime dependencies. Active maintenance with recent commits. Alpha status means the API may shift, but installation itself is straightforward.

License in practice

License treatment is unclear—the fact sheet does not specify an SPDX identifier or raw license text. Verify the actual license before adopting in a commercial or restricted context.

Quickstart

pip install qtmonaco

from qtpy.QtWidgets import QApplication
from qtmonaco import Monaco

qapp = QApplication([])
widget = Monaco()
widget.set_language("python")
widget.set_text("print('hello')")
widget.show()
qapp.exec_()

Requires Python >=3.10 and either PySide6 or PyQt6 installed separately (not pulled in by default).

Verify before relying

  • Whether the unclear license status has been resolved since the fact sheet was generated.
  • Whether LSP support extends beyond Python (description says extended support is planned).
  • Stability of the API given Alpha development status and whether breaking changes are expected.
  • How many programming languages are actually supported by syntax highlighting.

Package facts

License not declared (unclear)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — python-lsp-server, qtpy
Maintenance actively maintained — 31 days since the last release
Last repo commit
First released
Downloads 92,366/month — #13,455 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: qtmonaco-0.11.0-py3-none-any.whl

Development Status :: 3 - AlphaProgramming Language :: Python :: 3Topic :: Scientific/Engineering

Tags

monaco editor qt pythonvs code editor qt widgetsyntax highlighting qtlsp language server qtcode editor pyside6 pyqt6qt text editor with completionembedded code editor qt
qt-widgetcode-editorlsp-client

More Scientific/Engineering packages