{"id":13583540,"url":"https://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client","last_synced_at":"2025-04-06T21:32:28.845Z","repository":{"id":37038682,"uuid":"233455469","full_name":"Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client","owner":"Melvin-Abraham","description":"A cross-platform unofficial Google Assistant Client for Desktop (powered by Google Assistant SDK)","archived":false,"fork":false,"pushed_at":"2024-01-25T20:33:42.000Z","size":6428,"stargazers_count":3597,"open_issues_count":351,"forks_count":405,"subscribers_count":77,"default_branch":"master","last_synced_at":"2024-10-29T15:37:18.157Z","etag":null,"topics":["cross-platform","desktop-app","desktop-assistant","electron","electron-app","g-assist","gassist","gaudc","google-assistant","google-assistant-sdk","linux","macos","virtual-assistant","windows"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Melvin-Abraham.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"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}},"created_at":"2020-01-12T20:40:54.000Z","updated_at":"2024-10-28T04:03:20.000Z","dependencies_parsed_at":"2023-02-18T07:45:58.736Z","dependency_job_id":"a953f148-c4bd-44cd-8ace-61cde3f7a05f","html_url":"https://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Melvin-Abraham%2FGoogle-Assistant-Unofficial-Desktop-Client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Melvin-Abraham%2FGoogle-Assistant-Unofficial-Desktop-Client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Melvin-Abraham%2FGoogle-Assistant-Unofficial-Desktop-Client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Melvin-Abraham%2FGoogle-Assistant-Unofficial-Desktop-Client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Melvin-Abraham","download_url":"https://codeload.github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223071645,"owners_count":17082857,"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":["cross-platform","desktop-app","desktop-assistant","electron","electron-app","g-assist","gassist","gaudc","google-assistant","google-assistant-sdk","linux","macos","virtual-assistant","windows"],"created_at":"2024-08-01T15:03:34.181Z","updated_at":"2024-11-06T00:30:25.646Z","avatar_url":"https://github.com/Melvin-Abraham.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","Utilities"],"sub_categories":["General Tools"],"readme":"# Google Assistant Unofficial Desktop Client\r\n\r\n[![Build](https://img.shields.io/github/actions/workflow/status/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/main.yml?branch=master\u0026logo=github\u0026style=for-the-badge)][build]\r\n[![Downloads](https://img.shields.io/github/downloads/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/total.svg?logo=github\u0026style=for-the-badge)][downloads]\r\n[![Issues](https://img.shields.io/github/issues/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?logo=github\u0026style=for-the-badge)][issues]\r\n[![License](https://img.shields.io/github/license/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?style=for-the-badge\u0026color=blue)][license]\r\n[![Top Language](https://img.shields.io/github/languages/top/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?style=for-the-badge\u0026color=yellow)][top-lang]\r\n[![Last Commit](https://img.shields.io/github/last-commit/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?style=for-the-badge)][commits]\r\n[![Commits since last release](https://img.shields.io/github/commits-since/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/latest.svg?style=for-the-badge)][commits]\r\n[![Milestone v2.0.0](https://img.shields.io/badge/Milestone%20v2.0.0-Next-blueviolet?style=for-the-badge)][next-milestone]\r\n\r\n![G Assist Banner](images/Banner.png)\r\n\r\nGoogle Assistant Unofficial Desktop Client is a cross-platform desktop client for Google Assistant based on **Google Assistant SDK**.\r\n\r\n\u003e Note:\r\n\u003e ---\r\n\u003e\r\n\u003e The **\"Google Assistant Unofficial Desktop Client\"** is under development. So, if you find any bugs or have any suggestion, feel free to post an _issue_ or a _pull request_.\r\n\r\n## Inspiration\r\n\r\nThe design is inspired by Google Assistant in Chrome OS and comes in both Light Mode _(beta)_ and Dark Mode 😉.\r\n\r\n![G Assist Screenshot](images/Assistant_light_dark.jpg)\r\n\r\n## Download\r\n\r\nYou can build the assistant on your machine if you prefer _(see [How to Build](https://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/blob/master/CONTRIBUTING.md#how-to-build))_. If you don't want to build the project for yourself, you can download the Assistant Setup/Installer for the respective platform from [here (releases)](https://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/releases). You can download from other official sources as well.\r\n\r\n### Windows (using `winget`)\r\n\r\n\u003e If you are on **Windows 11**, chances are you have `winget` pre-installed.\r\n\u003e If you are on older version of Windows (Windows 10) and don't have it installed, check out\r\n\u003e [Install Winget](https://docs.microsoft.com/en-us/windows/package-manager/winget/#install-winget)\r\n\u003e documentation section to learn how to install it.\r\n\r\n#### ⚡ Stable versions:\r\n\r\n```powershell\r\nPS\u003e winget install \"g-assist\" -e\r\n```\r\n\r\n#### 🧪 Preview Versions (Pre-release versions):\r\n\r\n```powershell\r\nPS\u003e winget install \"g-assist-preview\" -e\r\n```\r\n\r\n### MacOS (using `brew`)\r\n\r\n\u003e Visit [brew.sh](https://brew.sh/) to learn how to install `brew` if you don't have it\r\n\u003e installed on your machine.\r\n\r\n```console\r\n$ brew install --cask google-assistant\r\n```\r\n\r\n### Linux (using `snap`)\r\n\r\n\u003e Some linux distros like Ubuntu, KDE Neon, Manjaro, Zorin OS, etc. come pre-installed with\r\n\u003e `snap`. For distros without out-of-the-box support for snaps, visit [Installing snapd](https://snapcraft.io/docs/installing-snapd)\r\n\u003e documentation page.\r\n\r\nManually download from the Snapstore:\r\n\r\n[![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/g-assist)\r\n\r\n#### ⚡ Stable versions:\r\n\r\n```console\r\n$ sudo snap install g-assist\r\n```\r\n\r\n#### 🧪 Preview versions (Pre-release versions):\r\n\r\nIf you want to install release candidates:\r\n\r\n```console\r\n$ sudo snap install g-assist --candidate\r\n```\r\n\r\nIf you want to install beta versions:\r\n\r\n```console\r\n$ sudo snap install g-assist --beta\r\n```\r\n\r\n## Getting Started\r\n\r\nIn order to use the client, you must have a _\"Key File\"_ and _\"Token\"_ for authentication which you can get by going through **Device Registration** process. You can go through the wiki given below to get started.\r\n\r\n\"*Setup Authentication for Google Assistant Unofficial Desktop Client*\" Wiki (For both **Device Registration** \u0026 **Authentication** help):\r\n\u003e https://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/wiki/Setup-Authentication-for-Google-Assistant-Unofficial-Desktop-Client\r\n\r\n#### Other References\r\n\r\nIf you want a user friendly registration method, use **Device Registration** UI:\r\n\u003e https://developers.google.com/assistant/sdk/guides/library/python/embed/config-dev-project-and-account\r\n\r\nIf you want to use a CLI tool to complete the **Device Registration** and **Authentication** process manually, read the following:\r\n\u003e https://developers.google.com/assistant/sdk/reference/device-registration/register-device-manual\r\n\r\nAfter you have registered your device and downloaded the required authentication files, you can head on to _Settings_ and set the _\"Key File Path\"_ and _\"Saved Tokens Path\"_ to the location where the respective files are located.\r\n\r\n## Want to Contribute?\r\n\r\nYou are more than welcome to contribute to all kinds of contributions:\r\n\r\n* 🤔 Request/Suggest a feature\r\n* 🐛 Report a bug\r\n* 📖 Make this documentation better\r\n* 💻 Contribute with the code\r\n\r\nBefore you start, we highly recommend you check the Google Assistant Unofficial Desktop Client's [contributing guidelines](./CONTRIBUTING.md).\r\n\r\n## Default Keyboard Shortcut\r\n\r\n* **Windows:** Win + Shift + A\r\n* **MacOS:** Cmd + Shift + A\r\n* **Linux:** Super + Shift + A\r\n\r\n**Note:** Keyboard shortcut is configurable in the settings\r\n\r\n## Other Libraries Used\r\n\r\n* **p5.js:**\r\n  * For visualization purpose when the user speaks through mic.\r\n  * Link: https://p5js.org/\r\n\r\n* **aud_player.js:**\r\n  * For playing audio through speakers.\r\n  * Link: https://github.com/ItsWendell/google-assistant-desktop-client/blob/develop/src/renderer/providers/assistant/player.js\r\n\r\n* **microphone.js:**\r\n  * For recording audio using Web API.\r\n  * Link: https://github.com/ItsWendell/google-assistant-desktop-client/blob/develop/src/renderer/providers/assistant/microphone.js\r\n\r\n* **google-assistant:**\r\n  * Node.js implementation of the Google Assistant SDK\r\n  * Link: https://github.com/endoplasmic/google-assistant\r\n\r\n* **bumblebee-hotword:**\r\n  * A minimalist hotword / wake word for the web, based on Porcupine\r\n  * Link: https://github.com/jaxcore/bumblebee-hotword\r\n\r\n[downloads]: \u003chttps://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/releases\u003e\r\n[issues]: \u003chttps://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/issues\u003e\r\n[build]: \u003chttps://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/actions/workflows/main.yml\u003e\r\n[license]: \u003chttps://www.apache.org/licenses/LICENSE-2.0\u003e\r\n[commits]: \u003chttps://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/commits/master\u003e\r\n[top-lang]: \u003chttps://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client\u003e\r\n[next-milestone]: \u003chttps://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/discussions/576\u003e\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMelvin-Abraham%2FGoogle-Assistant-Unofficial-Desktop-Client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMelvin-Abraham%2FGoogle-Assistant-Unofficial-Desktop-Client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMelvin-Abraham%2FGoogle-Assistant-Unofficial-Desktop-Client/lists"}