Run Shopify App Dev and my test app does not display properly

I’m looking for help here, thanks
Let me first talk about my development environment. I am in mainland China, using Windows, using Clash network proxy, and the shopify cli version is @shopify/cli/3.78.2 win32-x64 node-v22.13.0

Recently I planned to learn to develop Shopify apps. Everything went well until I ran the command shopify app dev in PowerSheel.


I checked the documentation in the link and tried two different ways to run shopify app dev, using Localhost-based development and ngrok tunnel, but both methods ended up with the same problem.
As shown in the picture below, they only show one line of text, “Handling response

I tried many methods, including shopify cache clear and switch clash proxy, but none of them worked
Here is what PowerShell prints when using --verbose and ngrok

20:40:38 │                     remix │ [shopify-app/INFO] Authenticating admin request | {shop: quick-start-18339131.myshopify.com}
20:40:38 │                     remix │ [shopify-app/DEBUG] Attempting to authenticate session token | {shop: quick-start-18339131.myshopify.com, sessionToken:
{"header":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczpcL1wvcXVpY2stc3RhcnQtMTgzMzkxMzEubXlzaG9waWZ5LmNvbVwvYWRtaW4iLCJkZXN0IjoiaHR0cHM6XC9cL3F1aWNrLXN0YXJ0LTE4MzM5MTMxLm15c2hvcGlmeS5jb20iLCJhdWQiOiJjYmE5ZDU2YjY2ZWM0N2FkNDdkMzFiNjcxODFlNmVjMSIsInN1YiI6Ijk3NDU2NzE4MTEzIiwiZXhwIjoxNzQ2MTg5Njk4LCJuYmYiOjE3NDYxODk2MzgsImlhdCI6MTc0NjE4OTYzOCwianRpIjoiY
jExNDJhNDAtMTk5MC00ZGYxLWJkNmMtNjFkZTdhNmU3OTUzIiwic2lkIjoiY2M5OTM1ZjAtNzU2NS00NmFlLTlhN2UtZGNkYzM3MzE3N2IxIiwic2lnIjoiNzIxZWRjY2RlOTBkZWUzYTg0NDI2NmIyZGI3NGEwN2E2Yzk2NjA3YzMyYWQxMjhkZDY2OGUzZjE4YmY5NmI0NSJ9.oTi6otJvK_34Dbwd2XbZFA1MCHufPMXQmP8JRmo5as8","search":null}}
20:40:38 │                     remix │ [shopify-app/DEBUG] Validating session token | {shop: quick-start-18339131.myshopify.com}
20:40:38 │                     remix │ [shopify-app/INFO] Authenticating admin request | {shop: quick-start-18339131.myshopify.com}
20:40:38 │                     remix │ [shopify-app/DEBUG] Attempting to authenticate session token | {shop: quick-start-18339131.myshopify.com, sessionToken:
{"header":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczpcL1wvcXVpY2stc3RhcnQtMTgzMzkxMzEubXlzaG9waWZ5LmNvbVwvYWRtaW4iLCJkZXN0IjoiaHR0cHM6XC9cL3F1aWNrLXN0YXJ0LTE4MzM5MTMxLm15c2hvcGlmeS5jb20iLCJhdWQiOiJjYmE5ZDU2YjY2ZWM0N2FkNDdkMzFiNjcxODFlNmVjMSIsInN1YiI6Ijk3NDU2NzE4MTEzIiwiZXhwIjoxNzQ2MTg5Njk4LCJuYmYiOjE3NDYxODk2MzgsImlhdCI6MTc0NjE4OTYzOCwianRpIjoiY
jExNDJhNDAtMTk5MC00ZGYxLWJkNmMtNjFkZTdhNmU3OTUzIiwic2lkIjoiY2M5OTM1ZjAtNzU2NS00NmFlLTlhN2UtZGNkYzM3MzE3N2IxIiwic2lnIjoiNzIxZWRjY2RlOTBkZWUzYTg0NDI2NmIyZGI3NGEwN2E2Yzk2NjA3YzMyYWQxMjhkZDY2OGUzZjE4YmY5NmI0NSJ9.oTi6otJvK_34Dbwd2XbZFA1MCHufPMXQmP8JRmo5as8","search":null}}
20:40:38 │                     remix │ [shopify-app/DEBUG] Validating session token | {shop: quick-start-18339131.myshopify.com}
20:40:38 │                     remix │ [shopify-app/DEBUG] Session token is valid - validated | {shop: quick-start-18339131.myshopify.com, payload: {"iss":"https://quick-start-18339131.myshopify.com/admin","dest":"https://quick-start-18339131.myshopify.com","aud":"cba9d56b66ec47ad47d31b67181e6ec1","sub":"97456718113","exp":1746189698,"nbf":1746189638,"iat":17
46189638,"jti":"b1142a40-1990-4df1-bd6c-61de7a6e7953","sid":"cc9935f0-7565-46ae-9a7e-dcdc373177b1","sig":"721edccde90dee3a844266b2db74a07a6c96607c32ad128dd668e3f18bf96b45"}}
20:40:38 │                     remix │ [shopify-app/DEBUG] Session token is valid - validated | {shop: quick-start-18339131.myshopify.com, payload: {"iss":"https://quick-start-18339131.myshopify.com/admin","dest":"https://quick-start-18339131.myshopify.com","aud":"cba9d56b66ec47ad47d31b67181e6ec1","sub":"97456718113","exp":1746189698,"nbf":1746189638,"iat":17
46189638,"jti":"b1142a40-1990-4df1-bd6c-61de7a6e7953","sid":"cc9935f0-7565-46ae-9a7e-dcdc373177b1","sig":"721edccde90dee3a844266b2db74a07a6c96607c32ad128dd668e3f18bf96b45"}}
20:40:38 │                     remix │ [shopify-app/DEBUG] Session token is valid - authenticated | {shop: quick-start-18339131.myshopify.com, payload: [object Object]}
20:40:38 │                     remix │ [shopify-app/DEBUG] Session token is valid - authenticated | {shop: quick-start-18339131.myshopify.com, payload: [object Object]}
20:40:38 │                     remix │ [shopify-app/DEBUG] Loading session from storage | {shop: quick-start-18339131.myshopify.com, sessionId: offline_quick-start-18339131.myshopify.com}
20:40:38 │                     remix │ [shopify-app/DEBUG] Loading session from storage | {shop: quick-start-18339131.myshopify.com, sessionId: offline_quick-start-18339131.myshopify.com}
20:40:38 │                     remix │ 2025-05-02T12:40:38.420Z vite-tsconfig-paths:resolve resolving: {
20:40:38 │                     remix │   id: 'react/jsx-dev-runtime',
20:40:38 │                     remix │   importer: 'C:\\Users\\hy\\Desktop\\project\\App\\test-app\\index.html'
20:40:38 │                     remix │ }
20:40:38 │                     remix │ 2025-05-02T12:40:38.420Z vite-tsconfig-paths:resolve importer has unsupported extension. skipping...
20:40:38 │                     remix │ 2025-05-02T12:40:38.420Z vite-tsconfig-paths:resolve resolving: {
20:40:38 │                     remix │   id: '@remix-run/react',
20:40:38 │                     remix │   importer: 'C:\\Users\\hy\\Desktop\\project\\App\\test-app\\index.html'
20:40:38 │                     remix │ }

The following is the PowerShell output when using ngrok only

20:45:10 │                     remix │ Running pre-dev command: "npx prisma generate"
20:45:10 │                  graphiql │ GraphiQL server started on port 3457
20:45:10 │                     proxy │ Proxy server started on port 3000
20:45:12 │                     remix │ Warning: You did not specify an output path for your `generator` in schema.prisma. This behavior is deprecated and will no longer be supported in Prisma 7.0.0. To learn more visit https://pris.ly/cli/output-path
20:45:13 │                     remix │ Environment variables loaded from .env
20:45:13 │                     remix │ Prisma schema loaded from prisma\schema.prisma
20:45:13 │                     remix │ Datasource "db": SQLite database "dev.sqlite" at "file:dev.sqlite"
20:45:14 │                     remix │
20:45:14 │                     remix │ 1 migration found in prisma/migrations
20:45:14 │                     remix │
20:45:14 │                     remix │
20:45:14 │                     remix │ No pending migrations to apply.
20:45:16 │                     remix │   ➜  Local:   http://localhost:63109/
20:45:17 │                     remix │   ➜  Network: use --host to expose
20:46:26 │                     remix │ [shopify-api/INFO] version 11.12.0, environment Remix
20:46:29 │                     remix │ [shopify-app/INFO] Authenticating admin request | {shop: quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/DEBUG] Attempting to authenticate session token | {shop: quick-start-18339131.myshopify.com, sessionToken:
{"search":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczpcL1wvcXVpY2stc3RhcnQtMTgzMzkxMzEubXlzaG9waWZ5LmNvbVwvYWRtaW4iLCJkZXN0IjoiaHR0cHM6XC9cL3F1aWNrLXN0YXJ0LTE4MzM5MTMxLm15c2hvcGlmeS5jb20iLCJhdWQiOiJjYmE5ZDU2YjY2ZWM0N2FkNDdkMzFiNjcxODFlNmVjMSIsInN1YiI6Ijk3NDU2NzE4MTEzIiwiZXhwIjoxNzQ2MTkwMDQ1LCJuYmYiOjE3NDYxODk5ODUsImlhdCI6MTc0NjE4OTk4NSwianRpIjoiO
WVlMTg1ZmMtMGJmMS00ZjU0LTk2YmYtYjI1YWM2MTNjMWYyIiwic2lkIjoiY2M5OTM1ZjAtNzU2NS00NmFlLTlhN2UtZGNkYzM3MzE3N2IxIiwic2lnIjoiYWZhMzU5YmYzMWU5N2MwZmYzOGMzZmJiYTU0YTFiMzVmZmMzYTk3MzViNzZiOGE0M2U3NTgyOWI0MTUyZmM3YyJ9.UPA3yF7Xhi4X2XVwEhc4x-KPWrksSB0cKFJbfrR8eKY"}}
20:46:29 │                     remix │ [shopify-app/DEBUG] Validating session token | {shop: quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/INFO] Authenticating admin request | {shop: quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/DEBUG] Attempting to authenticate session token | {shop: quick-start-18339131.myshopify.com, sessionToken:
{"search":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczpcL1wvcXVpY2stc3RhcnQtMTgzMzkxMzEubXlzaG9waWZ5LmNvbVwvYWRtaW4iLCJkZXN0IjoiaHR0cHM6XC9cL3F1aWNrLXN0YXJ0LTE4MzM5MTMxLm15c2hvcGlmeS5jb20iLCJhdWQiOiJjYmE5ZDU2YjY2ZWM0N2FkNDdkMzFiNjcxODFlNmVjMSIsInN1YiI6Ijk3NDU2NzE4MTEzIiwiZXhwIjoxNzQ2MTkwMDQ1LCJuYmYiOjE3NDYxODk5ODUsImlhdCI6MTc0NjE4OTk4NSwianRpIjoiO
WVlMTg1ZmMtMGJmMS00ZjU0LTk2YmYtYjI1YWM2MTNjMWYyIiwic2lkIjoiY2M5OTM1ZjAtNzU2NS00NmFlLTlhN2UtZGNkYzM3MzE3N2IxIiwic2lnIjoiYWZhMzU5YmYzMWU5N2MwZmYzOGMzZmJiYTU0YTFiMzVmZmMzYTk3MzViNzZiOGE0M2U3NTgyOWI0MTUyZmM3YyJ9.UPA3yF7Xhi4X2XVwEhc4x-KPWrksSB0cKFJbfrR8eKY"}}
20:46:29 │                     remix │ [shopify-app/DEBUG] Validating session token | {shop: quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/DEBUG] Session token is valid - validated | {shop: quick-start-18339131.myshopify.com, payload: {"iss":"https://quick-start-18339131.myshopify.com/admin","dest":"https://quick-start-18339131.myshopify.com","aud":"cba9d56b66ec47ad47d31b67181e6ec1","sub":"97456718113","exp":1746190045,"nbf":1746189985,"iat":17
46189985,"jti":"9ee185fc-0bf1-4f54-96bf-b25ac613c1f2","sid":"cc9935f0-7565-46ae-9a7e-dcdc373177b1","sig":"afa359bf31e97c0ff38c3fbba54a1b35ffc3a9735b76b8a43e75829b4152fc7c"}}
20:46:29 │                     remix │ [shopify-app/DEBUG] Session token is valid - validated | {shop: quick-start-18339131.myshopify.com, payload: {"iss":"https://quick-start-18339131.myshopify.com/admin","dest":"https://quick-start-18339131.myshopify.com","aud":"cba9d56b66ec47ad47d31b67181e6ec1","sub":"97456718113","exp":1746190045,"nbf":1746189985,"iat":17
46189985,"jti":"9ee185fc-0bf1-4f54-96bf-b25ac613c1f2","sid":"cc9935f0-7565-46ae-9a7e-dcdc373177b1","sig":"afa359bf31e97c0ff38c3fbba54a1b35ffc3a9735b76b8a43e75829b4152fc7c"}}
20:46:29 │                     remix │ [shopify-app/DEBUG] Session token is valid - authenticated | {shop: quick-start-18339131.myshopify.com, payload: [object Object]}
20:46:29 │                     remix │ [shopify-app/DEBUG] Session token is valid - authenticated | {shop: quick-start-18339131.myshopify.com, payload: [object Object]}
20:46:29 │                     remix │ [shopify-app/DEBUG] Loading session from storage | {shop: quick-start-18339131.myshopify.com, sessionId: offline_quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/DEBUG] Loading session from storage | {shop: quick-start-18339131.myshopify.com, sessionId: offline_quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/INFO] No valid session found | {shop: quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/INFO] Requesting offline access token | {shop: quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/INFO] No valid session found | {shop: quick-start-18339131.myshopify.com}
20:46:29 │                     remix │ [shopify-app/INFO] Requesting offline access token | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/DEBUG] Authenticate returned a response | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/DEBUG] Authenticate returned a response | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/INFO] Authenticating admin request | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/DEBUG] Attempting to authenticate session token | {shop: quick-start-18339131.myshopify.com, sessionToken:
{"search":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczpcL1wvcXVpY2stc3RhcnQtMTgzMzkxMzEubXlzaG9waWZ5LmNvbVwvYWRtaW4iLCJkZXN0IjoiaHR0cHM6XC9cL3F1aWNrLXN0YXJ0LTE4MzM5MTMxLm15c2hvcGlmeS5jb20iLCJhdWQiOiJjYmE5ZDU2YjY2ZWM0N2FkNDdkMzFiNjcxODFlNmVjMSIsInN1YiI6Ijk3NDU2NzE4MTEzIiwiZXhwIjoxNzQ2MTkwMDQ1LCJuYmYiOjE3NDYxODk5ODUsImlhdCI6MTc0NjE4OTk4NSwianRpIjoiO
WVlMTg1ZmMtMGJmMS00ZjU0LTk2YmYtYjI1YWM2MTNjMWYyIiwic2lkIjoiY2M5OTM1ZjAtNzU2NS00NmFlLTlhN2UtZGNkYzM3MzE3N2IxIiwic2lnIjoiYWZhMzU5YmYzMWU5N2MwZmYzOGMzZmJiYTU0YTFiMzVmZmMzYTk3MzViNzZiOGE0M2U3NTgyOWI0MTUyZmM3YyJ9.UPA3yF7Xhi4X2XVwEhc4x-KPWrksSB0cKFJbfrR8eKY"}}
20:46:39 │                     remix │ [shopify-app/DEBUG] Validating session token | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/INFO] Authenticating admin request | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/DEBUG] Attempting to authenticate session token | {shop: quick-start-18339131.myshopify.com, sessionToken:
{"search":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczpcL1wvcXVpY2stc3RhcnQtMTgzMzkxMzEubXlzaG9waWZ5LmNvbVwvYWRtaW4iLCJkZXN0IjoiaHR0cHM6XC9cL3F1aWNrLXN0YXJ0LTE4MzM5MTMxLm15c2hvcGlmeS5jb20iLCJhdWQiOiJjYmE5ZDU2YjY2ZWM0N2FkNDdkMzFiNjcxODFlNmVjMSIsInN1YiI6Ijk3NDU2NzE4MTEzIiwiZXhwIjoxNzQ2MTkwMDQ1LCJuYmYiOjE3NDYxODk5ODUsImlhdCI6MTc0NjE4OTk4NSwianRpIjoiO
WVlMTg1ZmMtMGJmMS00ZjU0LTk2YmYtYjI1YWM2MTNjMWYyIiwic2lkIjoiY2M5OTM1ZjAtNzU2NS00NmFlLTlhN2UtZGNkYzM3MzE3N2IxIiwic2lnIjoiYWZhMzU5YmYzMWU5N2MwZmYzOGMzZmJiYTU0YTFiMzVmZmMzYTk3MzViNzZiOGE0M2U3NTgyOWI0MTUyZmM3YyJ9.UPA3yF7Xhi4X2XVwEhc4x-KPWrksSB0cKFJbfrR8eKY"}}
20:46:39 │                     remix │ [shopify-app/DEBUG] Validating session token | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/DEBUG] Session token is valid - validated | {shop: quick-start-18339131.myshopify.com, payload: {"iss":"https://quick-start-18339131.myshopify.com/admin","dest":"https://quick-start-18339131.myshopify.com","aud":"cba9d56b66ec47ad47d31b67181e6ec1","sub":"97456718113","exp":1746190045,"nbf":1746189985,"iat":17
46189985,"jti":"9ee185fc-0bf1-4f54-96bf-b25ac613c1f2","sid":"cc9935f0-7565-46ae-9a7e-dcdc373177b1","sig":"afa359bf31e97c0ff38c3fbba54a1b35ffc3a9735b76b8a43e75829b4152fc7c"}}
20:46:39 │                     remix │ [shopify-app/DEBUG] Session token is valid - validated | {shop: quick-start-18339131.myshopify.com, payload: {"iss":"https://quick-start-18339131.myshopify.com/admin","dest":"https://quick-start-18339131.myshopify.com","aud":"cba9d56b66ec47ad47d31b67181e6ec1","sub":"97456718113","exp":1746190045,"nbf":1746189985,"iat":17
46189985,"jti":"9ee185fc-0bf1-4f54-96bf-b25ac613c1f2","sid":"cc9935f0-7565-46ae-9a7e-dcdc373177b1","sig":"afa359bf31e97c0ff38c3fbba54a1b35ffc3a9735b76b8a43e75829b4152fc7c"}}
20:46:39 │                     remix │ [shopify-app/DEBUG] Session token is valid - authenticated | {shop: quick-start-18339131.myshopify.com, payload: [object Object]}
20:46:39 │                     remix │ [shopify-app/DEBUG] Session token is valid - authenticated | {shop: quick-start-18339131.myshopify.com, payload: [object Object]}
20:46:39 │                     remix │ [shopify-app/DEBUG] Loading session from storage | {shop: quick-start-18339131.myshopify.com, sessionId: offline_quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/DEBUG] Loading session from storage | {shop: quick-start-18339131.myshopify.com, sessionId: offline_quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/INFO] No valid session found | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/INFO] Requesting offline access token | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/INFO] No valid session found | {shop: quick-start-18339131.myshopify.com}
20:46:39 │                     remix │ [shopify-app/INFO] Requesting offline access token | {shop: quick-start-18339131.myshopify.com}
20:46:50 │                     remix │ [shopify-app/DEBUG] Authenticate returned a response | {shop: quick-start-18339131.myshopify.com}
20:46:50 │                     remix │ [shopify-app/DEBUG] Authenticate returned a response | {shop: quick-start-18339131.myshopify.com}

─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

› Press d │ toggle development store preview: ✔ on
› Press g │ open GraphiQL (Admin API) in your browser
› Press p │ preview in your browser
› Press q │ quit

Preview URL: https://quick-start-18339131.myshopify.com/admin/oauth/redirect_from_cli?client_id=cba9d56b66ec47ad47d31b67181e6ec1
GraphiQL URL: http://localhost:3457/graphiql

need help,i can’t solve it :smiling_face_with_tear:

Hey - digging into what might be causing this. When you try with localhost, can you post what happens when passing --verbose ?

Hey,

It’s possible this could be an issue with the system clock, if it’s not in sync we can’t validate the token. To fix this ensure you have enabled Set time and date automatically in the Date and Time settings on your computer.

Hi @hy_freedom - are you still seeing this issue, or can I mark this as solved?