cmdRelay
I built a cross-platform PC remote control and macro engine using Rust, Tauri, and React. It pairs your mobile device to your desktop via WebSockets on your local network, executes system-level operations and custom macros with zero noticeable latency.
- I have added some pre-loaded with layouts for VS Code, Photoshop, Media Controls, and Presentations
- there is also a
Layout Settingsoption to edit and create your own custom control decks.
What was challenging?
Fighting the operating systems to make them behave!
Cross platform
- I have worked with C++, so the core Rust WebSocket server was fun, but true cross-platform compatibility was very frustrating, as in to implement 3 algos for most system interactions.
Github Actions & git
- well this was like a challange + learning
- i used github actions to automate build process of the application for all the platform and learned how to tag versions in git
UI/UX
- This sounds like a small thing with no logic, but actually its really rough and requries a lot of time and design theory to make it perfect.
- i learned how
discoverabilityof a feature is more important then thefeature itselfto a genereal user - Honestly i realised, any of other stardance participants who will review this project, wont give like more then 5 min to the application
- so i had to improve the UX, and show the features and powers of the application
- beacuse if a user can’t find a feature easily, they will just thing that my application lacks that feature
Core Features
- Leanign and fix bugs arising due to differences in interpretation of keypress from
virtualkeyboad andphysicalkeyboards -
Trackpad: it required some maths to smooth out the cursor movement (Took AI help in maths) -
Multithreading: This was toughest concept to grasp for me in rust, i mainly used this to run macros, as macros can be longs and blocking.
Blind on Linux
- I don’t even have access to a Linux machine, so I basically coded it, stared at AI analysis to check if standard commands (like playerctl and x-terminal-emulator) would work, crossed my fingers, and called it a day to ensure the “cross-platform” promise wasn’t a lie.shipLog.md
Proud?
- Comming form Web Development background, i actually create a cross platform desktop application in rust, is like a huge confidence booster for me
- When i participated in this event i decided only to make things which require some tech which i dont alredy know
- and this descision is going good till now
Beyond Data Structures and Algorithims
Learning all these low-level OS interaction concepts. Not just doing Data Structure and Algorithm, but actually going beyond basic code logic to inject raw virtual keycodes, query active window telemetry in real-time, and spawn detached background processes without blowing up the computer
Desktop Application
Desktop or android/ios developers are generally considered superior then web Developer, knowing basics and actualy bulding a cross platform desktop applicaiton is a benchmark for myself
Using old Concepts from Web Dev
The truly seamless local network bridge. Right now, I can tap a button on a React frontend on my phone and instantly trigger a native system lock, launch an executable, or fire a crazy complex macro on a host PC over port 42911. It actually feels production-ready.
- 11 devlogs
- 49h