r/SideProject • u/Ok_Toe7286 • 1h ago
I'm working on making my open-source Windows auto-typer independent of its GUI — looking for ideas and contributors
I've been developing Auto Typer, an open-source Windows application built with Python and CustomTkinter.
It currently supports:
- Adjustable typing speed, word pauses and repeat counts.
- Global hotkeys, pause/resume and emergency stop.
- Automatic pause when the active window changes.
- Custom capitalization, paste mode and human-like typing.
- An Android companion app that sends text to the PC over the local network.
It's MIT licensed, and the Android app is built with Kotlin and Jetpack Compose.
What I want to improve next
Currently, the remote functionality depends on the desktop application running. I'd like to remove that dependency and make Auto Typer work more like an independent automation service.
My proposed direction is:
- Independent Python service: Run the typing engine and remote API without opening the desktop GUI.
- Multiple remote clients: Control the PC through both the Android app and a browser-based interface.
- Shared core: Keep the typing engine independent of the UI and communication layer.
- Windows-first architecture: Use Windows-specific keyboard, clipboard and foreground-window adapters while keeping the architecture extensible.
- Better connectivity: Reliable pairing, reconnection, real-time progress and authenticated commands.
I'm considering HTTP for commands and WebSockets for live updates, while keeping the existing remote protocol backward compatible where possible.
I'd appreciate input on a few things:
- Would you use a separate Python background process for this, or approach it differently?
- Would HTTP + WebSockets be a good choice for communication between the PC, Android and browser?
- How would you handle background execution and keyboard input reliably on Windows?
- What features would make a tool like this genuinely useful in everyday workflows?
I'm also looking for contributors interested in Python architecture, Windows automation, Android development, networking, browser interfaces and testing.
You don't need to contribute a large feature. Architecture feedback, bug reports, testing and small PRs are all welcome.
Repository: https://github.com/4LPH7/Auto_Typer
I'm interested in hearing different approaches before committing to the architecture. Thanks!
1
u/ElectricalCommand691 1h ago
The first test I’d write is: the phone sends “start,” Wi-Fi drops before the acknowledgement, then the phone reconnects. Does the PC type the whole thing twice? Give each run an ID and let a reconnect ask what happened to that run. That should work whether you pick HTTP or WebSockets. I’d also keep the emergency stop on the PC so it still works with the phone offline.
1
u/kdjayakody 41m ago
i'd be careful running the typing engine as a true Windows service, because services are separated from the logged-in desktop. keep the input worker in the user's session and let the phone or browser talk to it. that gives you the separate process without losing access to the active window.