Shopify app · iOS & Android
Your store, as a native app you can redesign on a Tuesday.
Vitrine publishes an iOS and Android app for your Shopify store, and puts the home-screen builder inside your Shopify admin. Rearrange the screen, press Publish, and every phone that opens the app sees the change. No App Store review, no release, no developer.
theme v7 · published 4s ago
The linen edit
Shop nowWide-leg trouser
₺1,240Oversized shirt
₺890Cotton knit
₺1,560Belted dress
₺2,100Every screen above is a document on our server. Changing it is a Publish, not a release.
How it works
Install, design, publish. The third one you will do again and again.
There is no onboarding call and nothing to copy between two admin screens. The install provisions everything the app needs.
Install from Shopify
Approve the permissions and Vitrine sets itself up: it reads your shop, mints its own Storefront access token, and subscribes to the webhooks it needs. You never handle a token, and nothing is added to your theme.
Design in your admin
The builder opens inside the Shopify admin — no second login. Drag sections into place and watch a live preview render at true phone width, using your own products and collections rather than sample data.
Publish, and roll back
Publishing creates a version. Devices pick it up on the next open, and every earlier version stays in the history — restoring one is a click, not a support ticket.
The builder
The home screen is a document, not a build.
Twelve section types, composed in any order. Reorder by drag, edit in an inspector, and see the result in a phone-framed preview beside it.
- Hero
- Image CTA
- Product grid
- Product carousel
- Collection list
- Circle links
- Gallery
- Countdown
- Rich text
- Banner
- Divider
- Spacer
Spacing is not editable, on purpose.
Colour, corner radius and type scale cannot break a layout. Spacing can — and a theme that looks right in the builder and collapses on a small phone is a problem you would discover from a customer. So the builder controls what is safe to control, and the renderer owns the rest.
- Your real catalogue in the preview
- Products and collections come from your store, through a Browse picker. Handles are invisible in the Shopify admin, so nobody is asked to type one and discover the typo later as a blank section.
- Versioned publishing
- History is append-only: publishing archives the previous version rather than overwriting it, and a rollback moves an old document forward as a new one. Version numbers only ever increase.
- Templates and presets
- Start from a ready-made group of sections or apply a whole theme preset. Applying one keeps your logo and your navigation — trying a look should not cost you either.
- Branding and tokens
- Logo, header icons, colour, corner radius and type scale. Every screen in the app reads them, so a change is not confined to the home screen.
- Errors land on the field
- The server validates a theme when you save it, and the builder marks the offending section, jumps to it, and prints the message under the exact field. A malformed layout can never reach a customer's phone.
- Navigation you arrange
- A drawer menu and a bottom tab bar, both merchant-configured, with a fixed icon set. Only destinations the app actually has are offered.
The app
What your customers get.
A native shell with the screens a store needs — and Shopify's own checkout, so nothing about payment changes.
- Browse and search
- Collections, product pages with variants, full-catalogue browsing, search, and a recently-viewed list that stays on the device.
- Cart and checkout
- The cart lives in Shopify, never mirrored on our side, so inventory and pricing have one source of truth. Checkout opens in Shopify's native sheet, already signed in when the shopper is.
- Customer accounts
- Sign in, register, order history and saved addresses — all against Shopify's own customer tokens. Those tokens stay on the device; we do not keep them.
- Push notifications
- Compose a message, choose where it opens, send it. The dashboard reports what the push service accepted rather than claiming delivery it cannot see.
- Fast on a cold start
- The app caches the published theme on the device and paints from it before the network answers, so opening the app is not a spinner.
- Forward compatible
- An app build that meets a section type it has never heard of skips it instead of crashing. New section types are not a breaking change for phones in the field.
How it is built
The parts worth asking about.
- Your Storefront token never ships in the app
- It stays server-side and the app talks to our gateway, so a token cannot be pulled out of a binary someone downloaded.
- Least access, and only what is used
- Read access to products, plus the unauthenticated Storefront scopes the app needs for cart, checkout and customer sign-in. No orders, no customer lists, no write access to your catalogue.
- Uninstall is immediate and complete
-
Shopify's
app/uninstalledwebhook clears both access tokens on arrival. Your themes and your store key stay, so a reinstall restores the app your customers already have rather than handing you a blank one.
Our security page lists what we do and what we have not finished, and the data processing page names every subprocessor that touches store data.
Status
Where Vitrine is today.
An honest list is more useful than a feature grid with everything ticked. This is what exists, and what does not yet.
- Shipped Install and provisioning from Shopify, the embedded builder, twelve section types, versioned publish and rollback, theme presets, branding, drawer menu and tab bar, search, customer accounts with order history and addresses, cart and native checkout, push notifications.
- Not yet Only the home screen is server-driven — product and cart screens are native and change with an app release. There is no scheduled publishing, no A/B testing and no per-segment themes.
- Rough A logo is set by URL rather than uploaded, custom font files need a native build, and two of the builder's six panels are still stubs.
- Pricing Not set. Vitrine is free while it is this young, and no charge will ever appear without Shopify showing you the amount and asking you to approve it first.
Put your store in a pocket.
Install takes about a minute, and the first theme takes about ten. If the app is already installed, open Vitrine from Apps in your Shopify admin.