{"id":15061087,"url":"https://github.com/diskuv/scoutapps","last_synced_at":"2025-04-10T06:37:02.283Z","repository":{"id":246480165,"uuid":"821158745","full_name":"diskuv/scoutapps","owner":"diskuv","description":"Sonic Scout is scouting software for First Robotics competitions.","archived":false,"fork":false,"pushed_at":"2025-02-08T18:36:31.000Z","size":11927,"stargazers_count":5,"open_issues_count":8,"forks_count":4,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-24T07:40:46.297Z","etag":null,"topics":["first-robotics","first-robotics-scouting","ocaml","robotics","robotics-competition"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/diskuv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-DKSDK","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}},"created_at":"2024-06-28T00:04:02.000Z","updated_at":"2025-02-08T18:36:35.000Z","dependencies_parsed_at":"2024-06-28T07:56:21.031Z","dependency_job_id":"d0e85b0c-c81c-4533-852e-5674f8db1576","html_url":"https://github.com/diskuv/scoutapps","commit_stats":null,"previous_names":["diskuv/scoutapps"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diskuv%2Fscoutapps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diskuv%2Fscoutapps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diskuv%2Fscoutapps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diskuv%2Fscoutapps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/diskuv","download_url":"https://codeload.github.com/diskuv/scoutapps/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248170978,"owners_count":21059281,"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":["first-robotics","first-robotics-scouting","ocaml","robotics","robotics-competition"],"created_at":"2024-09-24T23:09:07.794Z","updated_at":"2025-04-10T06:37:02.254Z","avatar_url":"https://github.com/diskuv.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sonic Scout Apps\n\n*Sonic Scout* is scouting software for First Robotics competitions.\n\n*Sonic Squirrels* is a First Robotics team from Glacier Peak High School, Washington State, USA. Two high school juniors (Archit Kumar and Keyush Attarde) wrote the initial versions of the Sonic Scout software with some help from Diskuv. Keeping with the First Robotics value system, the software has been released for use by other robotics teams.\n\n- [Sonic Scout Apps](#sonic-scout-apps)\n  - [Overview](#overview)\n  - [Official Releases](#official-releases)\n  - [Customizing](#customizing)\n    - [Quick Start for Customizers](#quick-start-for-customizers)\n  - [Licenses](#licenses)\n\n## Overview\n\nIn the **top right** there is a scout at a First Robotics competition entering information into an Android tablet (that source code is in [us/SonicScoutAndroid/](us/SonicScoutAndroid/)) and **on the laptop screen** you will see the scouting \"manager\" capturing a QR code from another scout who has completed their scouting; the QR scanning desktop \"Manager\" software lives in [us/SonicScoutBackend/](us/SonicScoutBackend/):\n![Windows desktop \"manager\" app](docs/assets/DesktopManagerApp-Live.png)\n\nThe picture is from a YouTube video (`Develop Cross-Platform Software using 2+ Languages @ 04:35`) describing the technical underpinnings of the Sonic Scout software:\n\n[![Develop Cross-Platform Software using 2+ Languages](https://img.youtube.com/vi/N9fVAIPMfKU/0.jpg)](https://www.youtube.com/watch?v=N9fVAIPMfKU)\n\nThe Android tablet has the following workflow (top left to bottom right) for a scout to record match information:\n\n![Android tablet pages](docs/assets/AndroidTablet-Pages.png)\n\n## Official Releases\n\nEach year the First Robotics competitions change. The \"official\" release of the scouting software will always be **one year prior**. To be one step ahead of the other robotics teams, your team should [**modify** the scouting software](#customizing).\n\n| File                                                                                                                                      | Description                                              |\n| ----------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |\n| [`SonicScoutAndroid.apk`](https://github.com/diskuv/scoutapps/releases/download/2024.07.29/SonicScoutAndroid.apk)                         | The Android application. You will need to sideload it.   |\n| [`SonicScoutBackend-1.0.0-win64.msi`](https://github.com/diskuv/scoutapps/releases/download/2024.07.29/SonicScoutBackend-1.0.0-win64.msi) | Windows installer for the QR scanning app and `sqlite3`. |\n| [`SonicScoutQRScanner.dmg`](https://github.com/diskuv/scoutapps/releases/download/2024.07.29/SonicScoutQRScanner.dmg)                     | macOS QR scanning app.                                   |\n\n\u003chttps://www.digitaltrends.com/mobile/how-to-sideload-an-apk/\u003e has instructions how to sideload an Android application.\n\nThe Windows installer will install:\n\n- a `SonicScoutBackend` folder in your Start Menu. You can launch the QR scanner from that (or just press the Windows key and start typing \"Sonic Scout\")\n- a `sqlite3` database shell at `C:\\Program Files\\SonicScoutBackend\\bin\\sqlite3.exe`. The QR scanning database file will be in the folder `%LOCALAPPDATA%\\sonic-scout` (copy that into File Explorer)\n\n## Customizing\n\nThe expectation is that any First Robotics team that uses and modifies the scouting software will continue to uphold First Robotics values by contributing their modifications back to these projects. Keep your modifications to yourself for the first year, and then submit a Pull Request with your changes the second year.\n\nIt is inevitable that one robotics team may submit modifications that are in conflict with modifications from another robotics team. Unfortunately there can only be one official release, and only one app submitted to the Google and Apple App Stores. To keep a healthy [\"copyleft\" open-source license](#licenses) for use by all robotics teams, Diskuv will moderate and decide which modification becomes part of the official release *and* your team will be asked to sign a [Contributor License Agreement](https://www.apache.org/licenses/contributor-agreements.html).\n\n### Quick Start for Customizers\n\n\u003e Prerequisite: A Windows 10 or Windows 11 PC with WSL installed. *Don't know if you have WSL? Follow \u003chttps://learn.microsoft.com/en-us/windows/wsl/install#install-wsl-command\u003e which is safe even if WSL is already installed.*\n\nIf you haven't checked out this project onto your computer, you can do it now using **PowerShell on Windows**:\n\n```powershell\n# Windows setup\ngit -C C:\\ clone https://github.com/diskuv/scoutapps.git\ncd C:\\scoutapps\npackaging\\install-shortcuts.ps1\n```\n\nor a **macOS terminal**:\n\n```sh\n# macOS setup\ngit clone https://github.com/diskuv/scoutapps.git\ncd scoutapps\n```\n\n**Then** either ...\n\n- in the same **PowerShell on Windows** or **macOS terminal** run the following to build and **run Android Studio** (where you can run the Android app):\n\n  ```powershell\n  cd C:\\scoutapps # Use correct directory on macOS or linux\n  ./dk src/SonicScout_Setup/Develop.ml android\n  ```\n\n- **or** run the following to build and **run the QR scanner** (the Scout Backend):\n\n  ```powershell\n  cd C:\\scoutapps # Use correct directory on macOS or linux\n  ./dk src/SonicScout_Setup/Develop.ml scanner\n  ```\n\n- **or** run the following to build and **query the QR scanner database**:\n\n  ```powershell\n  cd C:\\scoutapps # Use correct directory on macOS or linux\n  ./dk src/SonicScout_Setup/Develop.ml database\n  ```\n\nWhen you are in Android Studio (`us/SonicScoutAndroid`) and you make a code change in\nin the other software (like `us/SonicScoutBackend`), you should compile the entire project\nso that your changes are visible:\n\n```powershell\ncd C:\\scoutapps # Use correct directory on macOS or linux\n./dk src/SonicScout_Setup/Develop.ml compile\n```\n\nAfter the end of the robotics season, you can save space by doing:\n\n```powershell\ncd C:\\scoutapps # Use correct directory on macOS or linux\n./dk src/SonicScout_Setup/Clean.ml --all\n```\n\n## Licenses\n\nThe source code of `Sonic Scout` is in the `src/` and `us/` folders are available\nunder the open source [OSL 3.0 license](./LICENSE-OSL3).\n\nA guide to the Open Software License version 3.0 (OSL 3.0) is available at\n\u003chttps://rosenlaw.com/OSL3.0-explained.htm\u003e.\n\nThe `dk`, `dk.cmd` and `__dk.cmake` build tools are [OSL 3.0 licensed](./LICENSE-OSL3)\nwith prompts for additional licenses for the [LGPL 2.1 with an OCaml static linking exception](./LICENSE-LGPL21-ocaml) and the [DkSDK SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT](./LICENSE-DKSDK).\n\nThe backend app uses Qt5 which has a [LGPL 3.0 license](https://doc.qt.io/qt-5/licensing.html).\n\nA DkSDK license token is necessary when you want to rebuild the applications with\ncustomizations for your own robotics team. The token is free to any First Robotics team\nwho has an adult sponsor (ex. a mentor) who also agrees to submit their team's code changes at the end of each robotics season (a \"pull request\") using an open-source\n[Contributor License Agreement](https://yahoo.github.io/oss-guide/docs/resources/what-is-cla.html).\nYou will be shown how to get a token when you run the commands in [Quick Start for Customizers](#quick-start-for-customizers).\n\nYou do *not* need a token to run the Android app from the Google Play Store, nor do you\nneed the license token to run the QR scanner backend app.\n\nThe copyright is owned jointly by:\n\n- Archit Kumar\n- Keyush Attarde\n- Cordelia Notbohm\n- Diskuv, Inc.\n\nDo *not* submit a customized scouting application to an App Store (Apple, Google, Microsoft, Samsung, Huawei, Tencent, Oppo, etc.). You do not have a license to submit to those App Stores, and you don't own the copyright.\n\nYou *can* sideload your customized application on your team's tablets, phones and PCs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiskuv%2Fscoutapps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdiskuv%2Fscoutapps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiskuv%2Fscoutapps/lists"}