Vitrine

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.

The permanent domain in your Shopify admin under Settings → Domains — not your custom domain.

  • Shopify asks you to approve access. Nothing changes in your store until you do.
  • No theme code, no snippets, nothing pasted into your storefront.
  • Uninstalling revokes both access tokens the moment you click it.

theme v7 · published 4s ago

The linen edit

Shop now
New in Linen Knits Sale
Best sellers See all

Wide-leg trouser

₺1,240

Oversized shirt

₺890

Cotton knit

₺1,560

Belted dress

₺2,100
Home Search Cart Account

Every 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/uninstalled webhook 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.
Read the detail rather than the adjective.

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.