Skip to content

Conversation

@Syrex-o
Copy link
Contributor

@Syrex-o Syrex-o commented Nov 15, 2025

This pull request adds support for Shopify Customer Account as a new OAuth provider. The main changes include updating configuration files, extending the provider list, implementing the OAuth handler, and integrating the provider into the playground app.

Shopify Customer Account API Integration:

  • Added new environment variables for Shopify Customer Account API configuration in .env.example to support shop domain, client id and redirect URL.
  • Extended the runtime OAuth configuration in src/module.ts to include Shopify Customer Account API settings such as shopDomain, clientId, redirectURL and scope
  • Implemented the Shopify Customer Account OAuth handler in src/runtime/server/lib/oauth/shopifyCustomer.ts, supporting OIDC code flow with PKCE, endpoint construction, state validation, and user info retrieval.
  • Added a new route handler for Shopify Customer Account API authentication in playground/server/routes/auth/shopifyCustomer.get.ts, which sets the user session and redirects on success.
  • Updated the OAuth provider list in src/runtime/types/oauth-config.ts to include 'shopifyCustomer' as a valid provider type.

Playground App Integration:

  • Added Shopify Customer as a selectable provider in the playground app UI (playground/app.vue).

Additional Infos:
Shopify doesn´t allow localhost development. I had a lot of problems with the free tier of ngrok with cookie management.
Therefore I used zrok, which worked very well.

@Syrex-o
Copy link
Contributor Author

Syrex-o commented Nov 19, 2025

@atinux Do you consider merging this PR?
Is there something missing?

@atinux
Copy link
Owner

atinux commented Dec 9, 2025

Sorry it took so long @Syrex-o

And thank you for this great PR!

@pkg-pr-new
Copy link

pkg-pr-new bot commented Dec 9, 2025

Open in StackBlitz

npm i https://pkg.pr.new/atinux/nuxt-auth-utils@470

commit: 36118b7

@atinux atinux merged commit cc97f7d into atinux:main Dec 9, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants