graphql-engine/community/sample-apps/vuetify-vuex-todo-graphql/README.md
Sai Krishna Prasad Kandula d7a52b9342 readme: use cloud signup endpoint for "Deploy to Hasura" CTA
https://github.com/hasura/graphql-engine-mono/pull/2142

GitOrigin-RevId: 212d766978841d5609d726f8359586185f3cbb59
2021-08-19 07:03:05 +00:00

2.3 KiB

vuetify-vuex-todo-graphql

A simple Todo PWA (Progressive Web App) inspired by TodoMVC, Vue.js, Vuex and Vuetify technologies, forked from davidgararo/vuetify-todo-pwa, adding Hasura GraphQL integration

Edit vuetify-vuex-todo-graphql

Tutorial

  • Deploy GraphQL Engine on Hasura Cloud and setup PostgreSQL via Heroku:

    Deploy to Hasura Cloud

  • Get the Hasura app URL (say my-app.hasura.app)

  • Create todos table:

    Open Hasura console: visit https://my-app.hasura.app on a browser
    Navigate to Data section in the top nav bar and create a table as follows:

    Create todos table

  • Clone this repo:

    git clone https://github.com/hasura/graphql-engine
    cd graphql-engine/community/sample-apps/vuetify-vuex-todo-graphql
    
  • Install node modules:

    npm install
    
  • Open src/apollo.js and configure Hasura's GraphQL Endpoint as follows:


import Vue from 'vue'
import VueApollo from 'vue-apollo'
import { ApolloClient } from 'apollo-client'
import { HttpLink } from 'apollo-link-http'
import { InMemoryCache } from 'apollo-cache-inmemory'

const httpLink = new HttpLink({
  // You should use an absolute URL here
  uri: 'https://myapp.hasura.app/v1/graphql'
})

// Create the apollo client
export const apolloClient = new ApolloClient({
  link: httpLink,
  cache: new InMemoryCache(),
  connectToDevTools: true
})

const apolloProvider = new VueApollo({
  defaultClient: apolloClient
})

// Install the vue plugin
Vue.use(VueApollo)

export default apolloProvider

In the httpLink, replace myapp.hasura.app with your own Hasura Project URL of Hasura GraphQL Engine that you deployed above

  • Compile and hot-reload for development
  npm run serve
  • Production Build
  npm run build