Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/melvin-abraham/google-assistant-unofficial-desktop-client
A cross-platform unofficial Google Assistant Client for Desktop (powered by Google Assistant SDK)
https://github.com/melvin-abraham/google-assistant-unofficial-desktop-client
cross-platform desktop-app desktop-assistant electron electron-app g-assist gassist gaudc google-assistant google-assistant-sdk linux macos virtual-assistant windows
Last synced: 27 days ago
JSON representation
A cross-platform unofficial Google Assistant Client for Desktop (powered by Google Assistant SDK)
- Host: GitHub
- URL: https://github.com/melvin-abraham/google-assistant-unofficial-desktop-client
- Owner: Melvin-Abraham
- License: apache-2.0
- Created: 2020-01-12T20:40:54.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-01-25T20:33:42.000Z (10 months ago)
- Last Synced: 2024-10-09T14:01:55.630Z (27 days ago)
- Topics: cross-platform, desktop-app, desktop-assistant, electron, electron-app, g-assist, gassist, gaudc, google-assistant, google-assistant-sdk, linux, macos, virtual-assistant, windows
- Language: JavaScript
- Homepage:
- Size: 6.13 MB
- Stars: 3,595
- Watchers: 77
- Forks: 403
- Open Issues: 350
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Google Assistant Unofficial Desktop Client
[![Build](https://img.shields.io/github/actions/workflow/status/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/main.yml?branch=master&logo=github&style=for-the-badge)][build]
[![Downloads](https://img.shields.io/github/downloads/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/total.svg?logo=github&style=for-the-badge)][downloads]
[![Issues](https://img.shields.io/github/issues/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?logo=github&style=for-the-badge)][issues]
[![License](https://img.shields.io/github/license/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?style=for-the-badge&color=blue)][license]
[![Top Language](https://img.shields.io/github/languages/top/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?style=for-the-badge&color=yellow)][top-lang]
[![Last Commit](https://img.shields.io/github/last-commit/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client.svg?style=for-the-badge)][commits]
[![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]
[![Milestone v2.0.0](https://img.shields.io/badge/Milestone%20v2.0.0-Next-blueviolet?style=for-the-badge)][next-milestone]![G Assist Banner](images/Banner.png)
Google Assistant Unofficial Desktop Client is a cross-platform desktop client for Google Assistant based on **Google Assistant SDK**.
> Note:
> ---
>
> 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_.## Inspiration
The design is inspired by Google Assistant in Chrome OS and comes in both Light Mode _(beta)_ and Dark Mode ๐.
![G Assist Screenshot](images/Assistant_light_dark.jpg)
## Download
You 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.
### Windows (using `winget`)
> If you are on **Windows 11**, chances are you have `winget` pre-installed.
> If you are on older version of Windows (Windows 10) and don't have it installed, check out
> [Install Winget](https://docs.microsoft.com/en-us/windows/package-manager/winget/#install-winget)
> documentation section to learn how to install it.#### โก Stable versions:
```powershell
PS> winget install "g-assist" -e
```#### ๐งช Preview Versions (Pre-release versions):
```powershell
PS> winget install "g-assist-preview" -e
```### MacOS (using `brew`)
> Visit [brew.sh](https://brew.sh/) to learn how to install `brew` if you don't have it
> installed on your machine.```console
$ brew install --cask google-assistant
```### Linux (using `snap`)
> Some linux distros like Ubuntu, KDE Neon, Manjaro, Zorin OS, etc. come pre-installed with
> `snap`. For distros without out-of-the-box support for snaps, visit [Installing snapd](https://snapcraft.io/docs/installing-snapd)
> documentation page.Manually download from the Snapstore:
[![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/g-assist)
#### โก Stable versions:
```console
$ sudo snap install g-assist
```#### ๐งช Preview versions (Pre-release versions):
If you want to install release candidates:
```console
$ sudo snap install g-assist --candidate
```If you want to install beta versions:
```console
$ sudo snap install g-assist --beta
```## Getting Started
In 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.
"*Setup Authentication for Google Assistant Unofficial Desktop Client*" Wiki (For both **Device Registration** & **Authentication** help):
> https://github.com/Melvin-Abraham/Google-Assistant-Unofficial-Desktop-Client/wiki/Setup-Authentication-for-Google-Assistant-Unofficial-Desktop-Client#### Other References
If you want a user friendly registration method, use **Device Registration** UI:
> https://developers.google.com/assistant/sdk/guides/library/python/embed/config-dev-project-and-accountIf you want to use a CLI tool to complete the **Device Registration** and **Authentication** process manually, read the following:
> https://developers.google.com/assistant/sdk/reference/device-registration/register-device-manualAfter 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.
## Want to Contribute?
You are more than welcome to contribute to all kinds of contributions:
* ๐ค Request/Suggest a feature
* ๐ Report a bug
* ๐ Make this documentation better
* ๐ป Contribute with the codeBefore you start, we highly recommend you check the Google Assistant Unofficial Desktop Client's [contributing guidelines](./CONTRIBUTING.md).
## Default Keyboard Shortcut
* **Windows:** Win + Shift + A
* **MacOS:** Cmd + Shift + A
* **Linux:** Super + Shift + A**Note:** Keyboard shortcut is configurable in the settings
## Other Libraries Used
* **p5.js:**
* For visualization purpose when the user speaks through mic.
* Link: https://p5js.org/* **aud_player.js:**
* For playing audio through speakers.
* Link: https://github.com/ItsWendell/google-assistant-desktop-client/blob/develop/src/renderer/providers/assistant/player.js* **microphone.js:**
* For recording audio using Web API.
* Link: https://github.com/ItsWendell/google-assistant-desktop-client/blob/develop/src/renderer/providers/assistant/microphone.js* **google-assistant:**
* Node.js implementation of the Google Assistant SDK
* Link: https://github.com/endoplasmic/google-assistant* **bumblebee-hotword:**
* A minimalist hotword / wake word for the web, based on Porcupine
* Link: https://github.com/jaxcore/bumblebee-hotword[downloads]:
[issues]:
[build]:
[license]:
[commits]:
[top-lang]:
[next-milestone]: