⚡️ Minimal GraphQL Client + Code Generation for Nuxt3

Overview
Comments
  • Multiple GraphQL endpoints not working

    Multiple GraphQL endpoints not working

    Hi all,

    Long time reader, first time poster.

    I'm trying to get this to work in my nuxt app with a connection to shopify and a local graphql api but not having much luck so far. Both the Shopify and local API work in postman respectively and i can call various queries in both, but as soon as I add them both in my config like the below:

    runtimeConfig: {
        public: {
          JWT_SECRET: process.env.JWT_SECRET,
          gql: {
            clients: {
              shopify: {
                default: true,
                host: 'https://zzz.myshopify.com/api/2022-07/graphql.json',
                token: {
                  name: 'X-Shopify-Storefront-Access-Token',
                  value: 'zzzz', 
                  type: null 
                },
                retainToken: true
              },
              concord: {
                host: `http://localhost:8080/graphql`,
                value: 'zzzzzzz'
              }          
            }
          }
        }
      }
    

    In queries/shopify/cartCreate.gql along with a few other queries for shopify stuff

    mutation cartCreate {
        cartCreate {
            cart {
                checkoutUrl
                id
            }
            userErrors {
                field
                message
            }
        }
    }
    

    In queries/concord/test.gql folder I just have 1 query

    query concord_test {
      diamondProductsExternal {
        edges {
          node {
            shape
            id
          }
        }
      }
    }
    

    I get this error. Not really sure whats going on here as I can't find anything about PageInfo anywhere. Could it be something cached. Is there a way to clear the build cache or something like that?

    Cannot start nuxt:                                                                                                                                                                                                                                                        16:25:40
            Failed to load schema from https://zzz.myshopify.com/api/2022-07/graphql.json,http://localhost:8080/graphql:
    
            Unable to merge GraphQL type "PageInfo": Field "endCursor" already defined with a different type. Declared as "ConnectionCursor", but you tried to override with "String"
            Error: Unable to merge GraphQL type "PageInfo": Field "endCursor" already defined with a different type. Declared as "ConnectionCursor", but you tried to override with "String"
        at mergeType (file:///D:/zzz/sf/node_modules/@graphql-tools/merge/esm/typedefs-mergers/type.js:23:19)
        at mergeGraphQLNodes (file:///D:/zzz/sf/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-nodes.js:34:49)
        at mergeGraphQLTypes (file:///D:/zzz/sf/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-typedefs.js:63:25)
        at mergeTypeDefs (file:///D:/zzz/sf/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-typedefs.js:10:22)
        at makeExecutableSchema (file:///D:/zzz/sf/node_modules/@graphql-tools/schema/esm/makeExecutableSchema.js:69:32)
        at mergeSchemas (file:///D:/zzz/sf/node_modules/@graphql-tools/schema/esm/merge-schemas.js:29:12)
        at getSchemaFromSources (file:///D:/zzz/sf/node_modules/@graphql-tools/load/esm/schema.js:51:20)
        at loadSchema (file:///D:/zzz/sf/node_modules/@graphql-tools/load/esm/schema.js:16:12)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async loadSchema (file:///D:/zzz/sf/node_modules/@graphql-codegen/cli/esm/load.js:33:24)
    
            GraphQL Code Generator supports:
              - ES Modules and CommonJS exports (export as default or named export "schema")
              - Introspection JSON File
              - URL of GraphQL endpoint
              - Multiple files with type definitions (glob expression)
              - String in config file
    
            Try to use one of above options and run codegen again.
    
    opened by jckraig 20
  • Unable to use the package

    Unable to use the package

    I am getting an error

    ERROR  Cannot start nuxt:  The requested module '@graphql-codegen/plugin-helpers' does not provide an export named 'DetailedError'                                                         12:03:52
    
      import { DetailedError, createNoopProfiler } from '@graphql-codegen/plugin-helpers';
      ^^^^^^^^^^^^^
      SyntaxError: The requested module '@graphql-codegen/plugin-helpers' does not provide an export named 'DetailedError'
      at ModuleJob._instantiate (node:internal/modules/esm/module_job:124:21)
      at async ModuleJob.run (node:internal/modules/esm/module_job:181:5)
      at async Promise.all (index 0)
      at async ESMLoader.import (node:internal/modules/esm/loader:281:24)
      at async normalizeModule (node_modules/@nuxt/kit/dist/index.mjs:476:26)
      at async installModule (node_modules/@nuxt/kit/dist/index.mjs:455:41)
      at async initNuxt (node_modules/nuxt/dist/index.mjs:1606:7)
      at async load (node_modules/nuxi/dist/chunks/dev.mjs:6778:9)
      at async Object.invoke (node_modules/nuxi/dist/chunks/dev.mjs:6828:5)
      at async _main (node_modules/nuxi/dist/cli.mjs:50:20)
    

    I guess it might be because of the recent update to the graphql-code-generator more specifically because of this PR where they have removed the DetailedError

    bug 
    opened by ShreyAmbesh 17
  • Access token & refresh token setup

    Access token & refresh token setup

    I just found the project here and read #3. Now I have the following question/feature request:

    Will the implementation of an access token and a refresh token setup be supported in the future? E.g. if an error message "token expired" comes back, you automatically call a defined query to generate a new access token with its refresh token (HTTP cookie) and then the original query is automatically executed again.

    enhancement 
    opened by TitusKirch 17
  • SSR not passing cookies

    SSR not passing cookies

    Hey!

    This is probably an issue based on my lack of knowledge about Nuxt. But I can't find a way to solve it.

    I have a Nuxt middleware that makes sure that a user is authenticated before allowing them to navigate to certain pages. The authentication is based on sessions, and a cookie needs to be sent with every request to my graphql api.

    This works great in SPA mode: the cookie is passed directly from the browser to the API. However, on initial page load, when the app runs in SSR mode, the cookie is not passed along to the API. This means that if a user logs in and navigates to a restricted page, then refreshes the window, they are redirected to the login screen even though they have a session.

    How can I make sure that the SSR code passes along the cookie?

    Here is the code for the middleware:

    export default defineNuxtRouteMiddleware(async (to, from) => {
      const user = useState("user");
      if (!user.value) {
        try {
          const { data } = await useAsyncGql("userinfo");
          if (data.value.user) {
            user.value = data.value.user;
          } else {
            return navigateTo({
              path: "/login",
              query: {
                reason: "No user info",
              },
            });
          }
        } catch (err) {
          return navigateTo({
            path: "/login",
            query: {
              reason: 'request error',
            },
          });
        }
      }
    });
    

    Thanks in advance.

    bug 
    opened by MrTeapot 14
  • Demo app failing- Failed to load schema for

    Demo app failing- Failed to load schema for "gql-sdk.ts"

    Hi there

    I just saw that the demo with the SpaceX API is failing under: https://stackblitz.com/github/diizzayy/nuxt-graphql-client-demo

    I got the same error in local with the exact same setup.

    opened by colinscz 14
  • Missing server build import files: Cannot find module '#gql/default' or its corresponding type declarations

    Missing server build import files: Cannot find module '#gql/default' or its corresponding type declarations

    Environment

    Describe the bug

    I've upgraded to Nuxt v3 stable and latest version of lib and updated all imports to #gql. Now it can't build

    Works fine in nuxt dev, fails in nuxt build

    Expected behaviour

    Project builds

    Reproduction

    No response

    Additional context

    runtimeConfig: {
            public: {
                'graphql-client': {
                    codegen: {
                        onlyOperationTypes: false,
                    },
                },
            },
        },
    

    Logs

    ℹ Client built in 11342ms
    ℹ Building server...
    ✔ Server built in 8706ms
    ✔ Generated public .output/public
    ℹ Building Nitro Server (preset: node-server)
    src/components/views/catalog/CatalogCardPresentation.vue(27,28): error TS2307: Cannot find module '#gql/default' or its corresponding type declarations.
    
    bug 
    opened by daniluk4000 9
  • Unknown type error

    Unknown type error

    Hi I'm trying to connect with my Keystone JS app. I need to use a mutation to make a login and get the user's token. This is login.gql:

    type Mutation { authenticateUserWithPassword(email: String!, password: String!): UserAuthenticationWithPasswordResult! }

    type Query { authenticatedItem: AuthenticatedItem }

    union AuthenticatedItem = User

    union UserAuthenticationWithPasswordResult = UserAuthenticationWithPasswordSuccess | UserAuthenticationWithPasswordFailure

    type UserAuthenticationWithPasswordSuccess { sessionToken: String! item: User! }

    type UserAuthenticationWithPasswordFailure { message: String! }

    mutation { authenticateUserWithPassword( email: "[email protected]", password: "1234567890" ) { ... on UserAuthenticationWithPasswordSuccess { item { id name email } } ... on UserAuthenticationWithPasswordFailure { message } } }

    I get those error when I run npm run dev: Unknown type "UserAuthenticationWithPasswordSuccess" Unknown type "UserAuthenticationWithPasswordFailure"

    Do I doing something wrong? Thanks

    opened by yalondpsi 9
  • 401 Unauthorized when I query the same url more then once without a page request

    401 Unauthorized when I query the same url more then once without a page request

    I am trying to do call for data from my CMS with the same Token in two different places, a component(Header) and a NuxtPage(Body). One page load, both useAsyncData calls work and the page works as expected. However, if I change the NuxtPage with a NuxtLink, and hence need to fetch new data for that page, I get a '401 Unauthorized' Error from my CMS (datoCMS). I am using the refreshnuxtdata to do that data refresh and it seems like that function is not sending the token?

    This seems like the most relevant code but let me know if you need more information

    const { data } = await useAsyncData("allworkGet", () => GqlLaunches());
    const refresh = () => refreshNuxtData('allworkGet')
    

    Things I tried

    Didn't Work, even though GQL_TOKEN is in .env

    function refreshFunc(){
        const config = useRuntimeConfig();
        console.log('URL:',config.GQL_HOST);
        // logs the URL
        console.log('URL:',config.GQL_TOKEN);
        // logs undefined
        useGqlToken(config.GQL_TOKEN);
        refreshNuxtData('allworkGet');
    }
    
    const refresh = () => refreshFunc()
    

    Did work but seems to be a bad solution to have to add my token by hand

    function refreshFunc(){
    
        useGqlToken('my_tokens_string');
        refreshNuxtData('allworkGet');
    }
    
    
    opened by FWORDIE 9
  • When `nuxt-graphql-client` is defined in `modules`, it throws a TS error on npm run dev when `.nuxt` is removed

    When `nuxt-graphql-client` is defined in `modules`, it throws a TS error on npm run dev when `.nuxt` is removed

    When you remove the .nuxt folder (e.g. with npx nuxi clean) and try to start dev mode, this plugin crashes because it's trying to run TS before the .nuxt folder is generated.

    It looks like this module is running some typescript compilation before the .nuxt folder is generated, and since tsconfig.json depends on a config file in .nuxt, it will fail to run at all:

      error TS5083: Cannot read file '.nuxt/tsconfig.json'.
    
      at createTSError (node_modules/ts-node/src/index.ts:859:12)
      at reportTSError (node_modules/ts-node/src/index.ts:863:19)
      at createFromPreloadedConfig (node_modules/ts-node/src/index.ts:874:36)
      at create (node_modules/ts-node/src/index.ts:624:10)
      at register (node_modules/ts-node/src/index.ts:591:15)
      at TypeScriptLoader (node_modules/cosmiconfig-typescript-loader/dist/cjs/index.js:52:54)
      at node_modules/@graphql-codegen/cli/esm/config.js:16:18
      at ModuleJob.run (node:internal/modules/esm/module_job:198:25)
      at async Promise.all (index 0)
      at async ESMLoader.import (node:internal/modules/esm/loader:385:24)
      at async normalizeModule (node_modules/nuxt/node_modules/@nuxt/kit/dist/index.mjs:476:26)
      at async installModule (node_modules/nuxt/node_modules/@nuxt/kit/dist/index.mjs:455:41)
      at async initNuxt (node_modules/nuxt/dist/index.mjs:1606:7)
      at async load (node_modules/nuxi/dist/chunks/dev.mjs:6778:9)
      at async Object.invoke (node_modules/nuxi/dist/chunks/dev.mjs:6828:5)
      at async _main (node_modules/nuxi/dist/cli.mjs:50:20)
    
    opened by TheDutchCoder 8
  • How to disable generating

    How to disable generating

    Hi, our graphql API does not provide introspection on the main endpoint of graphql host. Is there possibility to disable generating or setup different url to get introspection ?

    opened by mercs600 8
  • Force query documentation

    Force query documentation

    I lack the documentation needed to fire the same query multiple times within a session and it actually making a request to the graphql endpoint each time, instead of only once and the using cached data.

    opened by Pjort 8
  • Remove forced uppercase

    Remove forced uppercase

    Your use case

    My naming scheme is lowercase with an underscore between words, so my GQL query is get_users, and the Nuxt prefix I used is "gql_" so the final form for the front end is gql_Get_users - because of the forced uppercase on the first char of the query.

    The solution you'd like

    I want to be able to edit an option and use lowercase as the first char and use "gql_get_users"

    Possible alternatives

    No response

    Additional information

    No response

    enhancement 
    opened by gkkirilov 0
  • chore(deps-dev): bump vitest from 0.25.8 to 0.26.3

    chore(deps-dev): bump vitest from 0.25.8 to 0.26.3

    Bumps vitest from 0.25.8 to 0.26.3.

    Release notes

    Sourced from vitest's releases.

    v0.26.3

       🚀 Features

       🐞 Bug Fixes

        View changes on GitHub

    v0.26.2

       🚀 Features

       🐞 Bug Fixes

        View changes on GitHub

    v0.26.1

       🚀 Features

       🐞 Bug Fixes

        View changes on GitHub

    v0.26.0

       🚨 Breaking Changes

    • vite-node: Rewrite how vite-node resolves id  -  by @​sheremet-va in vitest-dev/vitest#2463 (58ee8)
    • Correctly interop nested default for external and inlined modules  -  by @​sheremet-va in vitest-dev/vitest#2512 (084e9)
      • If your environment is node, Vitest will not resolve invalid named exports (exports that are on "default" property will not magically appear as named exports), unless deps.interopDefault is enabled, or dependency is in deps.inline. This change doesn't affect jsdom, happy-dom or edge environments.
    • web-worker: Make web-worker implementation more compatible with spec  -  by @​sheremet-va in vitest-dev/vitest#2431 (c3a63)
      • Messages are now cloned with structuredClone, if it's available, or fallbacks to a polyfill.
      • Added support for SharedWorker

    ... (truncated)

    Commits
    • 8d64790 chore: release v0.26.3
    • dba1337 fix(coverage): env-replacer to remove query params from sourcemaps filenames ...
    • 32a577b fix: show list of tests when typechecking (#2585)
    • c479d9c fix: don't hang when mocking module with circular dependency (#2572)
    • 9f41edd fix: start tracking module resolution as soon as possible for easier tracking...
    • ef77dcc fix(api): make api parse error stacks and return sourcePos in onTaskUpdate (#...
    • 853eedd feat(mock): expose a importOriginal helper to the factory (#2551)
    • 07ef0f2 chore: release v0.26.2
    • f6b592a fix(cli): respect inline config dir (#2550)
    • 84f98e7 feat: project name
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps-dev): bump @vitest/coverage-c8 from 0.25.8 to 0.26.3

    chore(deps-dev): bump @vitest/coverage-c8 from 0.25.8 to 0.26.3

    Bumps @vitest/coverage-c8 from 0.25.8 to 0.26.3.

    Release notes

    Sourced from @​vitest/coverage-c8's releases.

    v0.26.3

       🚀 Features

       🐞 Bug Fixes

        View changes on GitHub

    v0.26.2

       🚀 Features

       🐞 Bug Fixes

        View changes on GitHub

    v0.26.1

       🚀 Features

       🐞 Bug Fixes

        View changes on GitHub

    v0.26.0

       🚨 Breaking Changes

    • vite-node: Rewrite how vite-node resolves id  -  by @​sheremet-va in vitest-dev/vitest#2463 (58ee8)
    • Correctly interop nested default for external and inlined modules  -  by @​sheremet-va in vitest-dev/vitest#2512 (084e9)
      • If your environment is node, Vitest will not resolve invalid named exports (exports that are on "default" property will not magically appear as named exports), unless deps.interopDefault is enabled, or dependency is in deps.inline. This change doesn't affect jsdom, happy-dom or edge environments.
    • web-worker: Make web-worker implementation more compatible with spec  -  by @​sheremet-va in vitest-dev/vitest#2431 (c3a63)
      • Messages are now cloned with structuredClone, if it's available, or fallbacks to a polyfill.
      • Added support for SharedWorker

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 0
  • Unhandled rejection when starting nuxt

    Unhandled rejection when starting nuxt

    Environment

    Describe the bug

    When I'm starting up nuxt with nuxt dev I always get thrown the error

     ERROR  [unhandledRejection] First parameter has member 'readable' that is not a ReadableStream.                                                                                     10:46:09
    
      at assertReadableStream (node_modules/ohmyfetch/node_modules/node-fetch-native/dist/shared/node-fetch-native.b703cef9.mjs:428:21)
      at convertReadableWritablePair (node_modules/ohmyfetch/node_modules/node-fetch-native/dist/shared/node-fetch-native.b703cef9.mjs:3505:11)
      at ReadableStream.pipeThrough (node_modules/ohmyfetch/node_modules/node-fetch-native/dist/shared/node-fetch-native.b703cef9.mjs:3580:33)
      at fetchFinale (node_modules/undici/lib/fetch/index.js:976:52)
      at mainFetch (node_modules/undici/lib/fetch/index.js:776:5)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)
    

    Tracing the strack trace it comes from the generate function, when running the graphql codegen.

    const outputFiles = await context.profiler.run(() => executeCodegen(context), "executeCodegen");
    

    This is run with the following config:

    Generate {                                                                                                                   11:09:28
      clients: {
        default: {
          token: [Object],
          proxyCookies: true,
          tokenStorage: [Object],
          preferGETQueries: false,
          host: 'http://localhost:8888/api/graphql'                                                                              11:09:26
        }
      },
      plugins: [
        'typescript',
        'typescript-operations',
        'typescript-graphql-request'
      ],
      documents: [
         // list of my graphql-files
      ],
      resolver: {
        resolve: [Function: resolve],
        resolvePath: [Function: resolvePath]
      },
      clientDocs: {
        default: [
         // list of my graphql-files
        ]
      },
      silent: true,
      skipTypename: true,
      useTypeImports: true,
      dedupeFragments: true,
      disableOnBuild: false,
      onlyOperationTypes: true
    } {
      silent: true,
      generates: {
        'default.ts': {
          config: [Object],
          schema: [Array],
          plugins: [Array],
          documents: [Array]
        }
      }
    }
    
    bug 
    opened by itzaks 0
  • Many warnings when yarn install

    Many warnings when yarn install

    Environment


    • Operating System: Windows_NT
    • Node Version: v19.2.0
    • Nuxt Version: 3.0.0
    • Nitro Version: 1.0.0
    • Package Manager: [email protected]
    • Builder: vite
    • User Config: app, css, alias, runtimeConfig, modules, graphql-client
    • Runtime Modules: @pinia/[email protected], [email protected]
    • Build Modules: -

    Describe the bug

    warning "nuxt-graphql-client > @graphql-codegen/[email protected]" has unmet peer dependency "graphql-tag@^2.0.0". warning "nuxt-graphql-client > @graphql-codegen/cli > [email protected]" has unmet peer dependency "@types/node@". warning "nuxt-graphql-client > @graphql-codegen/cli > [email protected]" has unmet peer dependency "ts-node@>=10". warning "nuxt-graphql-client > @graphql-codegen/cli > [email protected]" has unmet peer dependency "typescript@>=3". warning "nuxt-graphql-client > @graphql-codegen/cli > graphql-config > [email protected]" has unmet peer dependency "@types/node@". warning "nuxt-graphql-client > @graphql-codegen/cli > graphql-config > [email protected]" has unmet peer dependency "typescript@>=3". warning "nuxt-graphql-client > @graphql-codegen/cli > graphql-config > [email protected]" has unmet peer dependency "@types/node@*". warning "nuxt-graphql-client > @graphql-codegen/cli > graphql-config > [email protected]" has unmet peer dependency "typescript@>=2.7". warning "nuxt-graphql-client > @graphql-codegen/cli > @graphql-tools/code-file-loader > @graphql-tools/graphql-tag-pluck > @babel/[email protected]" has unmet peer dependency "@babel/core@^7.0.0-0".

    Expected behaviour

    remove warnings

    Reproduction

    No response

    Additional context

    No response

    Logs

    No response

    bug 
    opened by cdwmhcc 0
  • Support for persisted queries

    Support for persisted queries

    Your use case

    I'd like to implement persisted queries.

    The solution you'd like

    I think this could be achieved by being able to pass along a query id to the server, or even better, some kind of integration with persistgraphql or something like it, as I see that repo is now archived.

    Possible alternatives

    No response

    Additional information

    No response

    enhancement 
    opened by stephiescastle 0
Releases(v0.2.24)
Owner
Conrawl Rogers
The Intricate Developer
Conrawl Rogers
Easily connect your Nuxt3 application to your directus server. 🐰

nuxt-directus Directus Module for Nuxt 3 ✨ Release Notes ?? Read the documentation Features Nuxt3 ready Handle authentication RESTful methods TypeScri

Conner 109 Dec 28, 2022
Create Nuxt3 apps with zero effort.

Create Nuxt3 Create Nuxt3 apps with zero effort. Features Select UI frameworks and install it from list Install extra modules like '@nuxt/content' Ins

Mehmet Ali Külahçı 8 Jul 9, 2022
Minimal, zero-configuration and fast solution for static site generation in any front-end framework.

Staticit - Introduction Whether you want to increase performance of your web application or improve SEO. Generally you have 2 options, use SSR (Server

Engineerhub 4 Jun 11, 2022
🏎 A tiny and fast GraphQL client for Vue.js

villus Villus is a finger-like structures in the small intestine. They help to absorb digested food. A small and fast GraphQL client for Vue.js. This

Abdelrahman Awad 639 Jan 8, 2023
Next generation frontend tooling. It's fast!

Vite ⚡ Next Generation Frontend Tooling ?? Instant Server Start ⚡️ Lightning Fast HMR ??️ Rich Features ?? Optimized Build ?? Universal Plugin Interfa

vite 51.2k Jan 5, 2023
:fire::fire::fire: 强大的动态表单生成器|form-create is a form generation component that can generate dynamic rendering, data collection, verification and submission functions through JSON.

form-create form-create is a form generation component that can generate dynamic rendering, data collection, verification and submission functions thr

xaboy 4.6k Jan 3, 2023
Easy generation of OpenGraph & Twitter meta-tags in Nuxt 3 📋

nuxt-social-tags Easy generation of OpenGraph & Twitter meta-tags in Nuxt 3 ✨ Release Notes ?? Read the documentation Features Nuxt3 ready Composables

Conner 19 Dec 17, 2022
Prefetch and sync state to client with one line of code, out-of-the-box

vue3-SSR-starter Prefetch and sync state to client with one line of code, out-of-the-box Features vue3 SSR vue-router we don't need vuex anymore one l

周子贤 36 Aug 28, 2022
Minimal setup for a WebXR project using Vite, Babylon.js, TypeScript, and Vue

WebXR-Vite-Babylon-Simple Minimal setup for WebXR development using: vite typescript vue 3 babylonjs 5 (ES6) Intentionally made minimal changes from t

Josh Sanderson 6 Nov 13, 2022
Real world app using Fastify-DX, Solid.js, Auth0 and GraphQL

Fastify DX and Solid.js In the Real World These are only the essentials to set up a "real world" application with Fastify DX, Solid.js, Auth0 and Grap

Zentered 6 Nov 14, 2022
A Nuxt.js module that injects a server route to serve the GraphQL Playground

@pin-pon/nuxt-graphql-playground A Nuxt.js module that injects a server route to serve the GraphQL Playground Setup Add @pin-pon/nuxt-graphql-playgrou

Pin-Pon 3 Sep 22, 2022
Obsidian plugin to add keyboard shortcuts commonly found in code editors such as Visual Studio Code or Sublime Text

Code Editor Shortcuts This Obsidian plugin adds keyboard shortcuts (hotkeys) commonly found in code editors such as Visual Studio Code or Sublime Text

Tim Hor 143 Dec 30, 2022
The HTTP client for Vue.js

vue-resource The plugin for Vue.js provides services for making web requests and handle responses using a XMLHttpRequest or JSONP. Features Supports t

Pagekit 10.1k Dec 30, 2022
A Vale client for Obsidian.

Obsidian Vale A Vale client for Obsidian. Prerequisites Vale Server or Vale CLI Configuration To install Vale CLI: Go to their release page. Under Ass

Marcus Olsson 76 Dec 30, 2022
A client for QQ and more.:electron:

Icalingua++ Icalingua++ 是 Icalingua 的分支,為已經刪除的 Icalingua 提供有限的更新,同時歡迎社區提交PR。 Icalingua 这个名字是日语中「光」和拉丁语中「语言」的组合。 本项目希望为 Linux 打造一个会话前端框架,通过实现 Adapter 后

Icalingua++ 2.6k Dec 31, 2022
Restream is a module that allows you to create a stream of an audio/video file from the Firebase storage, protected from direct download through the client-side.

nuxt-restream Restream is a module that allows you to create a stream of an audio/video file from the Firebase storage, protected from direct download

Restorm 3 Dec 13, 2022
Nuxt eureka client

Nuxt eureka client

Kirill 5 May 30, 2022
Remove all client-side JS from your Nuxt 3 app

Nuxt Zero JS Remove all client-side JS from your Nuxt 3 app ✨ Changelog ▶️ Online playground Features ⚠️ nuxt-zero-js is under active development. ⚠️

Daniel Roe 163 Jan 3, 2023
A swiss army knife with lots of tools, extensions and (scriptable) enhancements for Visual Studio Code.

vscode-powertools A swiss army knife with lots of tools, extensions and (scriptable) enhancements for Visual Studio Code. ⚠️ ⚠️ ⚠️ NOTICE: If you have

e.GO Mobile 44 Nov 24, 2022