[{"data":1,"prerenderedAt":603},["ShallowReactive",2],{"work-list-en":3},[4,75,128,179,237,290,343,392,450,501,553],{"id":5,"title":6,"approach":7,"body":8,"description":14,"extension":45,"image":46,"live":47,"locale":48,"meta":49,"navigation":47,"order":50,"path":51,"problem":52,"projectType":53,"results":54,"seo":67,"slug":68,"stack":69,"stem":70,"summary":71,"timeline":72,"year":73,"__hash__":74},"work\u002Fwork\u002Fen\u002Fselvee-skincare.md","An online store for a natural skincare brand.","A fast, own-brand storefront where the ingredient story leads and buying stays effortless.",{"type":9,"value":10,"toc":37},"minimark",[11,15,20,23,27,30,34],[12,13,14],"p",{},"Selvée is a natural, waterless skincare brand that makes its products in small batches. This is its own online store — built to move the brand off social-media DMs and onto a storefront it fully controls.",[16,17,19],"h2",{"id":18},"the-brief","The brief",[12,21,22],{},"The brand was already selling, but every order ran through direct messages and manual follow-up. That does not scale, and it hides the thing that actually sells this product: the ingredients and the care behind them. The site had to carry the brand, tell that story, and take payment on its own.",[16,24,26],{"id":25},"key-decisions","Key decisions",[12,28,29],{},"Products, ingredients, and the journal are structured content, so the team can add a launch or write a post without touching code. The design stays quiet and premium — generous space, one accent, the product photography leading. Checkout is built around local expectations: prices in RSD, familiar shipping, and free delivery over a clear threshold. Everything is designed mobile-first, because that is where the brand's audience already is.",[16,31,33],{"id":32},"the-outcome","The outcome",[12,35,36],{},"Selvée now has a storefront that looks like the brand rather than a marketplace stall, takes orders without a person in the loop, and keeps every sale and customer relationship in the brand's own hands. It loads fast on a phone, reads clearly, and gives the ingredients the room they earn.",{"title":38,"searchDepth":39,"depth":40,"links":41},"",2,3,[42,43,44],{"id":18,"depth":39,"text":19},{"id":25,"depth":39,"text":26},{"id":32,"depth":39,"text":33},"md","\u002Fwork\u002Fselvee-skincare.png",true,"en",{},1,"\u002Fwork\u002Fen\u002Fselvee-skincare","A growing handmade skincare brand had outgrown selling through social media DMs.","E-commerce",[55,58,61,64],{"num":56,"label":57},"100%","Mobile-first storefront",{"num":59,"label":60},"0","Marketplace fees",{"num":62,"label":63},"Own","Brand, checkout & data",{"num":65,"label":66},"Free","Shipping over 3.500 RSD",{"title":6,"description":14},"selvee-skincare","Next.js · React","work\u002Fen\u002Fselvee-skincare","A calm, own-brand storefront for handmade waterless skincare — built to sell without feeling like a template.","4 weeks","2026","sBL5o_GHdURjFORl_2qrn4zhiOdz0gIsH1wrmWq7z6o",{"id":76,"title":77,"approach":78,"body":79,"description":83,"extension":45,"image":104,"live":47,"locale":48,"meta":105,"navigation":47,"order":39,"path":106,"problem":107,"projectType":108,"results":109,"seo":121,"slug":122,"stack":123,"stem":124,"summary":125,"timeline":126,"year":73,"__hash__":127},"work\u002Fwork\u002Fen\u002Fzubar-beograd.md","A directory that helps patients find a dentist.","One place to compare verified clinics, read plain-language guides, and book a visit.",{"type":9,"value":80,"toc":99},[81,84,86,89,91,94,96],[12,82,83],{},"Zubar Beograd is a dental directory for Belgrade: a single place to find a verified clinic, understand a procedure, compare what things cost, and book a visit — instead of piecing it together across phone calls and half-finished listings.",[16,85,19],{"id":18},[12,87,88],{},"Choosing a dentist is a high-trust, high-anxiety decision, and the information around it is usually scattered and hard to compare. The site had to do two jobs at once: rank well for the searches people actually type, and then earn their trust once they land — with clear clinic profiles, honest guides, reviews, and an easy way to book.",[16,90,26],{"id":25},[12,92,93],{},"The whole site is content-first and server-rendered, so procedure guides, clinic pages, the blog, and the FAQ are fast and fully indexable — that is where the traffic comes from. Booking is built into the flow rather than bolted on: a patient can go from a service page to a chosen date without leaving the site. Reviews and an FAQ sit close to the decision to answer the questions people hesitate on.",[16,95,33],{"id":32},[12,97,98],{},"The result is a calm, credible entry point to dental care in Belgrade — quick on mobile, easy to search, and structured so a visitor moves from question to booked appointment in one flow instead of a phone tree.",{"title":38,"searchDepth":39,"depth":40,"links":100},[101,102,103],{"id":18,"depth":39,"text":19},{"id":25,"depth":39,"text":26},{"id":32,"depth":39,"text":33},"\u002Fwork\u002Fzubar-beograd.png",{},"\u002Fwork\u002Fen\u002Fzubar-beograd","Finding a trustworthy dentist in Belgrade meant scattered listings, unclear pricing, and phone tag.","Directory",[110,113,116,118],{"num":111,"label":112},"1","Search-to-booking flow",{"num":114,"label":115},"SSR","SEO-ready content",{"num":56,"label":117},"Mobile-first",{"num":119,"label":120},"Blog","Reviews, FAQ & guides",{"title":77,"description":83},"zubar-beograd","Nuxt · Tailwind","work\u002Fen\u002Fzubar-beograd","A content-rich dental directory for Belgrade — find a verified clinic, compare services, and book a visit in one place.","6 weeks","XBUsE07ud7ZA8vGmW2OwMZFMFTwWjcbyMc2DSr_37iA",{"id":129,"title":130,"approach":131,"body":132,"description":136,"extension":45,"image":157,"live":47,"locale":48,"meta":158,"navigation":47,"order":40,"path":159,"problem":160,"projectType":161,"results":162,"seo":172,"slug":173,"stack":174,"stem":175,"summary":176,"timeline":177,"year":73,"__hash__":178},"work\u002Fwork\u002Fen\u002Faskrle-auto-service.md","A booking-ready site for an auto workshop.","A fast, mobile-first site that turns a visitor into a booked appointment in a tap.",{"type":9,"value":133,"toc":152},[134,137,139,142,144,147,149],[12,135,136],{},"Auto Servis KRLE is an established car workshop in Belgrade. The site gives it a home online that matches how the shop actually works — fast diagnostics, a clear service history, and booking without the wait.",[16,138,19],{"id":18},[12,140,141],{},"The garage earned its customers on reputation, but everything ran through the phone. There was no easy way to book outside working hours, no place to point new customers, and no record a driver could look back on. The site had to feel like the shop — precise, no-nonsense — and make getting an appointment effortless.",[16,143,26],{"id":25},[12,145,146],{},"The design leans into a dark \"workshop\" look with a single bold accent, so it reads as a garage rather than a generic template. Contact is one tap away on the phone people are already holding — call, WhatsApp, or Viber — and online booking runs around the clock. Service history and reminders are framed as the reason to come back, and a blog gives the shop something to rank and share.",[16,148,33],{"id":32},[12,150,151],{},"Auto Servis KRLE now has a site that books appointments while the shop is busy under a car, reaches customers on the channels they prefer, and turns one-off repairs into a kept record. It is quick on mobile and built to make the next visit the easy choice.",{"title":38,"searchDepth":39,"depth":40,"links":153},[154,155,156],{"id":18,"depth":39,"text":19},{"id":25,"depth":39,"text":26},{"id":32,"depth":39,"text":33},"\u002Fwork\u002Faskrle-auto-service.png",{},"\u002Fwork\u002Fen\u002Faskrle-auto-service","A trusted local garage ran on phone calls, with no simple way to book or keep service records.","Website",[163,166,169,170],{"num":164,"label":165},"3","One-tap contact channels",{"num":167,"label":168},"24\u002F7","Online appointment booking",{"num":56,"label":117},{"num":119,"label":171},"+ service history",{"title":130,"description":136},"askrle-auto-service","Nuxt · Vue","work\u002Fen\u002Faskrle-auto-service","A dark, workshop-styled site for a Belgrade garage — quick to reach, easy to book, with service history at its core.","3 weeks","Oh99yi5nLwIg71Q7lnF1mn8lhpIEUHK95Qu3b1INFrY",{"id":180,"title":181,"approach":182,"body":183,"description":187,"extension":45,"image":212,"live":213,"locale":48,"meta":214,"navigation":47,"order":215,"path":216,"problem":217,"projectType":161,"results":218,"seo":230,"slug":231,"stack":232,"stem":233,"summary":234,"timeline":235,"year":73,"__hash__":236},"work\u002Fwork\u002Fen\u002Fmeridian-studio-site.md","A portfolio site for a design studio.","A content-driven build where the projects lead and everything else steps back.",{"type":9,"value":184,"toc":207},[185,188,192,195,197,200,204],[12,186,187],{},"Meridian is a self-directed concept: a portfolio site for an imagined boutique design studio, built to show how a content-first structure lets the work speak.",[16,189,191],{"id":190},"why-this-concept","Why this concept",[12,193,194],{},"Studio sites tend to fight their own content. Heavy page builders, slow image galleries, and decorative motion push the actual projects below the fold. This build started from the opposite premise — the fastest, quietest frame around good work wins.",[16,196,26],{"id":25},[12,198,199],{},"Every project is a Markdown file with structured frontmatter, so the studio can add or reorder work without touching code. Images are responsive and lazy-loaded; type and spacing carry the design instead of effects. The site ships as static output, so there is no framework cost on first paint.",[16,201,203],{"id":202},"what-it-demonstrates","What it demonstrates",[12,205,206],{},"A site like this loads instantly, stays editable by non-developers, and reads cleanly on a phone. It is the baseline I hold client websites to: fast, accessible, and built so the content — not the template — is the thing people remember.",{"title":38,"searchDepth":39,"depth":40,"links":208},[209,210,211],{"id":190,"depth":39,"text":191},{"id":25,"depth":39,"text":26},{"id":202,"depth":39,"text":203},"\u002Fwork\u002Fmeridian-studio-site.png",false,{},4,"\u002Fwork\u002Fen\u002Fmeridian-studio-site","Studio portfolios often bury the work under heavy templates and slow galleries.",[219,222,225,227],{"num":220,"label":221},"100","Lighthouse performance",{"num":223,"label":224},"0.4s","Largest contentful paint",{"num":56,"label":226},"Editable without code",{"num":228,"label":229},"AAA","Contrast compliance",{"title":181,"description":187},"meridian-studio-site","Nuxt · Nuxt Content · Tailwind","work\u002Fen\u002Fmeridian-studio-site","A content-first studio site where the work leads and the template gets out of the way.","2 weeks","lSK6WL_Unh52hZWVXaUd35P7yMLK2xzCiYH_-y4FCUM",{"id":238,"title":239,"approach":240,"body":241,"description":245,"extension":45,"image":266,"live":213,"locale":48,"meta":267,"navigation":47,"order":268,"path":269,"problem":270,"projectType":271,"results":272,"seo":284,"slug":285,"stack":286,"stem":287,"summary":288,"timeline":126,"year":73,"__hash__":289},"work\u002Fwork\u002Fen\u002Fatlas-client-portal.md","A client portal that replaces the email thread.","A single logged-in space per client, with roles that show each person exactly what they need.",{"type":9,"value":242,"toc":261},[243,246,248,251,253,256,258],[12,244,245],{},"Atlas is a concept client portal — one authenticated space that replaces the scattered email thread most projects run on.",[16,247,191],{"id":190},[12,249,250],{},"Studios and agencies lose hours to status questions. Where are we? What do you need from me? Did you see the latest files? The information exists, but it is spread across email, chat, and shared drives. The concept collapses that into a single place each client can log into.",[16,252,26],{"id":25},[12,254,255],{},"The portal is built around four roles — owner, team, client, and viewer — so people see exactly what they should. Status, deliverables, approvals, and invoices each get a focused screen. The API is typed end to end, and the data model is shaped so adding a feature later does not mean a rewrite.",[16,257,203],{"id":202},[12,259,260],{},"This is the shape of web app work I take on: real authentication, sensible roles, a clean data model, and a dashboard that stays fast with real data behind it. The point of the concept is not the feature list — it is proving the foundation is safe to build on.",{"title":38,"searchDepth":39,"depth":40,"links":262},[263,264,265],{"id":190,"depth":39,"text":191},{"id":25,"depth":39,"text":26},{"id":202,"depth":39,"text":203},"\u002Fwork\u002Fatlas-client-portal.png",{},5,"\u002Fwork\u002Fen\u002Fatlas-client-portal","Project updates, files, and approvals scattered across email, chat, and shared drives.","Web app",[273,276,279,281],{"num":274,"label":275},"4","User roles",{"num":277,"label":278},"0.5s","Dashboard load",{"num":56,"label":280},"Typed end to end",{"num":282,"label":283},"30+","Automated tests",{"title":239,"description":245},"atlas-client-portal","Nuxt · Nitro · Postgres · Auth","work\u002Fen\u002Fatlas-client-portal","One authenticated space per client for status, deliverables, approvals, and invoices.","_hhXx3qY3epjCfF3QMsLkgX7-PcSjtKXqQAbJ6J7pyA",{"id":291,"title":292,"approach":293,"body":294,"description":298,"extension":45,"image":319,"live":213,"locale":48,"meta":320,"navigation":47,"order":321,"path":322,"problem":323,"projectType":324,"results":325,"seo":336,"slug":337,"stack":338,"stem":339,"summary":340,"timeline":341,"year":73,"__hash__":342},"work\u002Fwork\u002Fen\u002Fbloom-booking-mvp.md","A booking marketplace, launched as an MVP.","Scope down to the one loop that has to work, put it in front of real users, and learn.",{"type":9,"value":295,"toc":314},[296,299,301,304,306,309,311],[12,297,298],{},"Bloom is a concept MVP for a two-sided booking marketplace, scoped to prove one thing: the core loop works.",[16,300,191],{"id":190},[12,302,303],{},"Founders often want to build the whole platform before they know anyone wants it. This build takes the opposite path — the smallest system that lets one person list a service, another discover it, book a time, and pay. Everything else waits.",[16,305,26],{"id":25},[12,307,308],{},"Scope discipline is the product. Payments run through Stripe, availability is real, and there is no seeded data pretending the marketplace is busy. What is not essential to the loop — ratings, messaging, dashboards — is deliberately left for later: documented, but not built.",[16,310,203],{"id":202},[12,312,313],{},"An MVP like this can reach a testable state in weeks, not months, because it refuses to carry weight it does not need yet. It is how I approach early product work: build the loop, put it in front of real users, and let what you learn fund the next decision.",{"title":38,"searchDepth":39,"depth":40,"links":315},[316,317,318],{"id":190,"depth":39,"text":191},{"id":25,"depth":39,"text":26},{"id":202,"depth":39,"text":203},"\u002Fwork\u002Fbloom-booking-mvp.png",{},6,"\u002Fwork\u002Fen\u002Fbloom-booking-mvp","Founders want to build the whole platform before knowing anyone wants it.","MVP",[326,329,331,334],{"num":327,"label":328},"5 wk","To first launch",{"num":111,"label":330},"Core loop proven",{"num":332,"label":333},"2","Sides matched",{"num":59,"label":335},"Rows of fake data",{"title":292,"description":298},"bloom-booking-mvp","Nuxt · Nitro · Stripe · Postgres","work\u002Fen\u002Fbloom-booking-mvp","The smallest two-sided system that proves the core loop: list, discover, book, pay.","5 weeks","uUAHSqV68p7lCSYWPEaDhy3M-25bvexmWeb9nCS6NuI",{"id":344,"title":345,"approach":346,"body":347,"description":351,"extension":45,"image":372,"live":213,"locale":48,"meta":373,"navigation":47,"order":374,"path":375,"problem":376,"projectType":53,"results":377,"seo":386,"slug":387,"stack":388,"stem":389,"summary":390,"timeline":177,"year":73,"__hash__":391},"work\u002Fwork\u002Fen\u002Fkestrel-store.md","A store for a small-batch maker.","A lean, owned storefront where performance and a calm buying experience come first.",{"type":9,"value":348,"toc":367},[349,352,354,357,359,362,364],[12,350,351],{},"Kestrel is a concept storefront for a small-batch maker — a fast, custom shop that does not feel like every other template.",[16,353,191],{"id":190},[12,355,356],{},"Independent makers are often pushed onto heavy platforms that load slowly, look generic, and take a cut of every sale. The concept asks what a lean, owned storefront looks like when performance and a calm buying experience come first.",[16,358,26],{"id":25},[12,360,361],{},"Products are content, so the shop stays easy to update. Checkout is two steps and runs on Stripe. Everything is designed mobile-first, because that is where most small-shop sales actually happen. No pop-ups, no dark patterns — just the product and a clear path to buy.",[16,363,203],{"id":202},[12,365,366],{},"A store can be fast, cheap to run, and fully under the owner's control. This is the e-commerce baseline I build to: quick on a phone, simple to manage, and honest about how it asks people to buy.",{"title":38,"searchDepth":39,"depth":40,"links":368},[369,370,371],{"id":190,"depth":39,"text":191},{"id":25,"depth":39,"text":26},{"id":202,"depth":39,"text":203},"\u002Fwork\u002Fkestrel-store.png",{},7,"\u002Fwork\u002Fen\u002Fkestrel-store","Off-the-shelf stores feel generic, load slowly on mobile, and take a cut of every sale.",[378,380,383,385],{"num":220,"label":379},"Lighthouse score",{"num":381,"label":382},"0.6s","First contentful paint",{"num":332,"label":384},"Steps to checkout",{"num":56,"label":117},{"title":345,"description":351},"kestrel-store","Nuxt · Nuxt Content · Stripe","work\u002Fen\u002Fkestrel-store","A fast, custom storefront with a two-step checkout and nothing in the way of the sale.","kOOPp2C079BQ0hWJUhEpYMMXYRIBA59d1T4rt7O_cgc",{"id":393,"title":394,"approach":395,"body":396,"description":38,"extension":45,"image":427,"live":213,"locale":48,"meta":428,"navigation":47,"order":429,"path":430,"problem":431,"projectType":432,"results":433,"seo":442,"slug":443,"stack":444,"stem":445,"summary":446,"timeline":447,"year":448,"__hash__":449},"work\u002Fwork\u002Fen\u002Fclinic-website.md","Clinic website rebuild.","A fast, SEO-focused rebuild with online appointment requests.",{"type":9,"value":397,"toc":422},[398,402,405,409,412,415,419],[16,399,401],{"id":400},"challenge","Challenge",[12,403,404],{},"An outdated clinic site loaded slowly, ranked poorly for local searches, and gave patients no easy way to request an appointment.",[16,406,408],{"id":407},"approach","Approach",[12,410,411],{},"A fast, SEO-focused rebuild with clean structure, local search terms, and online appointment requests front and center.",[12,413,414],{},"A simple CMS so staff update hours and services themselves.",[16,416,418],{"id":417},"outcome","Outcome",[12,420,421],{},"The concept shows a site that loads instantly and turns local searches into booked appointments.",{"title":38,"searchDepth":39,"depth":40,"links":423},[424,425,426],{"id":400,"depth":39,"text":401},{"id":407,"depth":39,"text":408},{"id":417,"depth":39,"text":418},"\u002Fwork\u002Fclinic-website.png",{},8,"\u002Fwork\u002Fen\u002Fclinic-website","An outdated site that ranked poorly and converted worse.","Website · concept",[434,437,440],{"num":435,"label":436},"\u003C1s","Load time target",{"num":438,"label":439},"+SEO","Structured for local search",{"num":167,"label":441},"Online appointment requests",{"title":394,"description":38},"clinic-website","Astro · CMS","work\u002Fen\u002Fclinic-website","A concept rebuild turning a slow, invisible clinic site into a fast, bookable one.","~3 weeks","2025","J7HmkqNqRv_2inEst0-8pKvCuSmYMRD_FfsOqu-E5so",{"id":451,"title":452,"approach":453,"body":454,"description":38,"extension":45,"image":479,"live":213,"locale":48,"meta":480,"navigation":47,"order":481,"path":482,"problem":483,"projectType":484,"results":485,"seo":494,"slug":495,"stack":496,"stem":497,"summary":498,"timeline":499,"year":73,"__hash__":500},"work\u002Fwork\u002Fen\u002Ffintech-dashboard.md","Fintech operations dashboard.","A role-based dashboard that unifies accounts, flags anomalies, and exports clean reports.",{"type":9,"value":455,"toc":474},[456,458,461,463,466,469,471],[16,457,401],{"id":400},[12,459,460],{},"A growing finance team was reconciling accounts by hand across a dozen spreadsheets. Errors were frequent, reporting took days, and nobody trusted the numbers.",[16,462,408],{"id":407},[12,464,465],{},"I modeled the real workflow first, then built a role-based dashboard that unifies accounts, flags anomalies automatically, and generates clean reports.",[12,467,468],{},"Delivery was phased so the team used a working slice within weeks and steered the rest.",[16,470,418],{"id":417},[12,472,473],{},"The concept demonstrates a single source of truth, with exports that turn a multi-day process into minutes.",{"title":38,"searchDepth":39,"depth":40,"links":475},[476,477,478],{"id":400,"depth":39,"text":401},{"id":407,"depth":39,"text":408},{"id":417,"depth":39,"text":418},"\u002Fwork\u002Ffintech-dashboard.png",{},9,"\u002Fwork\u002Fen\u002Ffintech-dashboard","A finance team drowning in spreadsheets and manual reconciliation.","Web app · concept",[486,489,491],{"num":487,"label":488},"−90%","Time spent on manual reconciliation",{"num":111,"label":490},"Source of truth instead of 12 sheets",{"num":492,"label":493},"Real-time","Anomaly flagging",{"title":452,"description":38},"fintech-dashboard","React · TypeScript · Postgres","work\u002Fen\u002Ffintech-dashboard","A concept build showing how a finance team could replace spreadsheet chaos with one role-based dashboard.","~10 weeks","6hHFeNHH19CNrMgXZSVjEeKsjAH-QwNl8MD8ms2P-uI",{"id":502,"title":503,"approach":504,"body":505,"description":38,"extension":45,"image":530,"live":213,"locale":48,"meta":531,"navigation":47,"order":532,"path":533,"problem":534,"projectType":535,"results":536,"seo":546,"slug":547,"stack":548,"stem":549,"summary":550,"timeline":551,"year":448,"__hash__":552},"work\u002Fwork\u002Fen\u002Fbooking-mvp.md","Booking MVP.","A lean MVP shipped in weeks — bookings, payments, and a simple admin.",{"type":9,"value":506,"toc":525},[507,509,512,514,517,520,522],[16,508,401],{"id":400},[12,510,511],{},"A founder needed to test whether people would pay for an online booking product before investing in a full build.",[16,513,408],{"id":407},[12,515,516],{},"One core loop done well: search, book, pay. A simple admin to manage availability. Everything else deferred.",[12,518,519],{},"Shipped fast so the founder could put it in front of real users immediately.",[16,521,418],{"id":417},[12,523,524],{},"The concept demonstrates a testable product that answers the riskiest question — will people pay — at minimal cost.",{"title":38,"searchDepth":39,"depth":40,"links":526},[527,528,529],{"id":400,"depth":39,"text":401},{"id":407,"depth":39,"text":408},{"id":417,"depth":39,"text":418},"\u002Fwork\u002Fbooking-mvp.png",{},10,"\u002Fwork\u002Fen\u002Fbooking-mvp","A founder needing to validate a scheduling product quickly.","MVP · concept",[537,540,543],{"num":538,"label":539},"6 wks","Concept to launchable",{"num":111,"label":541,"done well":542},"Core loop",null,{"num":544,"label":545},"$","Real payments from day one",{"title":503,"description":38},"booking-mvp","Node · Postgres","work\u002Fen\u002Fbooking-mvp","A lean MVP concept built to validate a scheduling product in weeks, not months.","~6 weeks","DpRt3iFW_r46eCTSCsDOfS01bjG8SLDZutxfSrRxTrg",{"id":554,"title":555,"approach":556,"body":557,"description":38,"extension":45,"image":582,"live":213,"locale":48,"meta":583,"navigation":47,"order":584,"path":585,"problem":586,"projectType":587,"results":588,"seo":596,"slug":597,"stack":598,"stem":599,"summary":600,"timeline":601,"year":73,"__hash__":602},"work\u002Fwork\u002Fen\u002Fboutique-storefront.md","Boutique storefront.","A fast branded store with local + card payments and self-serve inventory.",{"type":9,"value":558,"toc":577},[559,561,564,566,569,572,574],[16,560,401],{"id":400},[12,562,563],{},"A small maker was selling through a marketplace that took a large cut and owned the customer relationship. Growth meant giving away more margin.",[16,565,408],{"id":407},[12,567,568],{},"A fast, branded store with a clean catalog, frictionless checkout, and both local and card payments.",[12,570,571],{},"Self-serve inventory and orders so the owner runs everything without a developer.",[16,573,418],{"id":417},[12,575,576],{},"The concept shows a store that pays for itself by recovering marketplace fees within months.",{"title":38,"searchDepth":39,"depth":40,"links":578},[579,580,581],{"id":400,"depth":39,"text":401},{"id":407,"depth":39,"text":408},{"id":417,"depth":39,"text":418},"\u002Fwork\u002Fboutique-storefront.png",{},11,"\u002Fwork\u002Fen\u002Fboutique-storefront","A maker outgrowing a marketplace and losing margin to fees.","E-commerce · concept",[589,592,594],{"num":590,"label":591},"0%","Marketplace commission",{"num":435,"label":593},"Product page load target",{"num":56,"label":595},"Owned customer data",{"title":555,"description":38},"boutique-storefront","Next.js · Stripe","work\u002Fen\u002Fboutique-storefront","A concept for a maker outgrowing a marketplace — a fast branded store that keeps the margin.","~5 weeks","sco7jBpAbpbnx5YW4Tj2eFX2NOg22Ua7DHj3Z6JGYyQ",1783956932217]