├── .env ├── .gitignore ├── .prettierrc ├── ADDITIONS.md ├── BLOGPOST.md ├── BLOGPOST.original.md ├── Dockerfile ├── NOTES.md ├── blogpost-images ├── jwt-blogpost-1-login.png ├── jwt-blogpost-2-check-token-flow.png ├── jwt-blogpost-3-check-token-flow-serverside.png ├── jwt-blogpost-4-login-refresh-flow.png ├── jwt-blogpost-5-silent-refresh.png ├── jwt-blogpost-6-ssr1.png └── jwt-blogpost-7-ssr2.png ├── components └── field.tsx ├── docker-compose.yaml ├── hasura ├── config.yaml ├── metadata │ ├── actions.graphql │ ├── actions.yaml │ ├── allow_list.yaml │ ├── cron_triggers.yaml │ ├── databases │ │ ├── databases.yaml │ │ └── default │ │ │ └── tables │ │ │ ├── public_user.yaml │ │ │ └── tables.yaml │ ├── query_collections.yaml │ ├── remote_schemas.yaml │ ├── rest_endpoints.yaml │ └── version.yaml └── migrations │ └── default │ ├── 1640121966256_create_table_public_user │ ├── down.sql │ └── up.sql │ └── 1640560818048_alter_table_public_user_add_column_refresh_token_expires_at │ ├── down.sql │ └── up.sql ├── lib ├── apollo-client.ts ├── apollo-token-refresh-link.ts ├── auth.ts ├── form.ts ├── jwt.ts ├── setFingerprintCookieAndSignJwt.ts └── user.ts ├── next-env.d.ts ├── package.json ├── pages ├── _app.tsx ├── about.tsx ├── api │ └── actions │ │ ├── login.ts │ │ ├── refresh-jwt.ts │ │ ├── signout.ts │ │ └── signup.ts ├── index.tsx ├── signin.tsx ├── signout.tsx └── signup.tsx ├── tsconfig.json └── yarn.lock /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/.env -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/.prettierrc -------------------------------------------------------------------------------- /ADDITIONS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/ADDITIONS.md -------------------------------------------------------------------------------- /BLOGPOST.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/BLOGPOST.md -------------------------------------------------------------------------------- /BLOGPOST.original.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/BLOGPOST.original.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/Dockerfile -------------------------------------------------------------------------------- /NOTES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/NOTES.md -------------------------------------------------------------------------------- /blogpost-images/jwt-blogpost-1-login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/blogpost-images/jwt-blogpost-1-login.png -------------------------------------------------------------------------------- /blogpost-images/jwt-blogpost-2-check-token-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/blogpost-images/jwt-blogpost-2-check-token-flow.png -------------------------------------------------------------------------------- /blogpost-images/jwt-blogpost-3-check-token-flow-serverside.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/blogpost-images/jwt-blogpost-3-check-token-flow-serverside.png -------------------------------------------------------------------------------- /blogpost-images/jwt-blogpost-4-login-refresh-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/blogpost-images/jwt-blogpost-4-login-refresh-flow.png -------------------------------------------------------------------------------- /blogpost-images/jwt-blogpost-5-silent-refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/blogpost-images/jwt-blogpost-5-silent-refresh.png -------------------------------------------------------------------------------- /blogpost-images/jwt-blogpost-6-ssr1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/blogpost-images/jwt-blogpost-6-ssr1.png -------------------------------------------------------------------------------- /blogpost-images/jwt-blogpost-7-ssr2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/blogpost-images/jwt-blogpost-7-ssr2.png -------------------------------------------------------------------------------- /components/field.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/components/field.tsx -------------------------------------------------------------------------------- /docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/docker-compose.yaml -------------------------------------------------------------------------------- /hasura/config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/config.yaml -------------------------------------------------------------------------------- /hasura/metadata/actions.graphql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/metadata/actions.graphql -------------------------------------------------------------------------------- /hasura/metadata/actions.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/metadata/actions.yaml -------------------------------------------------------------------------------- /hasura/metadata/allow_list.yaml: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /hasura/metadata/cron_triggers.yaml: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /hasura/metadata/databases/databases.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/metadata/databases/databases.yaml -------------------------------------------------------------------------------- /hasura/metadata/databases/default/tables/public_user.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/metadata/databases/default/tables/public_user.yaml -------------------------------------------------------------------------------- /hasura/metadata/databases/default/tables/tables.yaml: -------------------------------------------------------------------------------- 1 | - "!include public_user.yaml" 2 | -------------------------------------------------------------------------------- /hasura/metadata/query_collections.yaml: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /hasura/metadata/remote_schemas.yaml: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /hasura/metadata/rest_endpoints.yaml: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /hasura/metadata/version.yaml: -------------------------------------------------------------------------------- 1 | version: 3 2 | -------------------------------------------------------------------------------- /hasura/migrations/default/1640121966256_create_table_public_user/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE "public"."user"; 2 | -------------------------------------------------------------------------------- /hasura/migrations/default/1640121966256_create_table_public_user/up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/migrations/default/1640121966256_create_table_public_user/up.sql -------------------------------------------------------------------------------- /hasura/migrations/default/1640560818048_alter_table_public_user_add_column_refresh_token_expires_at/down.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/migrations/default/1640560818048_alter_table_public_user_add_column_refresh_token_expires_at/down.sql -------------------------------------------------------------------------------- /hasura/migrations/default/1640560818048_alter_table_public_user_add_column_refresh_token_expires_at/up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/hasura/migrations/default/1640560818048_alter_table_public_user_add_column_refresh_token_expires_at/up.sql -------------------------------------------------------------------------------- /lib/apollo-client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/lib/apollo-client.ts -------------------------------------------------------------------------------- /lib/apollo-token-refresh-link.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/lib/apollo-token-refresh-link.ts -------------------------------------------------------------------------------- /lib/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/lib/auth.ts -------------------------------------------------------------------------------- /lib/form.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/lib/form.ts -------------------------------------------------------------------------------- /lib/jwt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/lib/jwt.ts -------------------------------------------------------------------------------- /lib/setFingerprintCookieAndSignJwt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/lib/setFingerprintCookieAndSignJwt.ts -------------------------------------------------------------------------------- /lib/user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/lib/user.ts -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/next-env.d.ts -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/package.json -------------------------------------------------------------------------------- /pages/_app.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/_app.tsx -------------------------------------------------------------------------------- /pages/about.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/about.tsx -------------------------------------------------------------------------------- /pages/api/actions/login.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/api/actions/login.ts -------------------------------------------------------------------------------- /pages/api/actions/refresh-jwt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/api/actions/refresh-jwt.ts -------------------------------------------------------------------------------- /pages/api/actions/signout.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/api/actions/signout.ts -------------------------------------------------------------------------------- /pages/api/actions/signup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/api/actions/signup.ts -------------------------------------------------------------------------------- /pages/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/index.tsx -------------------------------------------------------------------------------- /pages/signin.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/signin.tsx -------------------------------------------------------------------------------- /pages/signout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/signout.tsx -------------------------------------------------------------------------------- /pages/signup.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/pages/signup.tsx -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hasura/jwt-guide/HEAD/yarn.lock --------------------------------------------------------------------------------