{"id":22382595,"url":"https://github.com/wavezync/vue3-google-signin","last_synced_at":"2025-05-15T18:11:05.031Z","repository":{"id":42647510,"uuid":"489957855","full_name":"wavezync/vue3-google-signin","owner":"wavezync","description":"Google OAuth2 plugin for Vue3 Apps. This uses latest Google Identity Service Library. It also provides set of composables which can be used easily to implement different authentication strategies","archived":false,"fork":false,"pushed_at":"2025-04-04T14:49:20.000Z","size":1210,"stargazers_count":171,"open_issues_count":12,"forks_count":18,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-08T00:35:31.920Z","etag":null,"topics":["composition-api","google-3p","google-auth","google-authentication","google-identity-services","google-oauth2","google-sign-in","typescript","vue","vue-gsi","vue3","vue3-google-signin","vue3-gsi","vue3-typescript","vuejs"],"latest_commit_sha":null,"homepage":"https://vue3-google-signin.wavezync.com/","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/wavezync.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2022-05-08T13:54:40.000Z","updated_at":"2025-03-13T14:05:39.000Z","dependencies_parsed_at":"2024-06-18T16:54:16.407Z","dependency_job_id":"ac85033d-74d8-44cd-b448-5f436c50c1a1","html_url":"https://github.com/wavezync/vue3-google-signin","commit_stats":null,"previous_names":["kasvith/vue3-google-signin","wavezync/vue3-google-signin"],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavezync%2Fvue3-google-signin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavezync%2Fvue3-google-signin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavezync%2Fvue3-google-signin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavezync%2Fvue3-google-signin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wavezync","download_url":"https://codeload.github.com/wavezync/vue3-google-signin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254394724,"owners_count":22063984,"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":["composition-api","google-3p","google-auth","google-authentication","google-identity-services","google-oauth2","google-sign-in","typescript","vue","vue-gsi","vue3","vue3-google-signin","vue3-gsi","vue3-typescript","vuejs"],"created_at":"2024-12-05T00:13:34.175Z","updated_at":"2025-05-15T18:11:05.011Z","avatar_url":"https://github.com/wavezync.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vue3 Google Sign-in\n\n[![Build](https://github.com/wavezync/vue3-google-signin/actions/workflows/build.yaml/badge.svg)](https://github.com/wavezync/vue3-google-signin/actions/workflows/build.yaml) [![npm](https://img.shields.io/npm/v/vue3-google-signin)](https://www.npmjs.com/package/vue3-google-signin) ![npm bundle size](https://img.shields.io/bundlephobia/minzip/vue3-google-signin) ![npm](https://img.shields.io/npm/dw/vue3-google-signin) ![NPM](https://img.shields.io/npm/l/vue3-google-signin) [![Docs](https://img.shields.io/badge/docs-Read%20Now-green)](https://vue3-google-signin.wavezync.com/)\n\nUse Google Identity Services with your Vue3 App easily\n\n## Documentation\n\nFull documentation can be accessed [here](https://vue3-google-signin.wavezync.com/)\n\n## Installation\n\n- With **NPM**\n\n```bash\nnpm install -S vue3-google-signin\n```\n\n- With **Yarn**\n\n```bash\nyarn add vue3-google-signin\n```\n\n- With **PNPM**\n\n```bash\npnpm add vue3-google-signin\n```\n\n## Setup the Library\n\nSetting up the library is very simple. In your application entry point(`main.js` or `main.ts`)\nput the following code.\n\n```js\n// rest of the code\n\nimport GoogleSignInPlugin from \"vue3-google-signin\"\n\napp.use(GoogleSignInPlugin, {\n  clientId: 'CLIENT ID OBTAINED FROM GOOGLE API CONSOLE',\n});\n\n// other config\n\napp.mount(\"#app\");\n```\n\n## With Nuxt\n\nTo easily use the library with **Nuxt3** we have provided a module called [nuxt-vue3-google-signin](https://github.com/wavezync/nuxt-vue3-google-signin) which take care of proper component registration and plugin initialization :fire:.\n\n### Add package\n\n- With **NPM**\n\n```bash\nnpm install -S nuxt-vue3-google-signin\n```\n\n- With **Yarn**\n\n```bash\nyarn add nuxt-vue3-google-signin\n```\n\n- With **PNPM**\n\n```bash\npnpm add nuxt-vue3-google-signin\n```\n\n### Initialize\n\nNow you can add following entry to the `nuxt.config.ts`(or `nuxt.config.js`)\n\n```ts\nimport { defineNuxtConfig } from 'nuxt/config'\n\nexport default defineNuxtConfig({\n  modules: [\n    'nuxt-vue3-google-signin'\n  ],\n  googleSignIn: {\n    clientId: 'CLIENT ID OBTAINED FROM GOOGLE API CONSOLE',\n  }\n})\n```\n\n## Development\n\n### Recommended IDE Setup\n\n[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.vscode-typescript-vue-plugin).\n\n### Type Support for `.vue` Imports in TS\n\nTypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types.\n\nIf the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps:\n\n1. Disable the built-in TypeScript Extension\n    1) Run `Extensions: Show Built-in Extensions` from VSCode's command palette\n    2) Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`\n2. Reload the VSCode window by running `Developer: Reload Window` from the command palette.\n\n### Customize configuration\n\nSee [Vite Configuration Reference](https://vitejs.dev/config/).\n\n### Project Setup\n\n```sh\nnpm install\n```\n\n### Compile and Hot-Reload for Development\n\n```sh\nnpm run dev\n```\n\n### Type-Check, Compile and Minify for Production\n\n```sh\nnpm run build\n```\n\n### Lint with [ESLint](https://eslint.org/)\n\n```sh\nnpm run lint\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwavezync%2Fvue3-google-signin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwavezync%2Fvue3-google-signin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwavezync%2Fvue3-google-signin/lists"}