Mapsui
Avalonia.FuncUI
Mapsui | Avalonia.FuncUI | |
---|---|---|
7 | 22 | |
1,071 | 849 | |
1.7% | 1.5% | |
10.0 | 8.3 | |
6 days ago | 5 days ago | |
C# | F# | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Mapsui
-
AvaloniaUI: Create Multi-Platform Apps with .NET
But I think some of this stuff is already handled in Avalonia ecosystem like https://github.com/Mapsui/Mapsui, https://github.com/beto-rodriguez/LiveCharts2 and few others...
-
MAPSUI 4.0 Launched
Release 4.0.0 · Mapsui/Mapsui (github.com)
-
Should I start migrating my Xamarin app to MAUI
You are probably using Xamarin.Maps that use native maps, Google Maps on Android and Apple Maps on iOS, I assume. In Windows there's no native map, so you would need some third party library. I would recommend Mapsui
-
Google-like POI information banner?
... private static void MapOnInfo(object? sender, MapInfoEventArgs e) { var calloutStyle = e.MapInfo?.Feature?.Styles.Where(s => s is CalloutStyle).Cast().FirstOrDefault(); if (calloutStyle != null) { calloutlist.Add(calloutStyle); foreach (var callout in calloutlist) { callout.Enabled = false; } calloutStyle.Enabled = !calloutStyle.Enabled; e.MapInfo?.Layer?.DataHasChanged(); // To trigger a refresh of graphics. } if (calloutlist.Count > 1) calloutlist.RemoveRange(0, calloutlist.Count - 1); } private MemoryLayer CreatePointLayer() { return new MemoryLayer { Name = "Points", IsMapInfoLayer = true, Features = new Mapsui.Providers.MemoryProvider(GetPlacesFromList()).Features, Style = SymbolStyles.CreatePinStyle() //<- Reference for custom marker: https://github.com/Mapsui/Mapsui/blob/master/Samples/Mapsui.Samples.Common/Maps/Callouts/CustomCalloutSample.cs#L64 }; } ... private static CalloutStyle CreateCalloutStyle(string? name) { return new CalloutStyle { Title = name, TitleFont = { FontFamily = null, Size = 12, Italic = false, Bold = true }, TitleFontColor = Color.Violet, MaxWidth = 120, RectRadius = 10, ShadowWidth = 4, Enabled = false, SymbolOffset = new Offset(0, SymbolStyle.DefaultHeight * 0.3f) }; }
-
.NET Maui and MAPSUI Help - Clearing Callouts when another is clicked
Looking through their getting started page and their examples on Github (specifically: SingleCalloutSample) I was able to get my list of places to show up on the map and when clicked display certain features.This has led to me only being able to toggle whether the callout is displayed or not. What I am hoping to figure out is how to disable all other callouts once another location is selected, so that only a single callout is displayed at a time.
-
Where are the Software Developers here? eg. SAP, Microsoft, Salesforce, Oracle etc
Json.net, MahApps.Metro, and MapsUI
-
Avalonia Map support
So I did a quick DDG search and found these two results. Link 1. Link 2. Good luck.
Avalonia.FuncUI
- Use Rails
- Uno: Create Beautiful Cross Platform .NET Apps Faster
- AvaloniaUI: Create Multi-Platform Apps with .NET
- Course using F#: Write your own tiny programming system(s)
-
ASP.NET Core Blazor
For those interested in .NET languages with alternative compilation targets, Elmish (https://elmish.github.io/elmish/) is pretty unique.
We use F# on the front end (instead of TS), and thanks to the Fable compiler (which transpiles F# to JS, Python, Dart, PHP and Rust), most of the benefits of an Elm-style model in the UI can be ported to all sorts of different outputs languages. The rust target is in beta, but its promising because the WASM bundle size stands to be dramatically lower.
While the default is reactivity library for Elmish is React, you can swap in Avalonia/FuncUI (https://github.com/fsprojects/Avalonia.FuncUI) pretty easily as well.
-
GUI development with Rust and GTK 4
The code to declare/build the widgets is quite nice. Modifying widgets by hand on certain signals or manually re-wiring all the signals seems a bit outdated to me.
Wonder if something like FuncUI [1] could be built on top of it.
[1] https://github.com/fsprojects/Avalonia.FuncUI
-
Desktop UI with F# web frameworks?
OTOH, if desktop really is the primary focus, and if you can drop the idea of reusable UI code, then Avalonia is a great choice for F# as you can use a Avalonia.FuncUI and/or Elmish.Avalonia.
- Functional cross platform UI in F#
-
Why does it seem like Microsoft is actively ignoring AvaloniaUI?
And one more MVU for you https://github.com/fsprojects/Avalonia.FuncUI
- Is Maui dead on arrival?
What are some alternatives?
NetTopologySuite - A .NET GIS solution that is fast and reliable for the .NET platform.
Fabulous - Declarative UI framework for cross-platform mobile & desktop apps, using MVU and F# functional programming
Mappalachia - The complete mapping tool for Fallout 76.
MySqlConnector - MySQL Connector for .NET
OpenRailwayMap - An OpenStreetMap-based project for creating a map of the world's railway infrastructure.
Avalonia - Develop Desktop, Embedded, Mobile and WebAssembly apps with C# and XAML. The most popular .NET UI client technology
awesome-gis - 😎Awesome GIS is a collection of geospatial related sources, including cartographic tools, geoanalysis tools, developer tools, data, conference & communities, news, massive open online course, some amazing map sites, and more.
openiddict-core - Flexible and versatile OAuth 2.0/OpenID Connect stack for .NET
GeoBlazor - Core Components for the Dymaptic GeoBlazor Library
Elmish.WPF - Static WPF views for elmish programs
osm4scala - Scala and Spark library focused on reading OpenStreetMap Pbf files.
Sutil - Lightweight front-end framework for F# / Fable. No dependencies.