{"id":16390959,"url":"https://github.com/lwch/rdesktop","last_synced_at":"2025-03-21T02:32:08.390Z","repository":{"id":41068175,"uuid":"430940539","full_name":"lwch/rdesktop","owner":"lwch","description":"golang desktop controller, supported windows, linux, macos.","archived":false,"fork":false,"pushed_at":"2023-03-09T03:48:45.000Z","size":70,"stargazers_count":37,"open_issues_count":3,"forks_count":13,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-12T04:44:45.831Z","etag":null,"topics":["automation","clipboard","golang","keyboard","mouse","window"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lwch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-11-23T03:01:59.000Z","updated_at":"2024-08-06T10:20:56.000Z","dependencies_parsed_at":"2023-07-12T17:30:53.165Z","dependency_job_id":null,"html_url":"https://github.com/lwch/rdesktop","commit_stats":null,"previous_names":["lwch/screenshot"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwch%2Frdesktop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwch%2Frdesktop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwch%2Frdesktop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwch%2Frdesktop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lwch","download_url":"https://codeload.github.com/lwch/rdesktop/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221811384,"owners_count":16884305,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","clipboard","golang","keyboard","mouse","window"],"created_at":"2024-10-11T04:44:44.166Z","updated_at":"2024-10-28T09:10:25.388Z","avatar_url":"https://github.com/lwch.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rdesktop\n\n[![rdesktop](https://github.com/lwch/rdesktop/actions/workflows/build.yml/badge.svg)](https://github.com/lwch/rdesktop/actions/workflows/build.yml)\n[![Go Reference](https://pkg.go.dev/badge/github.com/lwch/rdesktop.svg)](https://pkg.go.dev/github.com/lwch/rdesktop)\n[![Go Report Card](https://goreportcard.com/badge/github.com/lwch/rdesktop)](https://goreportcard.com/report/github.com/lwch/rdesktop)\n[![go-mod](https://img.shields.io/github/go-mod/go-version/lwch/rdesktop)](https://github.com/lwch/rdesktop)\n[![license](https://img.shields.io/github/license/lwch/rdesktop)](https://opensource.org/licenses/MIT)\n\ngolang desktop controller library\n\n- [x] screenshot\n- [x] keyboard/mouse events\n- [x] scroll events\n- [x] clipboard get/set(only supported text data)\n\nsupported system\n\n- [x] linux(x11)\n- [x] windows\n- [x] macos\n\n## screenshot\n\n    cli, _ := rdesktop.New()\n    cli.ShowCursor(true) // show the cursor image\n    img, err := cli.Screenshot()\n    // use of img\n\n## mouse\n\n    cli, _ := rdesktop.New()\n    cli.MouseMove(100, 100) // move mouse to 100,100\n    cli.ToggleMouse(rdesktop.MouseLeft, true) // mouse left button press down\n    cli.ToggleMouse(rdesktop.MouseLeft, false) // mouse left button press up\n    cli.Scroll(0, -100) // scroll down 100 pixel\n\n## keyboard\n\n    cli, _ := rdesktop.New()\n    cli.ToggleKey(\"control\", true) // press down ctrl\n    cli.ToggleKey(\"a\", true) // press down a\n    cli.ToggleKey(\"control\", false) // press up ctrl\n    cli.ToggleKey(\"a\", false) // press up a\n\n## clipboard\n\n    cli, _ := rdesktop.New()\n    cli.ClipboardSet(\"hello\") // set \"hello\" text to clipboard\n    data, _ := cli.ClipboardGet() // get clipboard data\n\n## cursor image\n\n    cli, _ := rdesktop.New()\n    img, err := cli.GetCursor()\n    // use of img","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flwch%2Frdesktop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flwch%2Frdesktop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flwch%2Frdesktop/lists"}