Get App Configuration settings in Theme extension App embed block

Topic summary

Goal: Access configuration settings (stored in Prisma by store_id) inside a Theme App Extension’s App Embed Block JavaScript in a Shopify Remix app.

Solution adopted: Build a server route and expose data via Shopify App Proxy.

  • Create a Remix route and in its Loader function query Prisma for the needed settings, returning JSON.
  • Configure an App Proxy URL in the Shopify Partners dashboard (App settings > App proxy), defining subpath prefix/subpath.
  • From the App Embed Block’s frontend JS, fetch the JSON using the proxy URL: {proxy_url + subpath_prefix + subpath + your_route}.

Key terms:

  • App Embed Block: Theme App Extension block injected into a theme.
  • Remix Loader: Server-side data loader for a route that returns data (e.g., JSON).
  • App Proxy URL: Shopify mechanism that proxies storefront requests to your app backend under the store’s domain.

Status/outcome: Original poster implemented this approach and confirmed it works. Another user requested clarification; detailed steps were provided. No unresolved issues or disagreements reported.

Summarized with AI on December 27. AI used: gpt-5.

I created an Remix app in typescript and create theme app extension using shopify CLI. Theme app extension is for “App Embed Block”

I created a app settings form with some fields and save them in the prisma database according to store_id.

Now I want all the settings value in my “App Embed Block” javascript file.

Please let me know how I’ll achieve this in Shopify Remix App.

Hello @riteshZrix

Could you please provide more details on your requirements? Are you looking to obtain the schema settings for an App Embed Block in a JavaScript file, or is there something else you need?

I found the solution. By creating an api and call that api on frontend.

Thanks

Hey I’m in a similar position where I’d like to grab some settings from the prisma database. Could you walkthrough/explain a bit more how you created the api and were able to call it on the frontend?

Hi @eaugustin2

You just need to create an route and in that route Loader function load all values you want from prima database and return a json with all values and then create a proxy url for your app (Go to the partners dashboard and in your app configuration tab set proxy url) then fetch your route in which you load the values from prisma in the frontend js file using the proxy url. {proxy_url + subpath_prefix+ subpath + your route}

Thanks

Ritesh

Hello @riteshZrix ,

Thank you so much for responding and breaking this down! I’ll go try that!

Cheers!