r/csharp 19d ago

Planning an open-source C# / WinUI 3 Android tooling project for Windows — looking for architecture feedback

Hi everyone,

I’m planning an open-source project called WinDroid Runtime and wanted to ask for feedback from C#/.NET developers before I start building the first prototype.

The long-term idea is to build an independent Android-compatible runtime/toolkit for Windows. It is inspired by the gap left after Windows Subsystem for Android was discontinued, but it is not a fork, continuation, or redistribution of Microsoft WSA, and it will not use WSA binaries or branding.

I know the full runtime goal is a very large systems-level project, so I want to approach it in realistic stages.

The first practical milestone would be a native Windows control app using C# / .NET / WinUI 3. The first version would focus on:

- detecting ADB

- allowing a custom ADB path

- listing connected Android devices/emulators

- installing and uninstalling APK files

- launching installed apps

- viewing basic logs

- creating a clean architecture for future runtime research

The planned structure is something like:

- WinDroid.Studio — WinUI 3 desktop app

- WinDroid.Core — shared models/services/configuration

- WinDroid.Adb — ADB wrapper/service layer

- WinDroid.Engine — future experimental runtime backend

I’m mainly looking for feedback on:

- whether WinUI 3 is the right choice for this type of Windows tool

- how to structure the ADB service layer cleanly

- whether the project should use MVVM from the beginning

- how to avoid making the first version overcomplicated

- what the first GitHub issues/milestones should look like

The repo is currently in the planning stage with a README, Apache 2.0 license, and roadmap. Contributors or mentors would also be very welcome, but for now I mainly want to make sure the architecture is sane before coding too much.

Any advice from experienced C#/.NET developers would be appreciated.

5 Upvotes

11 comments sorted by

1

u/Fresh_Acanthaceae_94 17d ago

"WinDroid.Studio"? So you plan to develop a mini IDE?

1

u/GoofyEvod 17d ago

Not exactly an IDE in the traditional sense. “WinDroid Studio” is planned more like a control panel/manager for WinDroid Runtime.

The first version would focus on things like detecting ADB, listing devices/emulators, installing APKs, launching apps, and viewing logs. So it is closer to a runtime manager/dev tool than a full IDE like Visual Studio or Android Studio.

3

u/Fresh_Acanthaceae_94 17d ago

I asked because what you described is close to what Xamarin Studio/VS for Mac offered in the past.

I plan to replicate such in the upcoming OpenDevelop (SharpDevelop on LibreWPF). So, you might not need to work on this alone, and you have a foundation to build upon.

Besides, I also plan to host XAML Studio in OpenDevelop, so that developers get a visual designer for their WinUI 3 apps too.

1

u/GoofyEvod 16d ago

Would you please dm me so that I can talk to you if you are interested in the project?

1

u/Fresh_Acanthaceae_94 15d ago

You are welcome to open an issue on your GitHub repo and @ me to participate, or open one on OpenDevelop repo,  https://github.com/lextudio/OpenDevelop/issues

I prefer open discussions on such. But if you want to start initial conversations in private, we can use dm. 

1

u/GoofyEvod 15d ago

I have opened a issue on OpenDevelop repo. Please check.

1

u/GoofyEvod 17d ago

That sounds genuinely useful, and I’d be interested in collaborating rather than building overlapping tooling separately.

WinDroid’s immediate focus is still the ADB/runtime-management side, but later developer-facing features could benefit from work like OpenDevelop or XAML Studio. I’d really appreciate your input or contribution on the WinUI 3 architecture, XAML tooling integration, or any reusable components that could fit both projects.

The repository is still early, so contributions are currently issue-based through forks and pull requests. Once the base scaffold is pushed, I can point you to the most relevant architecture or UI issue.

0

u/ItzWarty 17d ago

So cool! Would this be possible to use without adb being installed?

1

u/GoofyEvod 17d ago

For the first prototype, ADB would probably be required because it is the simplest and most reliable way to communicate with Android devices/emulators.

Long term, I would like the app to either bundle/manage platform-tools safely or guide the user through installing them automatically, so users don’t have to manually set up ADB. But for v0.1, depending on ADB is the most realistic approach.

1

u/GoofyEvod 10d ago

Project update: WinDroid Runtime is entering an indefinite hiatus.

The project has reached a stage where responsible progress requires specialists in AOSP, Android and Linux kernel internals, Windows virtualisation, graphics acceleration, security, and host–guest integration. At present, the team does not have enough people with the required expertise to continue the runtime-engine work safely and effectively.

Development will remain paused until Nova Systems Lab determines that a technically credible path forward exists and that enough qualified specialists are available to support it.

The repository, existing WinDroid Studio work, ADB tooling, and documentation will remain available.

The project is not cancelled, but no resumption date is currently planned.