dotnet / dotnet/XAMLStudio

XAML Studio v2 Roadmap

Open
#34 2 comments 2 reactions 0 assignees View on GitHub
documentation help wanted
Dominant language
C#
Stars
450
Forks
46
PR merge metrics
No merged PRs in 30d

Description

Open sourcing XAML Studio was just the start. There's a lot of great [new features](https://github.com/dotnet/XAMLStudio/discussions/categories/feature-feedback). Though many of them are still _experimental_ and still need work before releasing a stable version. Please provide feedback on using those or look towards those individual issues for areas of specific improvements they need.

There are no larger tooling features planned for v2 outside what's been revealed already. However, there's a lot of back-end work/refactoring which should be completed to enable development to move forward.

Below are some other larger initiatives which need to be mapped out and completed:
- [ ] Finish "real-time" preview loop (basically always show all valid XAML even if incomplete), needs understanding of https://github.com/michael-hawker/XmlSyntaxVisualizerUWP/issues/4 (the latest branch there also experimented with switching to WinUIEdit, see next; so maybe those go hand-in-hand a bit if this is figured out).
- [ ] Ideally some of the incremental edit/parsing system from Guilabs is used, but that's not well understood either... 😅
- [ ] Switch to WinUIEdit over Monaco (provides better performance, option to consolidate to single editor with better serialization/workbench state, and compatibility with UWP + WinUI 3 and AOT; however, unless we abstract some editor interop we lose future Uno Monaco WASM re-use for future v3)
- [ ] Support building for (Modern) UWP and WinUI 3 together as part of single SDK-style modern project.
- [ ] Re-work XAML Pre-render pipeline to better leverage XmlParser. This has been a WIP, but needs improvement still.
- [ ] Want this to be more defined with parser and tests vs. string manipulation
- [ ] Ensuring mapping or retaining of line numbers pre/post output is critical for error display, maybe an actual mapping system is needed to make it easier to work with, in general.
- [ ] Folder + Resources needs this, we need to directly copy/interleave the complete resource dictionary (which is kind of what XAML does anyway) to get actual resource keys to be referenceable. (The current implementation of parsing separately and setting the resources only works for styles, as otherwise too late for XAML Parser to understand lookups for resource keys.)
- [ ] Bonus if this supports nested references of resource dictionaries...
- #5 (Needs more type specific widgets and document sync)
- #11 (Needs more type specific adorners)

These will get converted to sub-issues soon, but wanted to have a general outline and tracking issue here to get started.

This'll be updated in-place as things progress.

You can also track smaller issues in the [2.0-beta milestone](https://github.com/dotnet/XAMLStudio/milestone/1) and [2.0 milestone](https://github.com/dotnet/XAMLStudio/milestone/2). The goal when hitting 2.0-beta would be to potentially flight via the store, or at least produce downloaded MSIX packages at that point.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.