{"id":20884562,"url":"https://github.com/eyetrackvr/firmwareflashingtool","last_synced_at":"2026-03-08T19:02:58.935Z","repository":{"id":203368126,"uuid":"709418846","full_name":"EyeTrackVR/FirmwareFlashingTool","owner":"EyeTrackVR","description":"Easy Flash the firmware for your etvr trackers","archived":false,"fork":false,"pushed_at":"2025-05-05T17:57:17.000Z","size":90169,"stargazers_count":11,"open_issues_count":1,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-05T18:57:51.446Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/EyeTrackVR.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2023-10-24T17:19:33.000Z","updated_at":"2025-02-18T09:37:11.000Z","dependencies_parsed_at":"2024-06-22T09:12:05.974Z","dependency_job_id":"43a1ad9b-1c25-4783-9af7-7910f97001e2","html_url":"https://github.com/EyeTrackVR/FirmwareFlashingTool","commit_stats":null,"previous_names":["eyetrackvr/firmwareflashingtool"],"tags_count":29,"template":false,"template_full_name":"ZanzyTHEbar/SolidJSTauri","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EyeTrackVR%2FFirmwareFlashingTool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EyeTrackVR%2FFirmwareFlashingTool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EyeTrackVR%2FFirmwareFlashingTool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EyeTrackVR%2FFirmwareFlashingTool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EyeTrackVR","download_url":"https://codeload.github.com/EyeTrackVR/FirmwareFlashingTool/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253798085,"owners_count":21966003,"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":[],"created_at":"2024-11-18T08:10:29.607Z","updated_at":"2026-03-08T19:02:58.929Z","avatar_url":"https://github.com/EyeTrackVR.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Firmware Flashing Tool\n\nThis is a streamlined `Tauri` app using `Vite` and `SolidJS`.\n\nA firmware flashing tool for the [Open Source EyeTrackVR hardware](https://docs.eyetrack.vr) project.\n\nThis repo includes:\n\n- [Tauri](https://tauri.app/)\n- [JSDoc](https://jsdoc.app/)\n- [Prettier](https://prettier.io/)\n- [ESLint](https://eslint.org/)\n- [TailwindCSS](https://tailwindcss.com/)\n- [Typescript](https://www.typescriptlang.org/)\n- [Proper VSCode Workspace](./firmwareflasher.code-workspace)\n\n## Usage\n\n\u003e [!WARNING]\\\n\u003e This project uses `pnpm` by default, and utilizes `pnpm workspaces`. If you do not have `pnpm` installed, you can install it with `npm install -g pnpm`.\n\nYou _can_ use `yarn` or `npm`, however, _you_ will need to modify the project to remove the `pnpm` specific commands and workspace.\n\n## Setup\n\n### Step 1 - setup node environment\n\n```bash\npnpm run setup\n```\n\n### Step 2 - setting up the backend binary\n\nTo actually compile the project, you'll also need a binary of the ETVR backend from [here]().\n\nClone the project, follow its readme to set it up and build the binary.\nOnce done, copy the result into [backend_bin](/src-tauri/backend_bin) and rename it to `ETVR-\u003ctarget-triple\u003e`\n\nThe target triple can be obtained by running\n\n```bash\nrustc -Vv\n```\n\nThe info you're looking for will be stored under `host:`, for example `host: x86_64-pc-windows-msvc`\nSo the copied binary should be named like `ETVR-x86_64-pc-windows-msvc`\n\n### Step 3\n\nRun the project\n\n```bash\npnpm tauri dev\n```\n\n## Available Scripts\n\nSee the [`package.json`](/package.json) for all available scripts.\n\n### `pnpm tauri dev`\n\nRuns the app in the development mode.\u003cbr\u003e\n\nAn app should launch on your desktop.\n\nThe page will reload if you make edits.\u003cbr\u003e\n\n### `pnpm docs`\n\nUses `JSDoc` to build a documentation website based on the projects documentation.\n\n### `pnpm lint`\n\nRuns `eslint` on all of the included files.\n\n### `pnpm format`\n\nUses `Prettier` and the above `pnpm lint` command to lint and then format all included file types.\n\n## Development\n\nThis project follows the architecture Tauri laid down - `Tauri Plugins` and commands, to communicate with the hardware.\nThese plugins are located in the [`src-tauri/src/lib`](/src-tauri/src/lib) folder.\n\n## Deployment\n\nTo build the app, run the following:\n\n```bash\npnpm tauri build\n```\n\nBuilds the app for production to the `src-tauri/target` folder.\u003cbr\u003e\nThis will correctly bundle Solid in production mode and optimizes the build for the best performance.\n\nThe build is minified and the filenames include the hashes.\u003cbr\u003e\n\n## Updating version for CI\n\n### Requirements\n\nInstall UV:\n- https://docs.astral.sh/uv/\n\nThen, in the project root run: \n```shell\nuv sync\n```\n\n### Beta version\n\nFirst, make sure your changes are merged into the `beta` branch and that you're currently checked out on it.\nOnce done, run: \n\n```shell\nuv run bumpver update --tag-num --tag beta --dry\n```\n\nCheck if your changes look good, and if so: \n\n```shell\nuv run bumpver update --tag-num --tag beta\n```\n\nThis will push the new bump commit with a special tag that will trigger a fresh beta build\n\n## Release version\n\nFollow the same steps as for `Beta` version but instead of tag beta use one of the following\n\n- `--patch` - for patch updates\n- `--minor` - for minor changes\n- `--major` - for breaking changes\n\n## Pushing the new version to Github\n\nUnfortunately, since bumpver doesn't support setting v in git tags, we have to do one more step\n\n```shell\ngit tag v\u003cnew_tag\u003e \u003cbumpver_tag\u003e\n```\n\nfor example\n```shell\ngit tag v1.7.1-beta.2 1.7.1-beta.2\n```\n\nOnce done:\n\n```shell\ngit push --follow-tags\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feyetrackvr%2Ffirmwareflashingtool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feyetrackvr%2Ffirmwareflashingtool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feyetrackvr%2Ffirmwareflashingtool/lists"}