I have an almost complete admin app that was developed using the now-depreciated Polaris components. But the admin continually logs out sending me to the login screen, as I move between pages. The question I have in 2026 is what is the best way to create an app so it stays in date with package updates, and can be updated with React. I am shy of using the new Polaris components because they seem clunky, and not well thought out. What are the bare bones that I need to create a functional admin app for shopify, so that I can use a normal React component library for styling? A link to the correct documentation would suffice.
Shopify provides Remix template and Node templates.
Hi, I used the Remix template for our current app. But it is always logging out, and showing the login page. I need to know the inner workings of the template, how to get it to work correctly.
I found out what the issue was with my code, logging out all the time. I was using an A tag in the breadcrumb; it does not set authentication info, I had to replace it with a Link tag.
I changed the following from :
<TitleBar title="Add Product Pricing Tiers" >
<a variant="breadcrumb" href={"/app/products/"+page}>All Products</a>
<button variant="primary" onClick={()=>{ navigate('/app/products/'+page) }}>
Back to Products
</button>
</TitleBar>
To
<TitleBar title="Add Product Pricing Tiers" >
<Link variant="breadcrumb" to={"/app/products/"+page}>All Products</Link>
<button variant="primary" onClick={()=>{ navigate('/app/products/'+page) }}>
Back to Products
</button>
</TitleBar>
Plus rather than use import {redirect} from “remix-run/node”; for redirects I had to use:
const { session, admin, redirect } = await authenticate.admin(request);
This redirect includes the Shopify authentication info in the redirect, where the @remix-run/node does not. Seeing I have fixed this app I don’t think I will worry about migration for now.