Artur Lubin — Product designer & developer
Case study · E-commerce · Own venture
A-SCAPE: the online store I co-founded and built from zero
An aquatics store selling to Estonia, Latvia and Lithuania. I designed and built all of it: the storefront, the backend, the customer account, the admin we run the shop on, and the automations between them. I also run its marketing on Google.
- Role
- Co-founder. Design, development and marketing, end to end
- Timeline
- From zero to a live store in about 5 months. Still growing
- Markets
- Estonia, Latvia, Lithuania
- Languages
- Estonian, English, Russian
- Stack
- Next.js storefront, Medusa backend and admin, API at api.ascape.ee
- Integrations
- Montonio payments, Omniva and DPD delivery, email
- Catalogue
- 1,800+ products, 52 brands (as of 06.11.2026)
A specialist store we can run ourselves
A friend and I wanted to sell aquariums, terrariums, live plants and equipment online across the Baltics, and to offer aquarium design, installation and care next to the products. So the store had to carry a large technical catalogue and handle shipping rules for three countries, while staying simple enough for us to run day to day.
- A big, technical catalogue: Pumps, filters, lighting, substrates and plants. The right choice depends on the tank, so people need a way to compare models.
- Three countries, different delivery: Carriers, prices and free-delivery thresholds change with the country. Oversized items go by courier only.
- Stock held by suppliers: Most items ship from a supplier's warehouse, so the delivery date has to be clear before anyone pays.
- Live goods: Plants don't fall under the usual withdrawal right, and the store has to say so plainly.
Design the store around how it will be run
This is a retrospective of the live store. Everything below can be seen on ascape.ee today.
- Navigation that follows the hobby: Freshwater, Marine and Terrarium come first. Inside each one: tanks, equipment, substrate, care, decorations, food and tools.
- Filters for comparing equipment: Type and brand with counts, price bands and a custom range, plus a short guide next to the list.
- Checkout that knows the country: Pick Estonia, Latvia or Lithuania and the carriers and prices change with it.
- One system behind every screen: The storefront, the customer account and the admin read from the same backend, so an order looks the same to us and to the buyer.
From the home page to payment
- Three worlds first: The home page sends people to Freshwater, Marine or Terrarium, and to aquarium services, before it shows a single product.
- Filters built for equipment: Type and brand with counts, price bands and sorting. The "How to choose?" guide sits right above the list.
- Every model on one page: Pump sizes are variants of one product. Delivery time, payment, returns and a way to ask for advice sit next to the button.
- A cart that shows the full cost: The cart drawer opens on the same page, with what's left until free delivery and when the order will arrive.
- Delivery depends on the country: Estonia, Latvia or Lithuania: Omniva and DPD parcel lockers or a DPD courier, each with its own price. Payment goes through Montonio.
One cart, three countries
The same product at checkout with each country selected. The carriers, their order and the prices come from the store's own delivery rules.
Every step checked on the live site
Home, category, product, cart, checkout, payment with Montonio, and the confirmation email. The branches below the main line are the cases the store handles along the way.
The moments between the main screens
An empty cart, an item just added, a model that's not available, delivery options still loading. Each one says what is happening and what to do next.
The whole store fits in one hand
The same catalogue, filters and checkout on a phone: filters move into a sheet, the buy button stays in reach, and checkout is one column.
Buyers see where their order is
Order history, the order's progress from payment to delivery, personal details and addresses. The progress steps are the same ones we mark in the admin.
The admin we run the shop on
The admin is Medusa with our own sections, in Russian, the language we work in. Customers, suppliers, purchase prices, order numbers and totals are replaced with placeholders.
- Overview: Orders, revenue and margin for the period, and a short "do now" list that opens the right screen.
- Needs attention: Supplier stock that hasn't updated, open product requests, variants with a thin margin and products with missing data.
- Orders with the next step: Every recent order shows where it goes and what to do next: which supplier to order from, or what we're waiting for.
- One order, step by step: Paid, ordered from the supplier, received, handed to the carrier. Marking a step updates the buyer's order page, and the Omniva shipment is created right here.
- Fulfilment queue: Paid orders grouped by supplier, with stock and a link to each supplier, so it's clear what to order where.
- Prices and margin: Purchase price, retail price and margin after the supplier's shipping for every variant, worst first.
- Catalogue releases: New products, price changes, texts and stock go live in reviewed batches, with a log of what ran.
- Product requests: When a buyer asks about an item that isn't available, the request lands here with its status.
One order, two views
What we do in the admin and what the buyer sees at each step, from payment to delivery.
Getting found on Google
Marketing is mine too. I set up how people find the store: search, free Shopping listings and an Ads account that's ready for later.
Google Search Console and Merchant Center, as of 08.11.2026. Google Ads is set up but has not run yet, so there are no Ads results.
- Google Search: SEO and Google Search Console for the catalogue in three languages.
- Google Shopping: The product feed in Google Merchant Center, so products appear in free Shopping listings.
- Google Ads: The account and campaigns are set up for later. For now the store runs on free listings and organic search.
- 227: clicks from Google Search over 6 months, from 4.65k impressions; average position 10.8
- 175: of those clicks came in the last 28 days
- ~250: search impressions a day in early November, up from a few a day in August
- 5,250: listings approved for free Google Shopping, including variants
- 191: Shopping clicks in the last 28 days, +446% on the previous 28 days
What the store is made of
The storefront, the backend and API, the admin, the automations and the services they talk to: Montonio, Omniva, DPD and email.
Tokens and components from the live CSS
Colours, type, spacing and the components the store is built from, redrawn from production.
What this means for your store
Running A-SCAPE as a co-founder taught me what it takes to get from an empty repository to the first paid order, and what the admin has to do on a busy Monday.
Need an online store that you can actually run? Tell me what you sell and where you ship. I'll reply with how I'd start.
ascape.ee
Screens redrawn in Figma from the live store on 06–08.11.2026. Personal and business data replaced with placeholders.
lubinartur@gmail.com · LinkedIn · CV (PDF)