I have created one another Moonlight port for Nintendo Switch and want to share it with you, so let's get started.
Features:
- Support for 720p and 1080p resolution
- Support for 30 and 60 fps modes
- Configurable streaming bitrate
- Host searching in local network
- Ingame overlay with different options, hold "+" button for 3 seconds to open it
- Onscreen keyboard support, tap 3 fingers on screen to open it, swipe anywhere outside of it to hide
- Touchscreen mouse support, works like a PC touchpad, while holding a finger on screen, "ZL" and "ZR" will work like right and left mouse buttons
- Rumble support
Installation:
- Download the latest build from Moonloght-Switch [release page]
- Put moonlight.nro to sdcard:/switch/moonlight
- Launch HBMenu over Title Redirection (for FULL RAM access)
- Launch Moonlight
My experience:
With stable wifi connection game streaming is very smooth, no freezes or crashes at all. I've already completed Sekiro: Shadows Die Twice on NG+3, and on a halfway of beating CodeVein, I think beating this soulslike games is a good marker of how playable it is. Also I'm playing Genshin Impact a a lot, I love how high end PC image quality looks on my Switch 
If you'll have any issues or ideas for improvement, feel free to wright them on [issues page] on GitHub.
What I noticed was when I created a nsp forwarder. under folder switch/moonlightv2/moonlight.nro
And I started the homebrew. I saw my machine/host name. I was like wut. I am on airplane mode and I even didn't do anything in your app... so how did it know my machine name. Then I looked into settings and saw 8,5 MBPS was set. Which is exactly what I set moonlight NX as, since I have 10 MBPS upload and 8,5 mbps is more stable outside my network...
This all leds me to believe it somehow is using the same folder structure as moonlight NX to read or write it's settings?
And that can't be good I imagine... for conflicts and such. Can you confirm?
Also setting the slider back to something exact is next to impossible wether you are using arrows or touchscreen. I was playing around with it, but never got it back to 8,5. I did get it to 8,4. But it would be nice to more easily set your bitrate, accurately.
EDIT: After testing I found if I change it to 8.5 in moonlight nx. it will be 8.5 in your app. so defintely settings overlap. Any way to prevent this for each app to use it's own setting?
If you put an IP in the add host tab, and you switch tabs, the ip will be cleared. Even if you add your host IP. the IP will always reset to 10.0.0.19. Doesnt seem right.
From first glances. Mouse clicking is easier with moonlight nx.
Having left mouse click on right ZR is counter intuitive. Make left left, and right right if it were me..
Also having to reach so far back the controller the L+R buttons are more suited for it I think ergonomically.
Suggestion, if possible to make alt-tabbing, ctrl+alt+del, alt+F4 possible via the OSD keyboard.
I turn on log and debug, and I see stuff, but I don't see any decoder or connection ms etc. info. Not yet implemented?
Will tell more later after testing.
--------------------- MERGED ---------------------------
Great job mate making this! Means there's less of a requirement for me to include nvidia encoder codecs in my application now that you've made an updated moonlight client.

(I'll still add it eventually but not any time soon...)
Thanks for making something awesome for the community.
We've had moonlight nx for a long time.. so im not sure what you are saying? How does this differ