What is ModernUI?
ModernUI is a chart-hosted UI library for MetaTrader 5.
It is built for MQL5 developers who want to create cleaner interfaces for Expert Advisors, indicators, trading tools, dashboards, and utility panels without hand-building every screen from low-level chart objects.
ModernUI gives you a reusable set of controls, layout helpers, styling tools, and examples that sit inside the normal MT5 Expert Advisor lifecycle.
What ModernUI helps you build
ModernUI is suitable for interfaces such as:
- EA settings panels
- trade manager panels
- dashboards
- symbol/account tools
- data tables
- status panels
- utility windows
- parameter forms
- compact chart overlays
It is especially useful when you want the UI to feel like a real application panel instead of a loose collection of MT5 chart objects.
How it works
At a high level, ModernUI uses:
MuiRootas the UI root and event bridge- CCanvas-based drawing for modern visual controls
- optional native text input helpers (built on MT5
OBJ_EDIT) where real keyboard text editing is needed - containers and layouts to arrange controls
- themes and setters for styling
- fast wrappers for common panel patterns
A typical Expert Advisor initialises MuiRoot, builds a UI tree, forwards timer and chart events, then shuts the UI down cleanly when the EA is removed.
Two ways to build interfaces
ModernUI supports two development paths.
| Path | Use it when |
|---|---|
| Fast wrappers | You want to build common panels quickly: app windows, sections, labelled inputs, button rows, status rows, simple tables. |
| Raw controls | You need full control over layout, handlers, custom sources, specialist behaviour, or advanced composition. |
Most real projects use both. You might use fast wrappers for the outer shell and common rows, then raw controls for a custom table, chart, drawer, or specialised layout.
What ModernUI is not
ModernUI is not:
- a trading strategy
- a trade copier
- a broker execution system
- an automated trading product
- a promise of better trading performance
- a replacement for your own trading logic
The trade-style examples are UI demonstrations. Unless you add your own trading code, they do not place, modify, or close real orders.
Why it exists
MetaTrader 5 is powerful, but building polished interfaces directly from chart objects can become repetitive and hard to maintain.
ModernUI gives you a more structured way to build chart-hosted interfaces while still staying inside the normal MQL5 environment.
Next step
Read Who it is for if you are deciding whether ModernUI fits your project, or go straight to Install if you are ready to try it.