It's uncanny, I just vibe built something super similar. A server/client system to share individual windows as a resized app on the phone. I can select certain windows to render as if it was an app on either my Windows client, mac client, or iPhone client from a windows or mac server.
Glad to know I'm not the only one thinking about this. It also connects over tailnet.
For answering your question, MeowDisplay started as a fork of OpenDisplay which had the foundations for screen capture, virtual displays, encoding and the iPhone/iPad receivers built, I've credited OpenDisplay and its developer Philip in the README under "Built on OpenDisplay"
After that, I've taken a more phone-first approach, with quite a bit of work on the interaction, streaming and security layers.
So it's built on OpenDisplay and not just a UI layer over it, MeowDisplay is going in a different direction, If you only need the core second-display experience, or compatibility that the OpenDisplay project serves better, OpenDisplay is well worth a look.
I really want an evaluation of all of these classes of remote desktop systems and latency. Almost all of my remote display experiences have been mediocre due to lag. Maybe my tolerance is too low? How is the latency on this product?
Only RDP has felt truly responsive to me, and my understanding is that it cheats by not sending raster graphics and instead drawing primaries directly on the remote system and then updating the state based on the server?
I agree, I have benchmarks planned for the future.
As far as the latency on MeowDisplay, In my testing on Wifi, I measured around 14-17ms median from capture to receiver handoff, not e2e. I've also seen occasional spikes around 50-90ms and some stalled frames, you do notice the stalls but overall it's pretty responsive.
I've preferred to show the cursor as it is on the mac instead of rendering it locally on the phone which may make it feel smoother but the trade-off is that it may not accurately represent where the cursor actually is on the mac if things lag or hang.
The question I saw coming, and was hoping for too.
Thank you for asking!
There's quite a bit of overlap in what we're both trying to do. I've come across Sill and tried it as well, and it's nice.
I think the biggest difference for most people would be the iPhone experience across both apps. I've specifically prioritized making the whole "use your Mac from your phone" experience better, and the iPad has received the same care too, with additional customizability to make use of the extra screen space.
I've looked at quite a few remote desktop apps, how they've approached things and the trade-offs they've made, and weighed those against how I'd want MeowDisplay to do things.
Part of MeowDisplay also came from a question: why hasn't Apple done something like this natively? The iPad has Sidecar, so I've often imagined how Apple might've approached it for the iPhone, and how I'd do it based on my experience with remote desktop apps.
Coming to how they're different, I think the biggest distinctions are how I've chosen to handle Mac windows, the limited screen space on phones, and the overall UX.
Sill's optional virtual display moves the selected window onto a separate display sized for the receiver, which can resize the actual Mac window. MeowDisplay's Window view keeps the Mac window's existing size and position, adapting how it's displayed on the phone instead.
My reasoning behind this is that most desktop apps weren't designed for phone-sized windows. Resizing them can make their interfaces cramped or awkward, and I'd rather preserve their original layouts, even if that means occasionally zooming, which I find acceptable.
Sill currently focuses on displaying one window or the desktop at a time, while MeowDisplay offers a different multitasking workflow with multiple windows arranged in tabs and panes, and floating windows coming in 2.1.
Another difference is the screen space. Sill's portrait layout has the streamed picture at the top with a dedicated trackpad below it, although it also offers a Larger Picture option and direct touch.
I've questioned why we even need a separate trackpad when the whole phone is already a touch surface. MeowDisplay lets you use the displayed content itself for Direct Touch or trackpad-style input, without sacrificing a portion of the screen for a dedicated trackpad. Personally, I find that screen space too valuable to give up.
There's a difference in how you navigate through the UI as well. Sill has window thumbnails and app selection, while MeowDisplay uses Stage Peek, which you pull from the screen's edge to browse and search windows and apps, along with an expanded window overview.
So yupp, we're both trying to solve a similar problem, just with different approaches and trade-offs. I think some people might prefer Sill's approach, and others might prefer MeowDisplay's.
Glad to know I'm not the only one thinking about this. It also connects over tailnet.
I'd have expected that to be declared in an announcement for this community.
For answering your question, MeowDisplay started as a fork of OpenDisplay which had the foundations for screen capture, virtual displays, encoding and the iPhone/iPad receivers built, I've credited OpenDisplay and its developer Philip in the README under "Built on OpenDisplay"
After that, I've taken a more phone-first approach, with quite a bit of work on the interaction, streaming and security layers.
So it's built on OpenDisplay and not just a UI layer over it, MeowDisplay is going in a different direction, If you only need the core second-display experience, or compatibility that the OpenDisplay project serves better, OpenDisplay is well worth a look.
Only RDP has felt truly responsive to me, and my understanding is that it cheats by not sending raster graphics and instead drawing primaries directly on the remote system and then updating the state based on the server?
As far as the latency on MeowDisplay, In my testing on Wifi, I measured around 14-17ms median from capture to receiver handoff, not e2e. I've also seen occasional spikes around 50-90ms and some stalled frames, you do notice the stalls but overall it's pretty responsive.
I've preferred to show the cursor as it is on the mac instead of rendering it locally on the phone which may make it feel smoother but the trade-off is that it may not accurately represent where the cursor actually is on the mac if things lag or hang.
Then again, it does depend on the connection.
There's quite a bit of overlap in what we're both trying to do. I've come across Sill and tried it as well, and it's nice.
I think the biggest difference for most people would be the iPhone experience across both apps. I've specifically prioritized making the whole "use your Mac from your phone" experience better, and the iPad has received the same care too, with additional customizability to make use of the extra screen space.
I've looked at quite a few remote desktop apps, how they've approached things and the trade-offs they've made, and weighed those against how I'd want MeowDisplay to do things.
Part of MeowDisplay also came from a question: why hasn't Apple done something like this natively? The iPad has Sidecar, so I've often imagined how Apple might've approached it for the iPhone, and how I'd do it based on my experience with remote desktop apps.
Coming to how they're different, I think the biggest distinctions are how I've chosen to handle Mac windows, the limited screen space on phones, and the overall UX.
Sill's optional virtual display moves the selected window onto a separate display sized for the receiver, which can resize the actual Mac window. MeowDisplay's Window view keeps the Mac window's existing size and position, adapting how it's displayed on the phone instead.
My reasoning behind this is that most desktop apps weren't designed for phone-sized windows. Resizing them can make their interfaces cramped or awkward, and I'd rather preserve their original layouts, even if that means occasionally zooming, which I find acceptable.
Sill currently focuses on displaying one window or the desktop at a time, while MeowDisplay offers a different multitasking workflow with multiple windows arranged in tabs and panes, and floating windows coming in 2.1.
Another difference is the screen space. Sill's portrait layout has the streamed picture at the top with a dedicated trackpad below it, although it also offers a Larger Picture option and direct touch.
I've questioned why we even need a separate trackpad when the whole phone is already a touch surface. MeowDisplay lets you use the displayed content itself for Direct Touch or trackpad-style input, without sacrificing a portion of the screen for a dedicated trackpad. Personally, I find that screen space too valuable to give up.
There's a difference in how you navigate through the UI as well. Sill has window thumbnails and app selection, while MeowDisplay uses Stage Peek, which you pull from the screen's edge to browse and search windows and apps, along with an expanded window overview.
So yupp, we're both trying to solve a similar problem, just with different approaches and trade-offs. I think some people might prefer Sill's approach, and others might prefer MeowDisplay's.
EDIT: Yes, the feature is called Sidecar.