mark-anthony-libres

RemoteConnect

BuildingOpen SourceProductivity

RemoteConnect is a remote desktop application that lets users connect to, view, and control another computer.

Visit site

Made by

MA
mark-anthony-libres

@localhost

Full Stack Software Developer

Open to work
View profile · 6 projects

Journey

More from mark-anthony-libres

See all 6

My portfolio

2nd portfolio made in three js

Building

TrainingMarks

A personal coach website with a built-in CMS and online booking.

Live

Teleport Prank

Teleport Prank lets you fake your location on websites for fun. Pick a spot on the map and websites will see the locatio

Live

KitaKitaPOS

Simple, reliable, and easy-to-use POS system para sa sari-sari stores, restaurants, cafés, retail shops, at iba pang neg

Building
MA

mark-anthony-libres

Sep 26··Pinned

I started building my own remote desktop application about a week ago, mainly as a way to explore real-time communication, WebRTC, and cross-platform desktop development.

The frontend/client is built with C#/.NET and Avalonia, while the backend is built with Python, FastAPI, PostgreSQL, and WebSockets.

For the actual remote connection, I'm using WebRTC for peer-to-peer communication, with STUN/TURN for establishing connections across different networks.

So far, the project includes:

- Real-time screen sharing

- Remote mouse and keyboard control

- WebRTC data channels for control messages

- STUN/TURN connectivity

- Device identity and connection requests

- Session lifecycle management

- Dynamic screen-sharing bitrate and FPS

I'm currently working on system audio and microphone streaming, followed by clipboard synchronization.

It's still an early prototype.

MA

mark-anthony-libres

Sep 29·

For now, RemoteConnect supports direct WebRTC connections only. If a direct P2P connection fails because of NAT, firewall, or network restrictions, there is currently no TURN relay fallback.

In the future, adding 1–2 TURN servers would improve connectivity by providing a relay when a direct connection isn't possible. However, because RemoteConnect continuously transfers real-time traffic such as screen frames, audio, and control data, TURN would also introduce ongoing server, bandwidth, and infrastructure costs.

This also made me understand why remote desktop services like AnyDesk can be expensive to operate. It's not just the application itself—the infrastructure needed to maintain reliable connections and relay traffic at scale can become a significant ongoing cost.

MA

mark-anthony-libres

Sep 29·

This diagram shows how the two computers establish a WebRTC connection.

WebRTC tries to find the best available path between the two computers, preferably direct, and uses TURN as a fallback.

WebRTC can use:

  • Direct connection — the two computers communicate directly, so the server does not carry the actual screen/data traffic.

  • TURN relay connection — if a direct connection is not possible, the traffic goes through a TURN server.

  • STUN — helps the computers discover their public network addresses so WebRTC can try to establish a direct connection.

Building a dev tool or hiring developers? Get seen here. Become our Sponsor

Stays free because of
  • </Peter> "21st Dev Vinci"
  • Doctor Scoliosis
  • Carlo Dandan
  • RCastromero()
  • Joowd
  • euphydev
  • Natzui Alyx
  • Reymark Aguila
  • </Peter> "21st Dev Vinci"
  • Doctor Scoliosis
  • Carlo Dandan
  • RCastromero()
  • Joowd
  • euphydev
  • Natzui Alyx
  • Reymark Aguila
  • </Peter> "21st Dev Vinci"
  • Doctor Scoliosis
  • Carlo Dandan
  • RCastromero()
  • Joowd
  • euphydev
  • Natzui Alyx
  • Reymark Aguila
  • </Peter> "21st Dev Vinci"
  • Doctor Scoliosis
  • Carlo Dandan
  • RCastromero()
  • Joowd
  • euphydev
  • Natzui Alyx
  • Reymark Aguila
Join them

Building a dev tool or hiring developers? Get seen here. Become our Sponsor

Stays free because of
  • Natzui Alyx
  • </Peter> "21st Dev Vinci"
  • Reymark Aguila
  • Carlo Dandan
  • euphydev
  • Doctor Scoliosis
  • RCastromero()
  • Joowd
  • Natzui Alyx
  • </Peter> "21st Dev Vinci"
  • Reymark Aguila
  • Carlo Dandan
  • euphydev
  • Doctor Scoliosis
  • RCastromero()
  • Joowd
  • Natzui Alyx
  • </Peter> "21st Dev Vinci"
  • Reymark Aguila
  • Carlo Dandan
  • euphydev
  • Doctor Scoliosis
  • RCastromero()
  • Joowd
  • Natzui Alyx
  • </Peter> "21st Dev Vinci"
  • Reymark Aguila
  • Carlo Dandan
  • euphydev
  • Doctor Scoliosis
  • RCastromero()
  • Joowd
Join them