This repository holds the Flutnet Console - the official graphical tool that allows you to generate Flutnet projects - and the underlying Flutnet CLI - the command-line interface that hosts all the main logic both for project creation and Dart code generation.
These tools depend on:
Flutnet is a set of tools and libraries that allows you to create rich and beautiful Xamarin apps using Flutter as UI Layer and .NET as backend. For more details please visit https://www.flutnet.com/.
Both Flutnet Console and Flutnet CLI target .NET Core 3.1, so .NET Core 3.1 SDK
is the only real requirement for building these projects.
However, Flutnet Console is a Avalonia MVVM Application: if you need full IDE support for code inspection and XAML design/preview, you have to use JetBrains Rider IDE or install Avalonia for Visual Studio extension.
To build the source porjects, just run the following scripts:
macOS
scripts/build-cli.sh
scripts/build-ui.sh
Windows
scripts/build-cli.cmd
scripts/build-ui.cmd
These will build all the projects within the FlutnetUI.sln
(Flutnet Console) and Flutnet.Cli.sln
solutions, restoring all the required NuGet packages.
Once the scripts have completed, you can open both solutions in your IDE and start debugging.
This repository contains a couple of convenient scripts for publishing the source projects:
macOS
scripts/publish-cli.sh
scripts/publish-ui.sh
Windows
scripts/publish-cli.cmd
scripts/publish-ui.cmd
These scripts just prepare the applications for release on both macOS and Windows. The resulting set of files is published to artifacts/
directory.
HOWEVER, you must be aware that the published executables are NOT ready to run as-is because they look for dependency files and folders (such as templates for project creation) in a way that strictly depends on the installation procedure defined within the official Flutnet SDK.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the LPGL v3 license (https://www.gnu.org/licenses/lgpl-3.0.html)