How to Create a Desktop Window Application in Flutter?
Last Updated : 18 Apr, 2025
The Flutter team recently released Flutter version 2.10 with Desktop support. Desktop support allows you to compile Flutter source code to a native Windows, macOS, or Linux desktop app. Flutter’s desktop support also extends to plugins—you can install existing plugins that support the Windows, macOS, or Linux platforms, or you can create your own.
Requirement
As you know, Desktop support is available in Flutter version 2.10 or higher. So you need version 2.10 or higher. Upgrade Flutter SDK from the command line:
flutter upgrade

flutter upgrade
Create New Project
Create a new Flutter application using the command Prompt. To create a new app, write the following command and run it.
flutter create app_name
To know more about it refer this article: Creating a Simple Application in Flutter
Set up
On Windows, desktop support is enabled on Flutter 2.10 or higher. On macOS and Linux, desktop support is disabled by default in the stable channel. You can manually enable it with one of these commands, depending on which platform you are running:
flutter config --enable-macos-desktop flutter config --enable-linux-desktop
Note: You only need to execute flutter config –enable-<platform>-desktop once.
To test that desktop support is configured, use the flutter devices command to list the available targets.
flutter devices

flutter devices
This will show you the available devices in your system. You might also run flutter doctor to see if there are any unresolved issues. You should see a checkmark for each successfully configured area. It should look something like the following on Windows, with an entry for “develop for Windows”:

flutter doctor
Create and Run
Creating a windows desktop app is simple as creating a flutter project for another platform like Android. Once you’ve configured your environment for desktop support, you can create and run a desktop application either in the IDE or from the command line. Don’t remove the default code, we are going to run the default code of flutter.
Dart import 'package:flutter/material.dart'; // Entry point of the Flutter application void main() { runApp(const MyApp()); } // Root widget of the application class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); // This widget is the root of your application @override Widget build(BuildContext context) { return const MaterialApp( title: 'Flutter Demo', home: MyHomePage(title: 'Flutter Demo Home Page'), ); } } // Stateful widget for the home page class MyHomePage extends StatefulWidget { const MyHomePage({Key? key, required this.title}) : super(key: key); // Title of the home page final String title; @override State<MyHomePage> createState() => _MyHomePageState(); } // State class for MyHomePage class _MyHomePageState extends State<MyHomePage> { // Counter to track button presses int _counter = 0; // Method to increment the counter void _incrementCounter() { // Increment the counter and update the UI setState(() { _counter++; }); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(widget.title), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ const Text( 'You have pushed the button this many times:', ), // Display the current counter value Text( '$_counter', style: Theme.of(context).textTheme.headlineMedium, ), ], ), ), floatingActionButton: FloatingActionButton( // Increment counter when button is pressed onPressed: _incrementCounter, tooltip: 'Increment', child: const Icon(Icons.add), ), ); } }
Run From IDE
From IDE, you have to click on Start Debugging in the top right corner as shown image below.

Start Debugging
This will take a few minutes,

Run From Command Line
cd project-name
flutter run -d windows

Build a release app
To generate the release build, run the following in the command line,
flutter build windows
flutter build macos
flutter build linux
Similar Reads
How to Build a ToDo Application in Flutter?
Flutter offers a stable framework for constructing richly UI-driven cross-platform applications. In this article, we will learn to build a ToDo Flutter Application. What is the ToDo Application?The ToDo application helps users manage and organize their tasks and responsibilities more easily. Managin
6 min read
Creating a Simple Application in Flutter
Flutter is an open-source cross-platform mobile application development SDK created by Google. It is highly user-friendly and builds high-quality mobile applications. The intention behind this article is to guide readers through the process of building an application through Flutter by creating a si
5 min read
How to Create a Stopwatch App in Flutter?
In this article, we are going to create the stopwatch project using Flutter it looks like a very simple app but you have to use your logic and manage the state just because time change every second, and then you have to rerender the app every second. Step by Step ImplementationStep 1: First, we have
4 min read
Creating a Finance Tracker Application in Flutter
Developing a new tracker for finance is a good practice to improve your skills and build a helpful application. Through Flutter, an open-source UI toolkit developed by Google, it is possible to design for iOS/ Android, web, and desktop. Here you will find out the recipe of how to create a finance tr
6 min read
Photo Editing Application in Flutter
With the introduction of the powerful image_editor_plus package, editing images directly within your Flutter app has become significantly more accessible. In this article, we'll dive deep into building a user-friendly image editor app. Users will have the ability to select an image from their camera
7 min read
How to Build Music Player Application Using Flutter?
Music can inspire and motivate us, it makes every person feel enthusiastic and relaxed. In this article, we will explain how to build a Music Player application step by step with some basic functionalities like pause, play, and seek in Flutter from a music URL. Flutter is an open-source framework de
6 min read
How to Add Firebase to Flutter App?
Firebase is a product of Google that helps developers to build, manage, and grow their apps easily. It helps developers to build their apps faster and more securely. No programming is required on the Firebase side which makes it easy to use its features more efficiently. It provides services to Andr
3 min read
How to Add Firebase into Flutter in a New Way?
Recently Firebase give another option for adding Firebase to Flutter and It is only made for Flutter, As of now we add firebase using the android option for flutter but now we can add using the flutter option that is recently updated by Flutter. Here you can find how to add firebase as an Android in
2 min read
EBook reader Application in Flutter
EBook reader Application brings the library to your fingertips. This application will be the travel partner of every book lover who loves to read books of their choice. The app is developed using Flutter and provider state management. It uses the Google Books API to fetch the data of books. The app
8 min read
How to Build a Flutter App to Display Device Details?
Here we are going to build an android application using flutter that displays device information on which it is running. To display information about the device we are going to use a package called device_info_plus. Create Flutter Project: Now remove all the existing code and remove the test folder
5 min read