Search the site
DARTVEL VS QT
Qt is the incumbent for software that has to run on a desktop, a television, a car dashboard and a machine on a factory floor. It has earned that: thirty years, C++, and a wide range of supported devices. The costs are the ones everybody knows: C++ (or Python, through Qt for Python), QML as a second language, a licensing conversation before a commercial product ships, and a backend written somewhere else. Qt HTTP Server embeds REST endpoints in an app, for trusted networks only by its own docs.
One Dart codebase for Android, iOS, macOS, Windows, Linux, the web, Samsung TVs, Apple TV, Android TV, Sony embedded Linux and a Linux terminal. LG webOS is in progress.
Each embedded and TV target is driven by a dedicated Flutter embedder, the vendor's own for Samsung and Sony and a community one for Apple TV, pinned in a fork so it tracks the Flutter version Dartvel ships with.
The backend comes with the framework instead of arriving as a separate product.
dartvel build linux # and -cli for a terminal build
dartvel build tizen # Samsung TVs
dartvel build tvos # Apple TV
dartvel build sony-elinux # embedded LinuxCopy code to clipboard
Thanks to the projects these targets are built on:
by Samsung
by Sony
by the FlutterTV authors
by Jia Hao (jiahaog)
SIDE BY SIDE
Language
Qt: C++, and QML for the UI
Dartvel: Dart, front and back
Licence
Qt: GPL or LGPLv3, or a yearly commercial subscription; devices can also need distribution licences
Dartvel: Functional Source License; each release becomes MIT two years after it ships
Desktop
Qt: Mature, native look
Dartvel: Flutter on Windows, macOS and Linux
Mobile
Qt: Android and iOS
Dartvel: Android and iOS
Embedded and TV
Qt: Its strongest ground, with Boot to Qt for embedded Linux
Dartvel: Dedicated embedders, forked and pinned. See the status table
Microcontrollers
Qt: Qt for MCUs
Dartvel: None
Web
Qt: Qt for WebAssembly
Dartvel: A first-class target, with prerendered HTML and a sitemap
Backend
Qt: Qt HTTP Server for trusted networks, Qt gRPC and Qt SQL as clients; no server framework
Dartvel: Functions, models, auth, queues, mail, an admin
Tooling
Qt: Qt Creator, Qt Design Studio, CMake
Dartvel: One dartvel command: dev, build, deploy, test
Terminal
Qt: No terminal renderer
Dartvel: dartvel build linux-cli renders in a terminal
STATUS
Qt has been building for these devices for decades. Some of these targets are verified on a runner with the artifact inspected, and some are blocked on a vendor toolchain that is behind the Dart version Dartvel needs. Every one of them is written down with what was run and what came out, so you can check the claim before you make a decision on it.
HONESTLY
Thirty years of embedded deployments, certifications and vendor relationships Dartvel does not have.
C++ where you need C++: real-time constraints, tiny memory budgets, and hardware with no Flutter embedder at all. Qt for MCUs reaches microcontrollers Flutter cannot run on.
Qt Creator, Qt Design Studio and the commercial support that comes with a licence.
Several of the embedded and TV targets here are honestly recorded as unproven or blocked.
Is this a fair comparison?
If you are shipping a medical device or a car, Qt is probably still the answer. The case for Dartvel is a team that wants one codebase across phones, desktops, the web and a screen on a wall, in a language a web developer already reads, with the server in the same repository.
ALSO
FSL-1.1-MIT licensed. Built with Dartvel.
Dartvel is made by
To the bottom