{"id":50766308,"url":"https://github.com/nasa/XPlaneConnect","last_synced_at":"2026-06-28T18:00:34.025Z","repository":{"id":22272565,"uuid":"25606855","full_name":"nasa/XPlaneConnect","owner":"nasa","description":"The X-Plane Communications Toolbox is a research tool used to interact with the X-Plane flight simulator","archived":false,"fork":false,"pushed_at":"2024-04-23T23:11:23.000Z","size":20998,"stargazers_count":707,"open_issues_count":64,"forks_count":295,"subscribers_count":64,"default_branch":"master","last_synced_at":"2025-12-20T15:23:55.297Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nasa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license.pdf","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-10-22T22:10:26.000Z","updated_at":"2025-12-20T00:03:33.000Z","dependencies_parsed_at":"2023-01-13T21:56:01.590Z","dependency_job_id":"1236add5-96de-4df8-966e-6ee16219aec6","html_url":"https://github.com/nasa/XPlaneConnect","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/nasa/XPlaneConnect","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasa%2FXPlaneConnect","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasa%2FXPlaneConnect/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasa%2FXPlaneConnect/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasa%2FXPlaneConnect/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nasa","download_url":"https://codeload.github.com/nasa/XPlaneConnect/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasa%2FXPlaneConnect/sbom","scorecard":{"id":674769,"data":{"date":"2025-08-11","repo":{"name":"github.com/nasa/XPlaneConnect","commit":"11a5f350bd6888873d293bf3c9f59b0fba1331c1"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":7,"reason":"Found 6/8 approved changesets -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":0,"reason":"binaries present in source code","details":["Warn: binary detected: Java/Examples/ContinuousOperation/libs/XPlaneConnect.jar:1","Warn: binary detected: Java/lib/hamcrest-core-1.3.jar:1","Warn: binary detected: Java/lib/junit-4.12.jar:1","Warn: binary detected: MATLAB/+XPlaneConnect/XPlaneConnect.jar:1","Warn: binary detected: xpcPlugin/SDK/Libraries/Mac/XPLM.framework/XPLM:1","Warn: binary detected: xpcPlugin/SDK/Libraries/Mac/XPWidgets.framework/XPWidgets:1","Warn: binary detected: xpcPlugin/SDK/Libraries/Win/XPLM.lib:1","Warn: binary detected: xpcPlugin/SDK/Libraries/Win/XPLM_64.lib:1","Warn: binary detected: xpcPlugin/SDK/Libraries/Win/XPWidgets.lib:1","Warn: binary detected: xpcPlugin/SDK/Libraries/Win/XPWidgets_64.lib:1"],"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v1.3-rc6 not signed: https://api.github.com/repos/nasa/XPlaneConnect/releases/27991012","Warn: release artifact v1.3-rc5 not signed: https://api.github.com/repos/nasa/XPlaneConnect/releases/19182594","Warn: release artifact v1.3-rc2 not signed: https://api.github.com/repos/nasa/XPlaneConnect/releases/18750199","Warn: release artifact v1.3-rc6 does not have provenance: https://api.github.com/repos/nasa/XPlaneConnect/releases/27991012","Warn: release artifact v1.3-rc5 does not have provenance: https://api.github.com/repos/nasa/XPlaneConnect/releases/19182594","Warn: release artifact v1.3-rc2 does not have provenance: https://api.github.com/repos/nasa/XPlaneConnect/releases/18750199"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-21T21:08:33.756Z","repository_id":22272565,"created_at":"2025-08-21T21:08:33.756Z","updated_at":"2025-08-21T21:08:33.756Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34898568,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-28T02:00:05.809Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-06-11T14:01:24.520Z","updated_at":"2026-06-28T18:00:34.019Z","avatar_url":"https://github.com/nasa.png","language":"C","funding_links":[],"categories":["X-Plane Plugins"],"sub_categories":[],"readme":"# X-Plane Connect\nThe X-Plane Connect (XPC) Toolbox is an open source research tool used to\ninteract with the commercial flight simulator software X-Plane. XPC allows users\nto control aircraft and receive state information from aircraft simulated in\nX-Plane using functions written in C, C++, Java, MATLAB, or Python in real time over the\nnetwork. This research tool has been used to visualize flight paths, test control\nalgorithms, simulate an active airspace, or generate out-the-window visuals for\nin-house flight simulation software. Possible applications include active control\nof an XPlane simulation, flight visualization, recording states during a flight,\nor interacting with a mission over UDP.\n\n### Architecture\nXPC includes an X-Plane plugin (xpcPlugin) and clients written in several\nlanguages that interact with the plugin.\n\n#### Quick Start\nTo get started using X-Plane Connect, do the following.\n\n1. Purchase and install X-Plane 9, 10 or 11.\n2. Download the `XPlaneConnect.zip` file from the latest release on the [releases](https://github.com/nasa/XPlaneConnect/releases) page.\n3. Copy the contents of the .zip archive to the plugin directory (`[X-Plane Directory]/Resources/plugins/`)\n4. Write some code using one of the clients to manipulate X-Plane data.\n\nEach client is located in a top-level directory of the repository named for the\nclient's language. The client directories generally include a `src` folder\ncontaining the client source code, and an `Examples` folder containing sample\ncode demonstrating how to use the client.\n\n#### Additional Information\nFor detailed information about XPC and how to use the XPC clients, refer to the\n[XPC Wiki](https://github.com/nasa/XPlaneConnect/wiki).\n\n#### Capabilities\nThe XPC Toolbox allows the user to manipulate the internal state of X-Plane by\nreading and setting DataRefs, a complete list of which can be found on the\n[X-Plane SDK wiki](http://www.xsquawkbox.net/xpsdk/docs/DataRefs.html).\n\nIn addition, several convenience functions are provided, which allow the user to\nefficiently execute common commands. These functions include the ability to set\nthe position and control surfaces of both player and multiplayer aircraft. In\naddition, the pause function allows users to easily pause and un-pause X-Plane's\nphysics simulation engine.\n\n### Compatibility\nXPC has been tested with the following software versions:\n* Windows: Vista, 7, \u0026 8\n* Mac OSX: 10.8-10.14\n* Linux: Tested on Red Hat Enterprise Linux Workstation release 6.6\n* X-Plane: 9, 10 \u0026 11\n\n### Contributing\nAll contributions are welcome! If you are having problems with the plugin, please\nopen an issue on GitHub or email [Chris Teubert](mailto:christopher.a.teubert@nasa.gov).\nIf you would like to contribute directly, please feel free to open a pull request\nagainst the \"develop\" branch. Pull requests will be evaluated and integrated into\nthe next official release.\n\n\n### Notices\nCopyright ©2013-2018 United States Government as represented by the Administrator\nof the National Aeronautics and Space Administration.  All Rights Reserved.\n\nNo Warranty: THE SUBJECT SOFTWARE IS PROVIDED \"AS IS\" WITHOUT ANY WARRANTY OF ANY\nKIND, EITHER EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY\nWARRANTY THAT THE SUBJECT SOFTWARE WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED\nWARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM\nINFRINGEMENT, ANY WARRANTY THAT THE SUBJECT SOFTWARE WILL BE ERROR FREE, OR ANY\nWARRANTY THAT DOCUMENTATION, IF PROVIDED, WILL CONFORM TO THE SUBJECT SOFTWARE.\nTHIS AGREEMENT DOES NOT, IN ANY MANNER, CONSTITUTE AN ENDORSEMENT BY GOVERNMENT\nAGENCY OR ANY PRIOR RECIPIENT OF ANY RESULTS, RESULTING DESIGNS, HARDWARE,\nSOFTWARE PRODUCTS OR ANY OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT\nSOFTWARE.  FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES\nREGARDING THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE, AND\nDISTRIBUTES IT \"AS IS.\"\n\nWaiver and Indemnity:  RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS AGAINST THE\nUNITED STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY\nPRIOR RECIPIENT.  IF RECIPIENT'S USE OF THE SUBJECT SOFTWARE RESULTS IN ANY\nLIABILITIES, DEMANDS, DAMAGES, EXPENSES OR LOSSES ARISING FROM SUCH USE,\nINCLUDING ANY DAMAGES FROM PRODUCTS BASED ON, OR RESULTING FROM, RECIPIENT'S USE\nOF THE SUBJECT SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE UNITED\nSTATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY PRIOR\nRECIPIENT, TO THE EXTENT PERMITTED BY LAW.  RECIPIENT'S SOLE REMEDY FOR ANY SUCH\nMATTER SHALL BE THE IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT.\n\n#### X-Plane API\nCopyright (c) 2008, Sandy Barbour and Ben Supnik  All rights reserved.\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in the\nSoftware without restriction, including without limitation the rights to use,\ncopy, modify, merge, publish, distribute, sublicense, and/or sell copies of the\nSoftware, and to permit persons to whom the Software is furnished to do so,\nsubject to the following conditions:\n\n* Redistributions of source code must retain the above copyright notice, this\n  list of conditions and the following disclaimer.\n* Neither the names of the authors nor that of X-Plane or Laminar Research may\n  be used to endorse or promote products derived from this software without\n  specific prior written permission from the authors or Laminar Research,\n  respectively.\n\nX-Plane API SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\nIS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\nANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS\nOF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\nTHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\nNEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN\nIF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasa%2FXPlaneConnect","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnasa%2FXPlaneConnect","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasa%2FXPlaneConnect/lists"}