# GENERATED at build time by websites/scripts/generate-llms-full.mjs — not committed. # The full text of every indexable page on https://devsaran.com. The curated index is /llms.txt. # Pradeep Saran ## Pradeep Saran — Technical Architect & Founder URL: https://devsaran.com/ Technical Architect · Founder · Worldwide # I build commerce platforms engineered for 100+ countries . I'm Pradeep Saran — 14+ years designing distributed, multi-tenant SaaS end to end. See the Work About Me Founder of Devkart Technologies, where I architect SuperApp, a white-label multi-vertical marketplace platform , and Supaorder, zero-commission ordering for restaurant brands — and Devfood, white-label ordering for food & beverage brands at Future Stacks. Years architecting platforms 14+ Countries supported 100+ Drupal sites reporting 12,000+ Orders/month at peak 80K+ Now Building ## Three products, one obsession: commerce platforms At Devkart Technologies and Future Stacks I productize fourteen years of marketplace architecture into white-label SaaS that any brand can launch on. ### SuperApp superapphq.com White-label multi-vertical marketplace platform An enterprise-grade, white-label marketplace platform for food, retail, and grocery. One multi-tenant backend launches branded customer, partner, and business apps for iOS, Android, and web — across 100+ countries, with local-currency pricing, and fully translatable. Explore SuperApp at superapphq.com ### Supaorder supaorder.com Zero-commission ordering for restaurant brands A commission-free, white-label ordering platform for restaurants — branded native iOS and Android apps, real-time order management, a multi-tier loyalty engine, and built-in analytics. Explore Supaorder at supaorder.com ### Devfood devfood.com Future Stacks White-label ordering for food & beverage brands A white-label online ordering platform — branded customer, restaurant, driver, and admin apps for web, iOS, and Android, with zero per-order commission and per-location pricing. Explore Devfood at devfood.com SuperApp and Supaorder differ in how they are sold more than in what they are made of. SuperApp grows by vertical — food, retail and supermarket marketplace modules sharing one core — while Supaorder grows by location, on a flat monthly fee per restaurant location rather than a commission on every order . Devfood targets food & beverage brands with four connected apps, priced per location per month with zero commission at any volume — operated by Future Stacks, a sister company to Devkart. SuperApp and Supaorder are built and run by Devkart Technologies LLP — the studio I have run under the Devkart name since 2019, incorporated in April 2025; Devfood by Future Stacks. — the full story → Selected Work ## Real businesses run on these platforms From Bosnia's #2 delivery aggregator to a Dragons' Den-featured dessert brand — case studies from a decade of marketplace engineering. ### Ceger Dostava Jan 2019 – Dec 2022 Banja Luka, Bosnia & Herzegovina Built the platform behind Bosnia's #2 food delivery aggregator — 80,000+ orders a month, acquired by Korpa in 2022. #2 Food aggregator in Bosnia 80,000+ Orders per month at peak 2022 Acquired by Korpa Read case study ### Menuro Jan 2025 – Present Canada Technology partner to Menuro, which states 100+ restaurants on menuro.io — branded ordering apps, commission-free, with loyalty and franchise controls. 100+ Restaurants, as stated by Menuro 0% Commission for restaurants Multi-location Franchise & chain controls Read case study ### Marry Me Mochi Jan 2025 – Present Toronto, Canada Direct ordering, loyalty, and marketing automation for a Dragons' Den-featured dessert brand with 75,000+ customers. 75,000+ Customers on the platform Dragons' Den Featured on CBC Multi-location Toronto & beyond Read case study ### Green Delivery Ibiza Jun 2022 – Present Ibiza, Spain One super app for an entire island — food, grocery, pharmacy, drinks, and yacht provisioning across Ibiza. 5 Verticals in one app Island-wide Delivery coverage Yachts Provisioning included Read case study Prefer the thinking behind the systems? Read the writing → ## 41 Drupal projects. 15 years. Before SaaS, there was open source — 25 free themes and 16 modules shipped to the Drupal community over 15+ years. It's still where this site's story starts. Explore Open Source ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## About Pradeep Saran — 14+ Years of Platforms URL: https://devsaran.com/about About # Fourteen years of turning ambiguous product goals into systems that scale . I'm Pradeep Saran, a technical architect working remote-first with teams worldwide. For 14+ years I've designed and delivered web, mobile, and cloud platforms end to end — defining system architecture, technology strategy, and the non-functional foundations that make multi-tenant, real-time SaaS actually hold up: scalability, reliability, security, and data consistency. My path started in open source. I joined the Drupal community in 2010, and while working at SourceN in 2012 began publishing free Drupal themes under the Devsaran banner — work that grew to 25 themes and 16 modules, still reporting more than 12,000 websites, and led to reviewing a Packt Publishing book on premium Drupal theming. That community-first habit taught me the discipline that still shapes how I build: ship things other people can run without you in the room. In 2018 I co-founded Future Stacks and have been lead architect of DevFood ever since — a restaurant ordering and management platform — multi-tenant Node.js and Firebase, real-time order pipelines, payment processing, and native apps serving restaurants and aggregators in multiple countries. The businesses built on that platform are the case studies on this site : a national #2 delivery aggregator that got acquired, a technology partner, Menuro, which states 100+ restaurants on menuro.io, an island-wide super app. I had been working under the Devkart name since 2019; in April 2025 I incorporated Devkart Technologies LLP to productize all of it. Today I architect SuperApp — a white-label, multi-vertical marketplace platform built for 100+ countries, local-currency pricing, and a fully translatable interface — and Supaorder , a zero-commission ordering platform that gives restaurant brands their own native apps, loyalty engine, and analytics. I set the technical standards, select the stack, and mentor the engineers — while staying hands-on enough to build the hardest parts myself. Download my résumé (PDF) — the same history, in two pages. Career ## The road so far - Apr 2025 – Present ### Founder & Technical Architect · Devkart Technologies LLP Building white-label ordering, loyalty, and delivery SaaS — SuperApp and Supaorder. Architected SuperApp — an enterprise-grade, white-label, multi-vertical marketplace platform that launches branded customer, partner, and business apps for iOS, Android, and web from one multi-tenant backend, with support for 100+ countries, local-currency pricing, and a fully translatable interface. - Designed Supaorder — a zero-commission, white-label restaurant ordering platform with native apps, real-time order management, a multi-tier loyalty engine, and built-in analytics. - Own every layer end to end: multi-tenant data model, REST + real-time APIs, RBAC, event-driven order pipeline, payments across many providers and markets through PCI DSS-compliant processors, Redis caching, Angular + Ionic/Capacitor apps, and AWS/Firebase deployment with CI/CD. - Feb 2018 – Present ### Lead Architect & Technical Co-Founder · Future Stacks Co-founded a restaurant ordering technology company that still operates its flagship product, DevFood. Day-to-day focus moved to Devkart in April 2025; DevFood architecture ownership continues. Architected the multi-tenant Node.js / Firebase backend for DevFood — a restaurant ordering and management platform — with REST and real-time order APIs, payment processing, and high-availability deployment engineered for fault tolerance under transactional load. - Directed Angular + Ionic/Capacitor front-end and mobile architecture across iOS, Android, and web for restaurants and aggregators in multiple countries, and led the engineering team, code reviews, and release process. - Jul 2015 – Feb 2018 ### Independent Architect & Consultant · Devsaran Architecture and full-stack consulting for web and mobile platforms — the same banner this site carries today. - Sep 2014 – Jun 2015 ### Senior Software Developer · Megalon eConcepts Node.js and front-end engineering. - Aug 2013 – Aug 2014 ### Development Guru · Langoor PHP and Drupal development — Best Performer of the Year. - Jun 2012 – Aug 2013 ### Software Developer · SourceN Drupal and JavaScript for clients including Dell and Seed&Spark — and where devsaran.com was born as a side project. Toolbox ## What I work with ### Architecture Multi-tenant SaaS Distributed systems Event-driven design Microservices API & integration design Data architecture Scalability & HA Security & compliance ### Back-End Node.js Express Firebase REST APIs GraphQL Kafka WebSockets / real-time Auth & RBAC ### Front-End & Mobile Angular RxJS React TypeScript Ionic / Capacitor iOS & Android Fastlane delivery ### Data & Cloud AWS Docker CI/CD PostgreSQL MongoDB Redis Supabase Nginx Linux Recognition ## Along the way - ### Technical reviewer — "Instant Premium Drupal Themes" (Packt Publishing) Reviewed the Packt Publishing title on premium Drupal theming, drawing on years of shipping themes to the community. - ### Drupal open-source contributor — 41 projects, 15 years 25 free themes and 16 contributed modules over 15 years on drupal.org, still reporting more than 12,000 live installs. View profile - ### B.Tech, Information Technology Sasurie Academy of Engineering (Anna University), Coimbatore — 2008–2012. ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Contact Pradeep Saran — Platform Architecture URL: https://devsaran.com/contact Contact # Let's talk platforms . Marketplace architecture, multi-tenant SaaS, white-label ordering, or a partnership — I work with founders and teams worldwide, remote-first. Email saran@devsaran.com Best for project inquiries — I reply within a day. LinkedIn linkedin.com/in/devsaran Professional profile and network. GitHub github.com/devsaran Code, experiments, and side projects. Drupal.org drupal.org/u/devsaran 25 themes and 16 modules, 15 years. Remote-first · Working worldwide ## When you will hear back Within a day, including the ones that turn out not to be a fit — I would rather say so quickly than let a thread go quiet. I work remote-first across time zones, so a message sent overnight is usually answered by the time you are back at your desk. Email is the reliable route. The LinkedIn, GitHub and drupal.org profiles above are worth following if you want to see the work rather than start a conversation about it — the drupal.org profile in particular is an archived chapter, not an active inbox. ## What to include A one-line message gets a one-line reply asking for the rest. What actually helps: what you are building, what has already been tried, and what the constraint really is — a date, a budget, a team that has to be able to maintain it afterwards. The work I take on is platform-shaped: marketplace architecture, multi-tenant SaaS, white-label ordering, and the partnership conversations that come with them. Three of those platforms are running now — SuperApp , Supaorder and the studio behind them, Devkart Technologies . If a build belongs with the studio rather than with me directly, I will say so and point you there. Background first, if you would rather read than write: how I got here , what I have shipped , and what I think about while shipping it . ## Open Source — 25 Free Drupal Themes URL: https://devsaran.com/open-source Open Source # 25 Drupal themes. 15 years of maintenance. Free, GPL-licensed Drupal themes published under the Devsaran name and maintained on drupal.org/u/devsaran . This is a decade-old chapter, kept here because the themes are still installed and still linked to — not because it is what I do now. Free Drupal themes 25 Sites reporting, October 2026 12,000+ On drupal.org 15 yrs The work ## Three years of shipping code strangers would run The first release went out in October 2011 and the last theme in September 2014 — twenty-five free, GPL-licensed Drupal 7 themes published under the Devsaran name, most of them written in evenings alongside client work. What that taught was not the code. It was what happens afterwards: the issue queue, the person on Drupal 6 who needs a backport, the person whose site broke because you renamed something in a point release. Once a few hundred sites are running your work you stop being the author and become the maintainer, and every decision gets measured by what it costs the people who already installed it. The themes were a bigger undertaking than they look. A Drupal 7 theme in 2012 was not a stylesheet. It was a full set of PHP templates, a preprocess layer, a region map, a Color-module integration, and CSS that had to survive Internet Explorer 7 — because clients still had it — while also looking deliberate on an iPad. Most of these themes inherit from no core base theme at all, because Bartik and Seven came with markup assumptions that turned every customisation into an argument with an override. Building from nothing was more work up front and far less work for everyone who installed it. You can watch the industry change across the release dates. The themes from early 2012 are fixed-width: 900px, 920px, 960px, 978px, 980px, 1000px — every one of them an answer to the same arithmetic about a 1024px screen and a scrollbar. By mid-2012 responsive layouts arrive and stop being a retrofit. By the end of 2013 the gradients and bevels are gone and flat design has taken over. Three years of front-end history, legible in a list of release notes. ## What it still gives the platform work The through-line from a free Drupal theme to a multi-tenant commerce platform is not the technology — none of that PHP survives — it is the constraint. When strangers run your code you cannot fix a mistake by editing production. You ship a version, they choose whether to take it, and every decision you make is paid for by people you will never meet. That is the same discipline a platform serving many brands at once demands, with more money attached and a much larger blast radius. Three specific habits came out of it. The first is that variation belongs in configuration, not in a fork: I released one theme as a separate project when it should have been a colour scheme inside an existing one, and paid for it in duplicated fixes for years — which is precisely the failure a white-label platform exists to prevent. The second is that every configurable thing you expose is a promise you have to keep through every future release, so extensibility is a liability you take on deliberately rather than a free upgrade. The third is that integrations belong behind an interface: two competing Indian payment processors, each with its own idea of what a completed transaction looks like, is the same argument that now keeps dozens of payment methods behind one internal abstraction in the platforms I build at Devkart Technologies . A note on the numbers, because they deserve one. The install figures on the project pages here are drupal.org's own current reporting — the sites that still phone home through the update system — not lifetime downloads. Drupal 7 reached end of life in January 2025, so those counts describe what is still running a decade after the last release, rather than everything that was ever installed. They are quoted exactly as drupal.org states them, and nowhere on this page are they estimated. One project needs flagging rather than featuring. Nexus Theme now sits in drupal.org's Unsupported Projects queue after a security issue went unfixed, and its releases are no longer recommended. It is listed below with the rest, because leaving it out would be tidier and less honest. Featured ## Three worth reading about The two most-installed themes, and the one that taught me the most by being a mistake. ### Business The first theme, January 2012 — published while I was doing Drupal work at SourceN. The first theme I published and still the most installed — a base-theme-free corporate layout with twelve regions and Color-module support. Read about Business ### Professional Theme Mid-2012 — the point where responsive stopped being a retrofit and became the starting assumption. A responsive corporate theme with one-, two- and three-column layouts, FlexSlider, and an explicit run at WCAG compliance. Read about Professional ### Impact Theme May 2013 — a mid-run variant, and the decision I would reverse if I could. A dark restyle of Responsive Blog, released as its own project — and the clearest mistake in this catalogue. Read about Impact Themes ## Every theme on the profile Drupal 7-era themes, all GPL-2.0-or-later. Titles that link internally have a page here; the rest go straight to drupal.org, where the downloads and release history live. - ### Venture Theme A flat-design responsive business theme from 2014 — two releases in a single month, and one of the most adopted themes in the set. 1,369 installs 2 releases drupal.org - ### Multipurpose Theme The last theme I published, in September 2014 — flat, responsive, multilingual menus, and exactly one release. 723 installs 1 releases drupal.org - ### Premium Responsive Four breakpoint layouts, eleven regions and two Color-module schemes — the first theme where responsive was the premise, not a patch. 706 installs 8 releases drupal.org - ### Responsive Blog A responsive blog and magazine theme with light and dark schemes — and the base another theme in this list was forked from. 616 installs 8 releases drupal.org - ### Best Responsive A lightweight responsive business and portfolio theme — minimal markup, twelve regions, captioned FlexSlider. 577 installs 3 releases drupal.org - ### Responsive Business A mobile-first business and portfolio theme with an extended four-block footer and a captioned slideshow. 303 installs 3 releases drupal.org - ### Simple Corporate Sixteen regions, eight of them in the footer, and the longest release span of any theme in the set — two years. 278 installs 8 releases drupal.org - ### Dark Elegant A dark corporate and portfolio theme with a customisable background image, FlexSlider, and IE7 in the test matrix. 268 installs 2 releases drupal.org - ### Blogger theme A minimal, typography-led responsive theme for writers, freelancers and portfolios. 208 installs 1 releases drupal.org - ### Creative Theme A clean 978px business and portfolio theme built around a jQuery Cycle slideshow and twelve regions. 224 installs 5 releases drupal.org - ### Fresh Theme A blog and magazine theme with ten-plus collapsible block regions, maintained across two years. 156 installs 8 releases drupal.org - ### Clean Theme A minimal 980px theme with Nivo Slider and markup written for source order and heading structure. 166 installs 5 releases drupal.org - ### Corporate Agency The first of the flat-design themes, from December 2013 — the visual language Venture and Multipurpose then reused. 164 installs 1 releases drupal.org - ### Elegant Theme A 920px corporate theme with a four-region custom front page, a three-block footer and a scroll-to-top control. 148 installs 4 releases drupal.org - ### Black Premium An all-black 900px theme built to make photography and video the only thing on the page, with adjustable colour accents. 97 installs 4 releases drupal.org - ### Company Theme A 940px corporate theme with sixteen block regions and a captioned slideshow, for portfolio and business sites. 77 installs 6 releases drupal.org - ### Beauty Theme A responsive blog and magazine theme with twelve regions, aimed at news and editorial sites. 64 installs 2 releases drupal.org - ### Premium Corporate A lightweight 920px business theme with a fully customisable Nivo Slider and a configurable background image. 75 installs 5 releases drupal.org - ### Splendio A 980px blog and magazine theme with post thumbnails and a configurable mega-footer menu — published the same month as Business. 40 installs 1 releases drupal.org - ### Classic Blog A minimal 960px blogging theme built on the 960 grid system, with five regions and HTML5 markup. 20 installs 2 releases drupal.org - ### Nexus Theme A flat responsive theme now held in drupal.org's Unsupported Projects queue after an unfixed security issue; its releases are no longer recommended. 1,886 installs Co-maintained Unsupported drupal.org - ### Mozilla Community Sites A proposed Drupal theme for Mozilla community sites, created by abhisheknagar and co-maintained. Co-maintained drupal.org Alongside the themes there were sixteen contributed modules — payment gateways, jQuery-plugin wrappers and small integrations, several tied to services that have since shut down. Most are a line on the drupal.org profile and nothing more. Four are written up here: Commerce CCAvenue , still shipping releases for Drupal 11 fifteen years after I wrote it; Fit Text , the most installed of them; and Commerce EBS and Dwolla , the two that failed — which is what makes them worth reading. Community ## Beyond the code ### Packt technical reviewer Technical reviewer of "Instant Premium Drupal Themes" (Packt Publishing) — vetting the book the way the community vetted my themes. ### 15+ years on drupal.org Member of the Drupal community since 2010 — every theme and module on this page is still listed on my profile . ### GitHub Side projects and experiments — an Ionic taxi-app starter, a contact manager, a project management app — live at github.com/devsaran . These days my open-source energy goes into the platforms at Devkart Technologies — see what I'm building now → ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Best Responsive — Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/best-responsive # Best Responsive Free Drupal theme · GPL-2.0-or-later A lightweight responsive business and portfolio theme — minimal markup, twelve regions, captioned FlexSlider. November 2012 — the lean end of the responsive theme run. Best Responsive is the trimmed-down member of the responsive group. Businesses, portfolios, agencies and blogs all get the same shape: a one- or two-column layout, twelve block regions, a captioned FlexSlider front page, social links, and very little else. The design brief was to remove rather than to add. That restraint is the point. Every decorative flourish in a Drupal 7 theme costs an image request, a rule in a stylesheet that someone will eventually need to override, and a piece of markup that has to survive being filled with content nobody anticipated. Themes that looked impressive in a screenshot and collapsed under a real client's three-line page title were common in that era; the way to avoid it is to design for the ugly case first. Three releases across ten months. The low release count reflects a genuinely small surface area — there was less in it to go wrong, and the issue queue stayed correspondingly quiet. Over six hundred sites still report running it, which for a theme that was deliberately unambitious is a reasonable result. The habit it built is one I still apply to product decisions: the feature you did not ship is the only one guaranteed not to break, and on a platform serving many tenants at once, "less to configure" and "less to support" are the same sentence. Project page drupal.org/project/best_responsive Reported installs 577 sites report using it on drupal.org, as of October 2026 Releases I shipped 3, November 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Choosing a multi-tenant data model . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Blogger — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/blogger-theme # Blogger theme Free Drupal theme · GPL-2.0-or-later A minimal, typography-led responsive theme for writers, freelancers and portfolios. June 2014 — published in the same month as Venture, at the end of the theming run. Blogger is the theme in this catalogue with the least in it, which was the whole intention. It is aimed at writers, freelancers and one-person portfolios: a reading column, generous line height, a small amount of navigation, and no visual furniture competing with the text. Twelve block regions are available, but the default configuration uses very few of them. It is fully responsive and was tested on iPhone and iPad specifically, which by mid-2014 was the realistic minimum. Like the other themes from that year it uses FlexSlider for a captioned front-page slideshow and expects jQuery Update configured to 1.8, because Drupal 7 core's bundled jQuery was too old to run it. One release, in June 2014, and then nothing — it shipped in the same month as Venture, right at the point where my attention moved to application work. Around 220 sites still report running it. For a theme with a single release and no follow-up that is a decent showing, and it is mostly explained by the brief: a minimal writing theme has very little that can go wrong, so there was very little to fix. The design argument it makes is one I still believe. On a content site the typography is not decoration applied to the product — it is the product, and every element you add around it is competing with the thing the visitor came for. Project page drupal.org/project/blogger_theme Reported installs 208 sites report using it on drupal.org, as of October 2026 Releases I shipped 1, June 2014 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: The writing this site now carries . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Business — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/business-theme # Business Free Drupal theme · GPL-2.0-or-later The first theme I published and still the most installed — a base-theme-free corporate layout with twelve regions and Color-module support. The first theme, January 2012 — published while I was doing Drupal work at SourceN. Business was the first theme I released under the Devsaran banner, in January 2012, and it is still the most widely installed thing I have ever written. It was built for the least glamorous job on the web: a small or medium company that needs a credible site this week, with a slideshow on the front page and somewhere sensible to put a phone number. It deliberately depends on no base theme. Drupal 7 core shipped Bartik and Seven with assumptions baked into their markup, and inheriting from either turned every customisation into a fight with an override. So Business ships its own templates and its own CSS from the ground up — twelve block regions, a custom front page using four of them, a sidebar configurable to the left or the right, and Color module integration so a site owner could recolour the whole thing without opening a stylesheet. The Drupal 7 build is fixed at 920px, which is what a modern layout meant in early 2012; the later Drupal 8 work made it responsive. Twelve releases went out over twenty months, and most of them were driven by issue-queue reports rather than by anything I had planned. That is the part that shaped how I work now. Once a few hundred sites are running your code you stop being the author and become the maintainer, and every decision gets measured by what it costs the people who already installed it — which is the same calculation a multi-tenant platform forces on you a decade later, at a much larger blast radius. Business has also outlived my involvement. Other maintainers carried it onto Drupal 8, 9 and 10, and drupal.org still reports installs on those branches alongside the Drupal 7 one. A theme that keeps moving after its original author stops touching it is the clearest evidence I have that releasing it was worth the effort. Project page drupal.org/project/business Reported installs 2,273 sites report using it on drupal.org, as of October 2026 Releases I shipped 12, January 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: How the Drupal years led to platform architecture . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Clean — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/clean-theme # Clean Theme Free Drupal theme · GPL-2.0-or-later A minimal 980px theme with Nivo Slider and markup written for source order and heading structure. July 2012 — from the fixed-width run, with the first serious attention to markup structure. Clean is a minimal 980px theme for bloggers, small businesses and portfolios: twelve block regions, a one- or two-column layout, a sidebar that can sit on either side, and a Nivo Slider front page with captions. The line on its project page I still care about is the one about markup: content source ordered, tableless design, and heading optimisation. In 2012 that combination was not universal. Plenty of contributed themes still used tables for layout, or emitted a sidebar before the main content in the HTML and pushed it back visually with CSS — which meant a screen reader, and a crawler, met the navigation and the block soup before they met the article. Clean puts the content first in the source and lets CSS place it, and its headings descend in order rather than being picked for their font size. That is the same argument I make now about semantic markup and rendering strategy, with better tooling behind it. Search engines and assistive technology both read the document, not the design, and a theme that gets the document right does something for every site that installs it which no amount of styling can substitute for. Five releases over fourteen months, and around 160 sites still reporting. Nivo Slider is the part that has aged worst — an abandoned jQuery plugin is a liability rather than a feature — and it is the piece I would strip if this were still an active project. Project page drupal.org/project/clean_theme Reported installs 166 sites report using it on drupal.org, as of October 2026 Releases I shipped 5, July 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Why the URLs and the markup carry the authority . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Commerce CCAvenue — Drupal Module | Pradeep Saran URL: https://devsaran.com/open-source/commerce-ccavenue # Commerce CCAvenue Payment Gateway Free Drupal module · GPL-2.0-or-later A CCAvenue payment gateway for Drupal Commerce — created in 2011, and still shipping releases for Drupal 10 and 11 today. November 2011 — the oldest project in this catalogue, and the only one still receiving releases. Commerce CCAvenue integrates the CCAvenue payment processing service into Drupal Commerce. It was the first project I created on drupal.org, in November 2011, and it is the only one still receiving releases: the current stable version declares compatibility with Drupal 10.1 and Drupal 11, and shipped in October 2025. The problem it addressed was regional and completely practical. Drupal Commerce in 2011 assumed a Western payments world — PayPal, Authorize.Net, a card gateway with a familiar API. An Indian merchant needed CCAvenue, which meant credit cards, ATM-cum-debit cards, direct bank debits, cash cards and mobile payments through a single processor with its own redirect flow, its own checksum scheme and its own conventions about what a completed transaction looks like. Without a module, every one of those merchants was writing the same integration privately. Fifteen years of maintenance is not my doing alone; the project has several maintainers now and I am one name among them. But it is the clearest illustration I have of what open source actually returns. A payment adapter written for one client's problem in 2011 became infrastructure that outlived the version of Drupal it was written for, three major core releases, and my own move out of the ecosystem entirely. It also set a pattern I have used on every commerce platform since: put the gateway behind an internal abstraction so the order pipeline speaks one language, and let each processor's peculiarities live in an adapter that can be replaced without touching the checkout. Project page drupal.org/project/commerce_ccavenue Reported installs 66 sites report using it on drupal.org, as of October 2026 Releases I shipped 3, March 2012 – January 2014 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other modules, and everything alongside them, are on the open-source index — and next from here: Payments without swallowing PCI scope . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Commerce EBS — Free Drupal Module | Pradeep Saran URL: https://devsaran.com/open-source/commerce-ebs # Commerce EBS Payment Gateway Free Drupal module · GPL-2.0-or-later An EBS payment gateway for Drupal Commerce, covering Indian cards, net banking and cash cards through one processor. November 2011 — the second of two Indian payment gateways written in the same stretch. Commerce EBS implements the E-Billing Solutions gateway in Drupal Commerce. It was created in the same week as the CCAvenue module, for the same reason and against the same gap: Indian merchants running Drupal Commerce had no supported way to take money from Indian customers. The gateway's coverage is the interesting part, because it explains why one adapter was never going to be enough. EBS handled Visa, Mastercard and Diners credit cards; debit cards across roughly ten banks including Axis, HDFC, ICICI, SBI and Citibank; net banking through a separate set of banks; and ITZ cash cards. Each of those is a different flow with different failure modes, and a merchant chose their processor partly on which of them their customers actually used. CCAvenue and EBS were competitors, so supporting both meant an Indian Drupal Commerce site could pick on price and coverage rather than on which one happened to have a module. It reached a stable 7.x-1.0 in November 2012 after a dev release that summer, and that was the end of it. drupal.org reports no current usage — Drupal 7 is end-of-life, Drupal Commerce moved on, and EBS itself was absorbed into a larger payments group. Listing it here with that stated plainly is more useful than pretending otherwise. The design lesson survived the module. Two competing processors serving the same market, each with its own idea of a transaction, is precisely the argument for keeping payment providers behind one internal interface — which is how the platforms I build now handle a far longer list of them. Project page drupal.org/project/commerce_ebs Releases I shipped 2, July 2012 – November 2012 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other modules, and everything alongside them, are on the open-source index — and next from here: Wrapping providers behind one payment abstraction . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Corporate Agency — Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/corporate-agency # Corporate Agency Free Drupal theme · GPL-2.0-or-later The first of the flat-design themes, from December 2013 — the visual language Venture and Multipurpose then reused. December 2013 — the first flat-design theme, and the template for the two that followed. Corporate Agency is where the flat-design run in this catalogue starts. Released in December 2013, it drops the gradients, bevels and drop shadows every theme before it used to signal that something was a button, and replaces them with flat colour, weight and spacing. Venture and Multipurpose, published six and nine months later, are built on the same vocabulary. Underneath the restyle it is a conventional business and portfolio theme: twelve block regions, a one- or two-column layout, multi-level multilingual drop-down menus, and a captioned FlexSlider front page. Like the rest of the 2013–2014 group it requires jQuery Update configured to 1.8. Flat design was genuinely harder to build than the style it replaced, for a reason worth stating. A gradient and a shadow do the work of telling a visitor that something is pressable; remove them and that information has to be carried entirely by size, colour contrast, spacing and position. Get it slightly wrong and the site is not merely plainer, it is unusable — people cannot find the button. Most of the build time went into affordance, not aesthetics. One release, and around 150 sites still reporting. It was superseded quickly by its own descendants, which is a reasonable fate for a theme whose main contribution was establishing a direction. Project page drupal.org/project/corporate_agency Reported installs 164 sites report using it on drupal.org, as of October 2026 Releases I shipped 1, December 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Venture — the theme that followed this one . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Creative — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/creative-theme # Creative Theme Free Drupal theme · GPL-2.0-or-later A clean 978px business and portfolio theme built around a jQuery Cycle slideshow and twelve regions. September 2012 — from the fixed-width run, published alongside the first responsive rebuilds. Creative is a fixed-width business and portfolio theme built on a 978px canvas, with twelve block regions, a configurable left or right sidebar, a jQuery Cycle slideshow, and social links in the header. It was published in September 2012, in the overlap where I was shipping fixed-width themes and responsive ones in the same month depending on what the brief needed. The 978px number is worth dwelling on because it explains the era. A 978px content area on a 1024px screen leaves room for a scrollbar and a small margin without horizontal scrolling — the arithmetic that produced almost every fixed-width design of that period. Every theme in this catalogue built before mid-2012 is a variation on solving that same equation, and the responsive ones are what happened when the equation stopped having one answer. Five releases over twelve months, on a single branch. The slideshow again accounted for most of the issue traffic; jQuery Cycle was reliable, but its configuration surface was large enough that installers regularly produced combinations I had never tested. What survives from Creative is not the layout, which is thoroughly of its time, but the discipline of building something with a single obvious focal point. A business site has one job on its front page, and the design either supports that or negotiates with it. Project page drupal.org/project/creative Reported installs 224 sites report using it on drupal.org, as of October 2026 Releases I shipped 5, September 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: The platforms I build now . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Dark Elegant — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/dark-elegant # Dark Elegant Free Drupal theme · GPL-2.0-or-later A dark corporate and portfolio theme with a customisable background image, FlexSlider, and IE7 in the test matrix. October 2012 — from the stretch when a dark theme was still an unusual request. Dark Elegant was built for portfolios and agencies who wanted the site to disappear behind the work: a dark 960px canvas, restrained type, and a customisable background image so a studio could put its own texture or photograph behind the whole page. Twelve block regions, a configurable left or right sidebar, and FlexSlider driving the front page. The background-image setting is the detail I would defend. It is a single theme setting that changes the entire character of a site without touching CSS, and it did more for how different two installs of this theme could look than any amount of granular colour configuration would have. Small, high-leverage settings beat large, fine-grained ones — a lesson that transfers directly to what you expose in a platform's tenant configuration. The test matrix is the detail that dates it hardest. The project page lists Safari, Chrome, Opera, Firefox, and "yes also IE7". Supporting IE7 in 2012 meant no CSS3 selectors you actually wanted, no border-radius, no box-shadow, no rgba, and a separate set of PNG fallbacks for anything with transparency — on a theme whose entire look depended on dark surfaces sitting on top of each other. A meaningful fraction of the build was making the dark palette survive a browser that could not composite it. Two releases in eleven months, which for a theme with this narrow a brief was about right. Around 270 sites still report using it. Project page drupal.org/project/dark_elegant Reported installs 268 sites report using it on drupal.org, as of October 2026 Releases I shipped 2, October 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: What happens to a decade-old site when you rebuild it . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Dwolla — Free Drupal Module | Pradeep Saran URL: https://devsaran.com/open-source/dwolla # Dwolla for Drupal Commerce Free Drupal module · GPL-2.0-or-later A Drupal Commerce integration for the Dwolla bank-transfer network — three beta releases, and a stable version that never came. November 2011 — an early bet on a payment network that did not become one. Dwolla for Drupal Commerce integrated the Dwolla payment network into a Drupal Commerce checkout. Dwolla moved money directly between US bank accounts rather than over the card rails, which meant a merchant paid no percentage and often no fee at all — a genuinely different economic proposition from processing a card, and the reason the integration looked worth writing in late 2011. Three releases went out between November 2011 and January 2012: a dev release and two betas. It never reached a stable version, and roughly two sites report using it today. There is also a companion Dwolla for Ubercart project whose own page opens by saying it is not ready for use, which is at least accurate. The reason it stopped is the useful part. Paying with Dwolla required the customer to already hold a Dwolla account, funded by a bank transfer that took two to five business days to clear. That is a fine model for sending money to a person; it is close to unusable at a checkout, where a customer arrives with an intention and a card and will not open a financial account to complete a purchase. The integration worked. The payment method did not fit the context it was being integrated into. I have used that distinction many times since. Most payment integration failures are not technical — the API works, the tokens flow, the webhooks arrive. They fail because the flow the provider requires does not match the moment in which someone is actually trying to pay, and evaluating that first is far cheaper than building the adapter and finding out. Project page drupal.org/project/dwolla Reported installs 2 sites report using it on drupal.org, as of October 2026 Releases I shipped 3, November 2011 – January 2012 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other modules, and everything alongside them, are on the open-source index — and next from here: How the order path is really judged . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Elegant — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/elegant-theme # Elegant Theme Free Drupal theme · GPL-2.0-or-later A 920px corporate theme with a four-region custom front page, a three-block footer and a scroll-to-top control. August 2012 — the middle of the fixed-width corporate run. Elegant is a 920px corporate and portfolio theme with twelve block regions, a custom front-page layout using four of them, a Nivo Slider with captions, an extended footer carrying three blocks, and a jQuery scroll-to-top control. The custom front page is the structural idea worth explaining. Rather than the front page being the same template as every other page with different blocks in it, Elegant gives it a dedicated layout with four regions arranged for the job a company home page actually does: a slideshow, then three parallel slots for services, recent work and a call to action. Drupal 7 made that awkward — you were expected to solve it with Panels or a pile of block visibility rules — so the theme solved it in a template instead. That is a trade I have made repeatedly since, in both directions. Building the special case into the layout makes the common path easy and the unusual path impossible; leaving it configurable makes everything possible and nothing obvious. For a free theme aimed at people without a site builder on hand, the opinionated version was correct. Four releases over thirteen months, and roughly 150 sites still reporting. Like Clean, its slideshow dependency is the piece that has aged worst. Project page drupal.org/project/elegant_theme Reported installs 148 sites report using it on drupal.org, as of October 2026 Releases I shipped 4, August 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: What the platform work looks like . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Fit Text — Free Drupal Module | Pradeep Saran URL: https://devsaran.com/open-source/fit-text # Fit Text Free Drupal module · GPL-2.0-or-later A Drupal port of the FitText.js plugin — headlines that scale to fill their container instead of wrapping. November 2011 — from the first wave of modules, before the themes started. Fit Text wraps Dave Rupert's FitText.js plugin as a Drupal module. The problem it solves is one CSS could not solve at the time: a headline sized in pixels is either too large on a phone or too small on a wide monitor, and a headline sized in a viewport-relative unit was not something the browsers of 2011 could be relied on to support. FitText measures the container and scales the type to fill it. The Drupal work is not the algorithm — that is the plugin's — it is the configuration surface. The module lets a site administrator enter a list of jQuery selectors in the admin UI, one per line, and set the plugin's "compressor" value, which controls how aggressively the text shrinks relative to its container. Both of those otherwise required editing a JavaScript file inside a theme, which is exactly the kind of thing that stops a site builder from using a technique at all. That is what most of these early modules actually are: a good third-party library, plus the settings form that lets someone who does not write JavaScript use it, plus the Drupal plumbing to load it on the right pages. It is unglamorous integration work, and it is also the majority of what platform engineering turns out to be — wrapping something capable in an interface the people who need it can operate. Six releases went out in November 2011, across both a 6.x-1.x and a 7.x-1.x branch, and there were none after that. It is the most installed of my modules, which is a low bar, and the reason is straightforward: it does one small thing and it kept doing it. Project page drupal.org/project/fit_text Reported installs 59 sites report using it on drupal.org, as of October 2026 Releases I shipped 6, November 2011 On branches 6.x-1.x, 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other modules, and everything alongside them, are on the open-source index — and next from here: Configuration as the product surface . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Fresh — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/fresh-theme # Fresh Theme Free Drupal theme · GPL-2.0-or-later A blog and magazine theme with ten-plus collapsible block regions, maintained across two years. April 2012 to May 2014 — one of only two themes I kept releasing for a full two years. Fresh was written for blogs and online magazines: news and features presented in a scannable order, with enough structure on the front page to give several stories room at once. It sits on a fixed 900px canvas — the narrowest in the catalogue, chosen deliberately for reading — with a one- or two-column layout and more than ten collapsible block regions. "Collapsible" is doing real work in that description. The regions disappear entirely when empty rather than leaving a gap in the grid, so an editor can turn a three-feature front page into a one-feature front page by unpublishing blocks, without anything reflowing wrongly. Getting that right is unfashionable, fiddly template work, and it is the difference between a theme that survives contact with a real editorial team and one that only looks correct filled with demo content. Eight releases spread from April 2012 to May 2014, which alongside Simple Corporate makes it one of only two themes I kept releasing for a full two years. Magazine sites change their front page constantly, so they find the edge cases nobody else does. It predates the responsive rebuild and never got one, and its test matrix — down to IE7 — shows what it was built against. Around 170 sites still report running it, most of them presumably content with a layout that has not needed to change. Project page drupal.org/project/fresh Reported installs 156 sites report using it on drupal.org, as of October 2026 Releases I shipped 8, April 2012 – May 2014 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Moving a decade-old content site without losing its rankings . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Impact — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/impact-theme # Impact Theme Free Drupal theme · GPL-2.0-or-later A dark restyle of Responsive Blog, released as its own project — and the clearest mistake in this catalogue. May 2013 — a mid-run variant, and the decision I would reverse if I could. Impact is Responsive Blog with a dark background and blue accents. The project page says so plainly, and I have never seen a reason to soften it: same layout, same twelve block regions, same configurable jQuery Cycle slideshow, same sidebar handling. What changed was the palette and some styling on the header. Releasing it as a separate project was the wrong call, and it is the clearest mistake in this catalogue. Responsive Blog already shipped two colour schemes; Impact should have been a third. Instead it became a second project node, a second issue queue, a second release cycle and a second set of installers to keep in step — all for a difference a settings form could have expressed. Every fix to the shared layout after May 2013 had to be applied twice or, more honestly, applied once and forgotten in the other. That is exactly the failure mode white-label platform work is built to prevent. When a customer wants their own look, the answer cannot be a fork of the product, because the second fork is where your release process quietly dies. It has to be configuration served per tenant from one codebase — branding, palette, typography, assets — with a single deployment path underneath. I learned that on a free Drupal theme, which is a much better place to learn it than on a platform with paying tenants. Nearly five hundred sites still run Impact, and it is still listed as maintained. It also only ever had one release, which is precisely what you would predict. Project page drupal.org/project/impact_theme Reported installs 491 sites report using it on drupal.org, as of October 2026 Releases I shipped 1, May 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Why white-label is a multi-tenancy commitment, not a theming one . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Multipurpose — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/multipurpose-theme # Multipurpose Theme Free Drupal theme · GPL-2.0-or-later The last theme I published, in September 2014 — flat, responsive, multilingual menus, and exactly one release. September 2014 — the final theme release, and the end of the Drupal theming chapter. Multipurpose is the last theme I published. It went out in September 2014 and never had a second release, which makes it a fair marker for where the Drupal theming chapter of my work ends and the application work begins. The design vocabulary is the one Venture and Corporate Agency use: flat header, flat navigation, flat buttons, and a layout that leans on whitespace rather than chrome. Twelve block regions, a one- or two-column layout, multi-level drop-down menus that work with Drupal's multilingual menu handling, and a FlexSlider front page. Like the other themes from that year it expects jQuery Update configured to 1.8. The name is the honest one for what it is. Multipurpose does not have a target audience so much as an absence of one — it was built to be the theme you reach for when the site does not fit a category, which is a real need and also the reason it has no strong point of view. Nearly eight hundred sites still report running it, and I suspect most of them chose it for exactly that reason. What I took from publishing twenty-odd of these is that generality is a design choice with a price, not a free upgrade. A theme that suits every site suits none of them especially well. The same argument, scaled up and with money attached, is the one I now have about platform verticals: a core general enough to host anything is only worth having if adding a specific vertical stays cheap. Project page drupal.org/project/multipurpose Reported installs 723 sites report using it on drupal.org, as of October 2026 Releases I shipped 1, September 2014 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: What I build now . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Premium Responsive — Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/premium-responsive # Premium Responsive Free Drupal theme · GPL-2.0-or-later Four breakpoint layouts, eleven regions and two Color-module schemes — the first theme where responsive was the premise, not a patch. May 2012 — the first theme built responsive from the first commit rather than retrofitted. Premium Responsive was the first theme I built where the responsive behaviour came first. Everything before it started as a fixed-width design that I then taught to shrink; this one starts from four distinct layouts — desktop, tablet, large phone, small phone — and lets the content pick the one that fits. It carries eleven block regions, FlexSlider for the front-page slideshow, multi-level multilingual drop-down menus, and integration with Drupal core's Color module shipping two prepared schemes. The Color module support mattered more than it sounds: it is the difference between a site owner recolouring their own site in the admin UI and filing an issue asking me to do it for them. Eight releases across sixteen months, all on the 7.x-1.x branch. The bulk of the issue traffic was not about the layout at all — it was about the slideshow, which is what happens when the one piece of your theme carrying third-party JavaScript is also the piece every installer touches first. If I were building it now the slider would be a separate, optional module and the theme would ship without it. Designing for four layouts rather than one is also where I first met the problem that dominates white-label work: the same content has to look deliberate at every size, under settings you do not control, on a device you have never seen. A theme solves that with breakpoints. A platform solves it with configuration, and the surface area is enormously larger. Project page drupal.org/project/responsive Reported installs 706 sites report using it on drupal.org, as of October 2026 Releases I shipped 8, May 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Why branding goes far deeper than colours . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Professional — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/professional-theme # Professional Theme Free Drupal theme · GPL-2.0-or-later A responsive corporate theme with one-, two- and three-column layouts, FlexSlider, and an explicit run at WCAG compliance. Mid-2012 — the point where responsive stopped being a retrofit and became the starting assumption. Professional Theme was the corporate counterpart to Business, and the release where I stopped bolting responsive behaviour onto a fixed grid and started designing for it. It supports one-, two- and three-column layouts across twelve block regions, and it swapped the fixed-size jQuery slideshows the earlier themes shipped with for FlexSlider, which actually reflows instead of scaling a fixed canvas. It is also the only theme in this set where I went after accessibility on purpose rather than by accident. The project page claims WCAG level 1 and 2 compliance, and in practice that meant heading order that survives a screen reader reading the page out of visual context, form elements with real labels rather than placeholder text doing double duty, and contrast ratios chosen by measurement instead of by eye. Two of those three are still things I have to argue for on every product I ship. Nine releases went out across two branches in fifteen months: a 7.x-1.x line, then a 7.x-2.x rewrite. The second branch existed because the first had accumulated enough compromises that patching it cost more than replacing it — every fix had to be reconciled against the layout decisions of the version before. That is a lesson about versioning I have used ever since. A major version is what you ship when the shape of the thing is wrong, not when the feature list gets long enough to seem impressive. A Drupal 8 branch was started and never finished; the project page is candid that its dev release is largely blank. Leaving that visible is more useful to anyone evaluating the theme than quietly deleting it would have been. Project page drupal.org/project/professional_theme Reported installs 1,524 sites report using it on drupal.org, as of October 2026 Releases I shipped 9, June 2012 – September 2013 On branches 7.x-1.x, 7.x-2.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Migrating off a legacy CMS without losing your SEO . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Responsive Blog — Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/responsive-blog # Responsive Blog Free Drupal theme · GPL-2.0-or-later A responsive blog and magazine theme with light and dark schemes — and the base another theme in this list was forked from. September 2012 — mid-way through the responsive rebuild of the whole theme catalogue. Responsive Blog was written for publishing rather than for selling: long text, a clear reading column, and a front page that can carry a rotating feature without turning into a shop window. It ships two prepared colour schemes, white and dark, twelve block regions, a sidebar configurable to either side, and a jQuery Cycle slideshow whose timing and transition are set in the theme settings rather than in code. Eight releases over twelve months, all on 7.x-1.x. Most of the changes were typographic — line length, heading scale, the vertical rhythm between a teaser and the next one. That is unglamorous work with a disproportionate effect: on a blog theme the spacing decisions are the product, and everything else is packaging. It is also the most reused thing I published, though not in the way that phrase usually means. Impact Theme is Responsive Blog restyled with a dark background and blue accents, released as a separate project rather than as a third colour scheme inside this one. Two projects, two issue queues, two release cycles, one codebase — the maintenance bill for that decision is set out honestly on the Impact page. The light and dark schemes already in this theme are the answer I should have applied there, and the same answer a white-label platform gives at a much larger scale: variation belongs in configuration, not in a fork. Project page drupal.org/project/responsive_blog Reported installs 616 sites report using it on drupal.org, as of October 2026 Releases I shipped 8, September 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: Impact — the theme this one was forked into . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Responsive Business — Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/responsive-business # Responsive Business Free Drupal theme · GPL-2.0-or-later A mobile-first business and portfolio theme with an extended four-block footer and a captioned slideshow. August 2012 — written for clients who had just discovered how much of their traffic was on a phone. Responsive Business was aimed at exactly the moment its clients were living through in 2012: analytics had started showing a third of their visitors arriving on a phone, and the fixed-width site they had paid for the year before was unusable on one. The pitch was not "a beautiful theme". It was "you will stop losing the people who find you on mobile". Structurally it is a one- or two-column layout across twelve block regions, with a captioned FlexSlider on the front page and an extended footer carrying four separate block regions. That footer was a deliberate concession to how small businesses actually use a CMS: opening hours, an address, a contact teaser and a social row all want to be editable by someone who will never open a template file. Three releases over thirteen months. The interesting issue-queue traffic was almost entirely about the slideshow at narrow widths — captions overflowing images, images cropped in ways that removed the subject — which is the recurring lesson of responsive work. Layout scales down predictably; content does not, and the thing that breaks is always the piece where an editor supplies both an image and text and the two have to agree. The drupal.org record for this theme points its documentation link at the Responsive Blog page rather than its own, a copy-paste error from 2012 that has sat there ever since. The legacy URL this page inherits is the responsive-business one that actually existed. Project page drupal.org/project/responsive_business Reported installs 303 sites report using it on drupal.org, as of October 2026 Releases I shipped 3, August 2012 – September 2013 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: The platforms that work led to . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Simple Corporate — Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/simple-corporate # Simple Corporate Free Drupal theme · GPL-2.0-or-later Sixteen regions, eight of them in the footer, and the longest release span of any theme in the set — two years. April 2012 to May 2014 — the longest-running theme in the catalogue. Simple Corporate has more block regions than anything else I published: sixteen, eight of which sit in the footer. That was not a feature so much as a response to what site builders kept asking for. A business site's footer is where the sitemap, the contact block, the certifications, the payment logos and the small print all end up, and every region I did not provide became an issue asking for one. The rest is deliberately plain: a fixed 1000px canvas, one-, two- or three-column layouts, two prepared colour schemes in white and dark, HTML5 structural markup, and no dependency on a core base theme. It is the widest fixed layout in the set, which was a considered bet in 2012 that 1024px screens had finally stopped mattering. Eight releases spread from April 2012 to May 2014 — the longest span of any theme here, by some distance. Most themes get a burst of releases and then go quiet; this one kept receiving small fixes for two years because it was the theme agencies picked when they needed regions to put things in, and agencies file better bug reports than anyone. The region count is also the clearest example of a trade-off I now think about constantly. Every configurable slot you expose is a promise: it has to keep working, keep its name, and keep its position through every future release, because somebody has content in it. Extensibility is not free; it is a commitment you make on behalf of your future self. Project page drupal.org/project/corporate Reported installs 278 sites report using it on drupal.org, as of October 2026 Releases I shipped 8, April 2012 – May 2014 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: The career this work sits inside . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Venture — Free Drupal Theme | Pradeep Saran URL: https://devsaran.com/open-source/venture-theme # Venture Theme Free Drupal theme · GPL-2.0-or-later A flat-design responsive business theme from 2014 — two releases in a single month, and one of the most adopted themes in the set. June 2014 — the flat-design wave, and near the end of the theming years. Venture belongs to the last group of themes I published, when flat design had gone from a fashion to the default. The header, navigation and buttons drop shadows, gradients and bevels entirely; what is left is type, spacing and colour doing the work. It is a business and portfolio theme with twelve block regions, a one- or two-column layout, and FlexSlider driving a captioned front-page slideshow. The detail worth flagging is the dependency. Venture requires the jQuery Update module configured to jQuery 1.8, because Drupal 7 core shipped jQuery 1.4.4 and the slider would not run on it. That is a real cost I passed to every installer: a theme that needs a contributed module and a specific version of a library underneath it is a theme that can break for reasons which have nothing to do with the theme. I would make the same call again for the slider, but I would document it far more loudly than a line near the bottom of a project page. Two releases went out, both in June 2014, and then nothing. That is less neglect than a career turning: by mid-2014 I had moved into application and platform work and the theme queue stopped getting my evenings. Venture is one of the most installed themes in the set anyway, which says something uncomfortable and useful about the relationship between how much you maintain a thing and how much it gets used. It is still listed as maintained, and the issue queue is still open. What it no longer gets is new releases. Project page drupal.org/project/venture_theme Reported installs 1,369 sites report using it on drupal.org, as of October 2026 Releases I shipped 2, June 2014 On branches 7.x-1.x Downloads, the full release history and the issue queue all live on the drupal.org project page . The other themes, and everything alongside them, are on the open-source index — and next from here: What 'white-label' actually demands of your architecture . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Privacy Policy | Pradeep Saran URL: https://devsaran.com/privacy-policy # Privacy Policy Last updated: June 15, 2026 This is the personal portfolio site of Pradeep Saran (devsaran.com). I keep data collection minimal and ask for your consent before loading any analytics. This page explains what is collected, why, and the choices you have. ## 1. Analytics (consent-based) The site uses Google Analytics 4 to understand aggregate traffic — which pages are visited and roughly where visitors come from. It loads only after you select "Accept" in the cookie banner. If you choose "Necessary only," no analytics script loads and no analytics cookies are set. When enabled, analytics is configured to minimise data collection: - IP addresses are anonymised. - Google Signals and ad-personalisation signals are disabled. - No advertising or cross-site tracking is used. ## 2. Chat A Crisp chat widget is available so you can message me directly. If you start a conversation, Crisp processes the messages you send and standard technical data needed to deliver the chat. If you never open the chat, no conversation data is collected. The chat widget is treated as strictly necessary, so it loads without asking. It is the only third-party script on this site that does — analytics waits for your consent, and choosing "Necessary only" keeps analytics off. Crisp is classified this way because it is a contact channel rather than a measurement one: it exists so you can reach me, it is the same function as the contact form, and gating it would mean anyone who declines analytics, or who never answers the banner at all, loses a way of getting in touch. It loads lazily — on your first scroll, tap or keypress, or a few seconds after the page settles — and it stores a session identifier in your browser so a conversation survives moving between pages. If you would rather it never load, blocking client.crisp.chat in your browser or an extension prevents it, and the rest of the site is unaffected. ## 3. Cookies and local storage - analytics_consent — remembers your accept/decline choice so the banner doesn't keep reappearing. Kept in your browser and also as a cookie on devsaran.com (1 year), so one answer covers the whole site. - Google Analytics cookies (e.g. _ga ) — set only after you accept analytics. - Crisp storage — a session identifier, stored when the chat widget loads rather than only when you use it, so that a conversation is not lost when you move between pages. See section 2 for why the widget is treated as strictly necessary. ## 4. Hosting and server logs The site is hosted on Netlify, which processes standard request data (such as IP address and user agent) to serve pages securely and protect against abuse. ## 5. Third parties Data is processed only by the services that run this site: - Google Analytics — aggregate, consent-based analytics. - Crisp — chat, only when you use it. - Netlify — hosting and delivery. Your data is never sold. ## 6. Your choices You can decline analytics at any time by choosing "Necessary only" in the banner, and you can clear the site's cookies in your browser to reset your choice. To request deletion of any chat history, just email me. ## 7. Contact Questions about this policy? Email saran@devsaran.com . ## What I Build — SuperApp, Supaorder, Devfood URL: https://devsaran.com/products Products # What I'm building at Devkart & Future Stacks . In 2025 I founded Devkart Technologies to turn fourteen years of marketplace architecture into products any brand can launch on. Three platforms, all white-label, all production-proven — SuperApp and Supaorder at Devkart; Devfood at Future Stacks. ## SuperApp — white-label multi-vertical marketplace platform An enterprise-grade, white-label marketplace platform for food, retail, and grocery. One multi-tenant backend launches branded customer, partner, and business apps for iOS, Android, and web — across 100+ countries, with local-currency pricing, and fully translatable. SuperApp is the productized form of the architecture behind Ceger Dostava and Green Delivery Ibiza — proven at aggregator scale before it ever became a product. Verticals are the unit of growth. Food, retail and supermarkets run on one core today, and the way the marketplace modules share a single catalog and dispatch layer is what keeps adding the next one a configuration change rather than a rebuild. It is sold the way it is built — marketplace platform pricing charged per order rather than as a commission on what your partners sell. Explore SuperApp at superapphq.com - Multi-vertical: food, retail, supermarkets, and grocery in one platform - Branded customer, partner, and business apps for iOS, Android, and web - 100+ countries, local-currency pricing, fully translatable out of the box - Multi-tenant, event-driven order pipeline with real-time tracking - Payments across many providers and markets through PCI DSS-compliant processors - Loyalty & rewards, memberships, marketing automation, and analytics - Zero commission — restaurants keep what they earn - Branded native iOS and Android apps plus web ordering - Real-time order management for the kitchen and the counter - Multi-tier loyalty engine, in-app wallet, and promotions - Multi-location and franchise controls with role-based access - Decision-grade analytics built into the dashboard ## Supaorder — zero-commission ordering for restaurant brands A commission-free, white-label ordering platform for restaurants — branded native iOS and Android apps, real-time order management, a multi-tier loyalty engine, and built-in analytics. The same engine powers Menuro's branded restaurant apps (Menuro states 100+ restaurants on menuro.io) and Marry Me Mochi's direct ordering — Supaorder makes it available to any restaurant brand. For a single brand the calculation is simpler than a marketplace: zero-commission ordering for restaurant brands, with POS sync, auto-dispatch and loyalty in the same box . It is also where restaurants land when the ordering product they were given for free is withdrawn — the migration path for restaurants leaving GloriaFood is a product page here rather than a support ticket, because that happens more often than the industry likes to say. Explore Supaorder at supaorder.com ## Devfood — white-label ordering for food & beverage brands Operated by Future Stacks A white-label online ordering platform — branded customer, restaurant, driver, and admin apps for web, iOS, and Android, with zero per-order commission and per-location pricing. Devfood is a sister company to Devkart — same founder, separate legal entity. Where Supaorder targets restaurant brands that want loyalty, marketing, and a GloriaFood migration path, Devfood sells four connected apps with per-location pricing and zero commission on orders. For what the platform includes and how it is sold, see the four connected apps on devfood.com — customer ordering, restaurant operations, driver dispatch, and admin — rather than inferring it from this page. Explore Devfood at devfood.com - Four connected apps — customer, restaurant, driver, and admin on web, iOS, and Android - Per-location pricing — scale by outlet count, not by order volume - Zero commission on orders — a flat monthly fee with no take rate on GMV - Fast launch — branded ordering under your domain and app store listings - White-label F&B ordering — your brand front to back, not a marketplace aggregator ## Devkart Technologies LLP SuperApp and Supaorder are built and run by Devkart Technologies — the software company I founded, which also takes on custom platform engineering for select clients. Devfood is operated separately by Future Stacks, a sister company with the same founder. Visit devkart.com Want to see these platforms in production? Read the case studies → ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Case Studies — Platforms I Architected URL: https://devsaran.com/work Case Studies # Platforms are proven by the businesses that run on them . Four businesses across Europe and North America — an acquired aggregator, a 100-app technology partnership, a Dragons' Den-featured brand, and an island-wide super app. Restaurant brands run on Devfood (Future Stacks); marketplace operators on SuperApp (Devkart Technologies). All on architecture I designed. Prefer the write-up? Download the architecture case studies (PDF) — the shared reference architecture as a C4-style container diagram, then the hard problems, decisions and trade-offs behind SuperApp, Supaorder and Devfood. ## Four platforms, still running Each of these went to production and stayed there. The write-ups say what the constraint was, what the architecture did about it, and what happened to the business afterwards. ### Ceger Dostava Jan 2019 – Dec 2022 Banja Luka, Bosnia & Herzegovina Built the platform behind Bosnia's #2 food delivery aggregator — 80,000+ orders a month, acquired by Korpa in 2022. #2 Food aggregator in Bosnia 80,000+ Orders per month at peak 2022 Acquired by Korpa Read case study ### Menuro Jan 2025 – Present Canada Technology partner to Menuro, which states 100+ restaurants on menuro.io — branded ordering apps, commission-free, with loyalty and franchise controls. 100+ Restaurants, as stated by Menuro 0% Commission for restaurants Multi-location Franchise & chain controls Read case study ### Marry Me Mochi Jan 2025 – Present Toronto, Canada Direct ordering, loyalty, and marketing automation for a Dragons' Den-featured dessert brand with 75,000+ customers. 75,000+ Customers on the platform Dragons' Den Featured on CBC Multi-location Toronto & beyond Read case study ### Green Delivery Ibiza Jun 2022 – Present Ibiza, Spain One super app for an entire island — food, grocery, pharmacy, drinks, and yacht provisioning across Ibiza. 5 Verticals in one app Island-wide Delivery coverage Yachts Provisioning included Read case study ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Ceger Dostava — Food Delivery Platform | Pradeep Saran URL: https://devsaran.com/work/ceger-dostava # Ceger Dostava Banja Luka, Bosnia & Herzegovina · Jan 2019 – Dec 2022 Built the platform behind Bosnia's #2 food delivery aggregator — 80,000+ orders a month, acquired by Korpa in 2022. Role: Platform architect · cegerdostava.com Food aggregator in Bosnia #2 Orders per month at peak 80,000+ Acquired by Korpa 2022 ## The Challenge Launch a multi-restaurant delivery aggregator in a market with no established playbook: hundreds of restaurant and grocery catalogs, live fleet dispatch, a cash-heavy payment culture, and full Balkan localization — all on a budget that ruled out a big engineering team. ## The Approach I architected a multi-tenant, event-driven backend on Node.js and Firebase: real-time order pipelines, driver dispatch with live location tracking, and a catalog system flexible enough to model restaurants and grocery stores in the same platform. Customer, restaurant, and driver apps shipped from a single Angular + Ionic codebase to iOS, Android, and web — so a tiny team could keep three audiences in sync while the order volume grew month after month. Payments, refunds, and settlement were designed for a cash-first market that was steadily moving to cards — both flows ran through the same accounting pipeline, keeping reporting consistent as the mix shifted. ## The Outcome Ceger Dostava grew into the country's #2 food delivery aggregator, peaking above 80,000 orders a month, and was acquired by Korpa in 2022 — the platform ran through the acquisition without re-engineering. Almost everything Ceger Dostava had to invent in 2018 is now standard equipment. The auto-dispatch, live tracking and POS-sync feature set a delivery marketplace runs on ships in the box rather than being built per client, and an aggregator starting today gets it on marketplace platform pricing charged per order instead of as a commission on partner revenue — which is the economic problem Ceger had to engineer its way around from the first month. The architecture proven at Ceger Dostava — multi-tenant, multi-vertical, event-driven — evolved into SuperApp — white-label multi-vertical marketplace platform, built at Future Stacks . Explore SuperApp at superapphq.com Related reading The order pipeline this platform ran on, written up in full ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Green Delivery Ibiza — Multi-Vertical App | Pradeep Saran URL: https://devsaran.com/work/green-delivery-ibiza # Green Delivery Ibiza Ibiza, Spain · Jun 2022 – Present One super app for an entire island — food, grocery, pharmacy, drinks, and yacht provisioning across Ibiza. Role: Platform architect · greendeliveryibiza.com Verticals in one app 5 Delivery coverage Island-wide Provisioning included Yachts ## The Challenge Ibiza needed a single delivery app spanning radically different verticals — restaurant food, supermarket groceries, pharmacy items, drinks, and provisioning for yachts at anchor — each with its own catalog shape, fulfillment rules, and delivery logistics. ## The Approach The multi-vertical catalog model lets each vertical define its own product structure, pricing rules, and availability — while customers browse and check out through one unified app. Delivery logistics handle everything from a 20-minute pizza run to scheduled yacht provisioning, with zone-based fees and per-vertical fulfillment windows. The same multi-tenant backend powers the customer app, partner-store apps, and dispatch — one platform, one operations team, five verticals. ## The Outcome Green Delivery Ibiza runs food, grocery, pharmacy, drinks, and yacht provisioning across the island in one branded super app — a working showcase of multi-vertical architecture. Five verticals in one app was a bespoke build in 2022 and is a configuration now, because the food, retail and supermarket marketplace modules share one catalog and dispatch layer instead of each being its own application. For an operator betting a whole island on that, the question underneath is who stands behind it — the marketplace platform is built and operated by Devkart Technologies , which is a shorter answer than most vendors can give. Green Delivery Ibiza is built on SuperApp — white-label multi-vertical marketplace platform, built at Devkart Technologies LLP . Explore SuperApp at superapphq.com Related reading The multi-tenant data model decision underneath a multi-vertical build like this ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Marry Me Mochi — Direct Ordering & Loyalty | Pradeep Saran URL: https://devsaran.com/work/marry-me-mochi # Marry Me Mochi Toronto, Canada · Jan 2025 – Present Direct ordering, loyalty, and marketing automation for a Dragons' Den-featured dessert brand with 75,000+ customers. Role: Platform architect · www.marrymemochi.ca/ Customers on the platform 75,000+ Featured on CBC Dragons' Den Toronto & beyond Multi-location ## The Challenge A fast-growing dessert brand needed to own its customer relationship instead of renting it from aggregators: branded ordering, a loyalty program worth joining, and marketing that runs itself across multiple locations. ## The Approach Branded iOS, Android, and web ordering launched on the white-label platform, with the full menu, pickup and delivery flows, and location-aware availability. Loyalty, membership, and automated marketing campaigns — win-back, birthday, new-item announcements — were configured on the platform engine, turning one-time buyers into repeat customers without a marketing team. Order data flows into decision-grade analytics, so the brand sees exactly which products, locations, and campaigns drive revenue. ## The Outcome Marry Me Mochi serves 75,000+ customers through its own branded ordering — a direct channel that grew alongside the brand's Dragons' Den appearance, commission-free. A brand that owns its ordering channel owns its customer list when the channel changes, which is not a hypothetical: free ordering products get shut down, and the loyalty data goes with them. That is why a documented migration path for restaurants leaving GloriaFood exists as a product page rather than a support ticket, and why who builds and operates the ordering platform, and how it is sold is stated in public. Marry Me Mochi runs on Devfood — white-label ordering for food & beverage brands, built at Devkart Technologies LLP . Explore Devfood at devfood.com Related reading How the ordering path behind a brand like this is built to hold up ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Menuro — White-Label Restaurant Apps | Pradeep Saran URL: https://devsaran.com/work/menuro # Menuro Canada · Jan 2025 – Present Technology partner to Menuro, which states 100+ restaurants on menuro.io — branded ordering apps, commission-free, with loyalty and franchise controls. Role: Platform architect & technology partner · menuro.io Restaurants, as stated by Menuro 100+ Commission for restaurants 0% Franchise & chain controls Multi-location ## The Challenge Give Canadian restaurants a real alternative to 20–30% aggregator commissions: every restaurant needs its own branded iOS and Android app, its own loyalty program, and chain-level controls — without every launch becoming a custom software project. ## The Approach I designed the platform as genuinely white-label: one multi-tenant backend, one app codebase, and a configuration-driven theming system, so launching restaurant #101 costs the same as restaurant #1. A tiered loyalty and rewards engine, in-app wallet, and marketing automation were built into the core platform — features that normally only national chains can afford became switch-on options for independent restaurants. Multi-location and franchise operators got zone management, role-based access, and chain-wide marketing from one dashboard, with per-location menus, hours, and delivery rules. ## The Outcome Menuro states 100+ restaurants on menuro.io, each with branded ordering on the platform — commission-free ordering with decision-grade analytics, running as an ongoing technology partnership. Menuro's economics are the ones Devfood now offers any brand directly: commission-free ordering with POS sync, auto-dispatch and a loyalty engine included , charged as a flat monthly fee per location rather than a percentage of every order . The long-running technology partnership behind it is also the shape of the custom platform and multi-tenant SaaS engineering Devkart takes on for other clients . The white-label engine behind Menuro is the same architecture I now productize as Devfood — white-label ordering for food & beverage brands, built at Future Stacks . Explore Devfood at devfood.com Related reading What white-label actually demands of an architecture — this is the worked example ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Writing — Notes on Architecture & Platforms URL: https://devsaran.com/writing Writing # Notes from building the systems , not reading about them. Essays on multi-tenant SaaS, white-label and real-time commerce architecture, open source, and the engineering decisions that are really business decisions — drawn from 14+ years of shipping platforms end to end. - Architecture / Jun 15, 2026 / 7 min read ## Choosing a Multi-Tenant Data Model You Won't Regret in Year Three Tenant isolation is the one architectural choice you can't cheaply undo. Here's the spectrum of multi-tenant data models, the trade-offs that actually bite, and how I decide — from years of running multi-tenant platforms. Read - Architecture / Jun 15, 2026 / 8 min read ## What 'White-Label' Actually Demands of Your Architecture White-label looks like a theming feature. It's really a multi-tenancy commitment that touches your data model, identity, branding, and every assumption about scale. Here's what it costs — and how I design for it. Read - Engineering / Jun 14, 2026 / 6 min read ## Migrating Off a Legacy CMS Without Losing Your SEO Rebuild on a modern stack and you can watch a decade of rankings evaporate — because the authority lives in the URLs you're about to delete. Here's the migration checklist I actually run, using this site as the example. Read - Architecture / Jun 13, 2026 / 7 min read ## Anatomy of an Order Pipeline That Survives Real Load The order is where a commerce platform is judged — and where naive systems drop, double-charge, or stall under a lunch rush. Here's how I design order pipelines to stay correct and real-time when traffic spikes. Read ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Order Pipelines That Survive Real Load | Pradeep Saran URL: https://devsaran.com/writing/anatomy-of-a-real-time-order-pipeline # Anatomy of an Order Pipeline That Survives Real Load The order is where a commerce platform is judged — and where naive systems drop, double-charge, or stall under a lunch rush. Here's how I design order pipelines to stay correct and real-time when traffic spikes. June 13, 2026 · 7 min read · Pradeep Saran Every commerce platform has one path that matters more than all the others: the order. It’s the moment money moves, a kitchen starts cooking, a courier gets dispatched, and a customer starts watching a little progress bar. When that path is slow or wrong, nothing else you built matters. It’s also the path that gets stress-tested for real — not in a load test, but at 12:30 on a Friday when every restaurant on the platform hits its lunch rush at once. I spent seven years as lead architect on DevFood, a restaurant ordering and management platform built on multi-tenant Node.js and Firebase, engineered for fault tolerance under exactly that kind of transactional load. The same pipeline runs under Ceger Dostava , which handled 80,000+ orders a month as Bosnia’s second-largest delivery aggregator before it was acquired, and under the three platforms I build and run today . Here’s the anatomy of an order pipeline that holds up. ## An order is a state machine, not a row The first mistake is modeling an order as a record you mutate — flip a status column from “new” to “done” and hope. Orders don’t move in a straight line, and they don’t move alone. They get accepted, rejected, modified, prepared, picked up, delivered, refunded — sometimes out of order, sometimes concurrently from different actors. Model the order as an explicit state machine : a defined set of states and the legal transitions between them. placed → accepted → preparing → ready → out_for_delivery → delivered , with branches for rejected , cancelled , and refunded . Two things fall out of this immediately: - Illegal transitions become impossible. You can’t mark an order “delivered” if it was never “accepted.” The model enforces what a pile of if statements only hopes for. - Every transition is an event — something happened, at a time, caused by an actor — which turns out to be the foundation for everything else. ## Make it event-driven so the pipeline can breathe When an order transitions, a lot needs to happen: notify the customer, push the ticket to the kitchen display, alert a courier, update analytics, adjust loyalty points. The naive design does all of that synchronously inside the request that changed the order — so the customer’s “Order placed!” waits on the slowest downstream system, and if any one of them fails, the whole order fails. Instead, the transition emits an event, and independent consumers react to it. Order placement does the minimum to be correct and durable, then returns; notifications, kitchen routing, dispatch, and analytics happen as reactions. This decoupling is what lets the pipeline absorb a spike: a slow notification provider can’t stall order-taking, and you can scale the hot consumers independently. Event streams (Kafka and friends) exist precisely for this shape of problem. The rule I hold to: the write path for an order should be small, fast, and durable. Everything that can happen afterward, should. ## Idempotency is not optional Networks retry. Customers double-tap “Pay.” A mobile app loses signal mid-request and tries again. If your order-creation or payment endpoints aren’t idempotent, every one of those becomes a duplicate order or a double charge — and nothing erodes trust faster than charging someone twice for one burrito. The fix is idempotency keys : the client generates a unique key per logical operation, and the server guarantees that replaying the same key returns the same result instead of doing the work twice. Combine that with transition guards on the state machine (you can only accept a placed order once) and the pipeline becomes safe to retry at every layer — which is exactly what you need when you’re designing for failure. ## Real-time, to several audiences at once A live order is watched by more than the customer. On a marketplace platform, the same order is visible to the customer (where’s my food?), the partner/store (a new ticket), and sometimes the business owner (the dashboard) — the three branded surfaces I wrote about in the white-label piece . They’re all subscribed to the same order’s state, and they all expect updates in seconds, not on refresh. This is where a real-time transport — WebSockets or a real-time database like Firebase — earns its place. Each transition fans out to whoever’s subscribed to that order, scoped (always) to the right tenant. The state machine guarantees they all see a consistent story; the real-time layer guarantees they see it now. On a marketplace that fan-out is not just a screen refresh — it is what drives courier assignment, which is why the auto-dispatch layer and dispatcher panel SuperApp ships are downstream consumers of the same event stream rather than a separate system with its own idea of where an order is. ## Payments without swallowing PCI scope Supporting payments across many providers and markets through PCI DSS-compliant processors sounds like a payments problem. Architecturally, it’s a scope-containment problem. The goal is for raw card data to never touch your servers: the client tokenizes with the provider, and your system only ever handles tokens and references. Card numbers in your logs or your database is the kind of mistake that ends platforms. Wrap providers behind a single payment abstraction so the order pipeline speaks one internal language (“authorize this amount for this order”) regardless of which of the dozens of underlying methods or gateways fulfills it. New market, new method? You add an adapter, not a branch through your order code. ## Integrate external systems without coupling to them Real platforms don’t live alone. Orders sync two ways with point-of-sale systems — Clover, Square, Toast — each with its own data model, its own quirks, and its own downtime. If you let their shapes leak into your order model, you’ve coupled your core to three external roadmaps you don’t control. Put an anti-corruption layer between them and you: a translation boundary that maps their concepts to yours and back. Your order pipeline keeps its clean internal model; the adapters absorb the mess — which is how two-way Clover, Square and Toast sync becomes a switch a restaurant turns on rather than an integration project it pays for. And because those systems will be unavailable sometimes, the integration has to be asynchronous and forgiving — queue the sync, retry with backoff, and never let a POS outage stop a customer from ordering. ## Design for the failure, because it’s coming Under real load, something is always degraded. Resilient pipelines plan for it: - Retries with exponential backoff on transient failures, so a brief blip doesn’t cascade. - Dead-letter queues for events that keep failing, so one poison message doesn’t block the stream — and a human can inspect it later. - Caching hot reads (menus, store status) in something like Redis, so a traffic spike doesn’t hammer your primary datastore for data that barely changes. - Graceful degradation : accept the order and confirm it even if a non-critical downstream (loyalty, analytics) is slow. Protect the path that takes the customer’s money and starts their food; let the rest catch up. High availability isn’t a server setting. It’s a hundred small decisions about what happens when each piece fails. ## If you can’t see it, you can’t run it The last piece is observability, and on a multi-tenant platform it has to carry the tenant and the order stage. “Orders are slow” is noise. “Tenant 42’s orders are stalling between accepted and preparing ” is a fix. Track how long orders sit in each state; an order stuck between transitions is a customer not getting fed and a refund you haven’t issued yet. The metrics that matter aren’t CPU and memory — they’re orders-per-state, time-in-state, and transition failure rates. ## The takeaway An order pipeline that survives real load isn’t built from exotic technology. It’s built from a few disciplined choices: model the order as a state machine, drive it with events, make every step idempotent, push updates in real time to everyone who’s watching, contain payment and integration scope behind boundaries, and assume every dependency will fail at the worst moment. Get those right and the lunch rush is a non-event. Get them wrong and you’ll find out — publicly, at 12:30 on a Friday — that the order path is the only part of your platform anyone actually feels. ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Choosing a Multi-Tenant Data Model | Pradeep Saran URL: https://devsaran.com/writing/choosing-a-multi-tenant-data-model # Choosing a Multi-Tenant Data Model You Won't Regret in Year Three Tenant isolation is the one architectural choice you can't cheaply undo. Here's the spectrum of multi-tenant data models, the trade-offs that actually bite, and how I decide — from years of running multi-tenant platforms. June 15, 2026 · 7 min read · Pradeep Saran Most architectural mistakes are recoverable. You can swap a framework, rewrite a service, change a queue. The one decision that fights you for years is how you isolate tenants in your data layer — because it’s woven through every table, every query, every migration, and every backup. Get it right and you barely think about it again. Get it wrong and you’re paying interest on it at 2 a.m. when one customer’s data shows up in another’s export. I’ve built and run multi-tenant platforms for years — DevFood on multi-tenant Node.js and Firebase, and now SuperApp and Supaorder , where a single backend serves many brands at once. Here’s how I think about the choice, and the trade-offs that actually matter once you’re past the demo. ## The spectrum: three models, not two “Multi-tenant” gets discussed as if it’s one thing. It’s really a spectrum of isolation, and there are three points on it worth knowing. 1. Shared database, shared schema (a tenant_id on every row). All tenants live in the same tables, separated by a tenant column. Cheapest to operate, easiest to scale to thousands of tenants, and migrations run once. The catch: isolation is only as good as your discipline — every single query has to be scoped, forever. 2. Shared database, schema-per-tenant. One database, but each tenant gets its own set of tables (a Postgres schema, say). Stronger logical separation and easier per-tenant export, but migrations now run N times, and thousands of schemas strain the database’s catalog. 3. Database-per-tenant. Each tenant gets a physically separate database. The strongest isolation — great for enterprise customers with compliance demands or huge data volumes — but the heaviest to operate: connection management, migrations, backups, and monitoring all multiply by your tenant count. These aren’t mutually exclusive. The most pragmatic real-world setups are hybrid : a shared schema for the long tail of tenants, with the option to lift a heavy or sensitive tenant onto its own database when it earns it. ## What I default to — and why For most SaaS, I start at shared database, shared schema , and I treat the tenant_id as sacred. The reasons are economic and operational: - Migrations stay sane. A schema change is one migration, applied once. With schema- or database-per-tenant, every release becomes an orchestration problem across hundreds or thousands of targets — and a half-failed migration leaves tenants on different versions. - Onboarding is a row, not a deploy. A new tenant exists the moment you insert it. No provisioning a database, no waiting on infrastructure. That’s what lets a white-label platform onboard a brand in minutes instead of days, and it’s the first question I ask on any multi-tenant SaaS platform Devkart is hired to build : what does onboarding customer number two actually cost you? - Resource efficiency. One connection pool, one cache, one query planner warming the same indexes for everyone. I reach for stronger isolation selectively , not by default: a specific enterprise tenant with contractual data-residency requirements, or one whose data volume would degrade everyone else. Designing for that escape hatch from the start is wise; using it for every tenant from day one usually isn’t. ## Isolation has to live at the lowest layer you can put it The failure mode of the shared-schema model is always the same: someone writes a query that forgets the tenant filter, and now isolation has a hole. The fix is to stop relying on every developer remembering . - Default-deny the data access layer. The base scope is “this tenant only.” Cross-tenant access has to be an explicit, conspicuous, reviewed exception — not the accidental result of a missing WHERE . - Enforce it once, centrally. Put tenant scoping in middleware, a repository layer, or the ORM’s global scope — somewhere a single code path guarantees it — rather than scattering where tenant_id = ? across hundreds of call sites. - Use the database’s own guardrails where you can. Row-level security (in Postgres, for example) enforces tenant boundaries in the engine itself, so even a buggy query can’t cross them. It’s defense in depth for the one mistake you can’t afford. When SuperApp advertises per-tenant data isolation, that’s not a feature bolted on top — it’s this discipline, enforced below the application code where a single forgotten clause can’t undo it. ## The noisy neighbor is a data-model problem too Shared infrastructure means one tenant’s spike can hurt everyone — the classic noisy-neighbor problem. It’s usually framed as infrastructure, but a lot of the answer lives at the data layer: - Per-tenant quotas and rate limits , so one tenant can’t monopolize the connection pool or hammer a hot table. - Cache keys that include the tenant , so caching helps everyone instead of letting one tenant evict the rest. - An identified “hot tenant” path — when one tenant outgrows the shared pool, you already designed the ability to migrate them to isolated resources without a rewrite. You don’t have to solve all of this on day one. You do have to make sure the model allows you to, which is the whole point of choosing deliberately. ## Migrations and backups: the bill comes due here Two operational realities expose your choice more than anything else. Migrations. With a shared schema, a column addition is one statement. With schema- or database-per-tenant, it’s a job that has to succeed across every tenant, handle partial failure, and stay backward-compatible while it rolls. This is the single biggest reason I default to shared schema: it keeps the release process boring, and boring is what you want when real orders are flowing. Backups and restores. Shared schema makes whole-system backup trivial but per-tenant restore hard (you’re surgically extracting one tenant’s rows from shared tables). Database-per-tenant flips it: per-tenant restore is easy, but you’re managing a fleet. Decide which restore story you actually need — “restore one tenant to yesterday” is a real support request — before the choice is made for you. ## Per-tenant data lifecycle is a feature, not an afterthought Two requests will land eventually, and your data model decides whether they’re easy or a nightmare: - “Export everything for this tenant.” (Their data, on demand.) - “Delete everything for this tenant.” (Offboarding, or a GDPR/erasure request.) If tenancy is a first-class, consistently-applied dimension, both are a clean, well-scoped operation. If tenant_id was applied unevenly — present on the main tables but missing from that logging table, that analytics rollup, that cache — then export is incomplete and deletion leaves orphans. The time to guarantee completeness is the first migration, not the day legal asks. ## Why this is the foundation under everything else This connects directly to what white-label demands of your architecture : a platform that launches branded customer, partner, and business apps from one backend can only do that because tenancy is built into the data model from the very first migration. The branded apps, the per-tenant config, the global multi-currency support — all of it rests on a tenancy model that was chosen on purpose and enforced below the application layer. The commercial version of that sentence is much shorter: one platform, one operator, one answer about where your data lives — which is only sayable because there is one platform to answer for. ## The decision, in one paragraph Default to a shared schema with a sacred tenant_id and isolation enforced centrally — it keeps migrations, onboarding, and operations sane at scale. Keep a deliberate escape hatch to isolate individual tenants (own schema or own database) for the enterprise, compliance, or whale-sized cases that earn it. Decide your migration and per-tenant restore stories up front, make tenant data export and deletion clean from the first migration, and put the boundary in the database engine where a forgotten clause can’t breach it. Choose it for the platform you’ll be running in year three — thousands of tenants, a compliance request in your inbox, a migration shipping on a Friday — not for the one tenant in your demo. That’s the version of the decision you won’t regret. For what this looks like once it is carrying real weight: Green Delivery Ibiza runs food, grocery, pharmacy and drinks as separate verticals on one tenant-scoped backend, and the platforms I build and run are all shaped by the version of this decision made in year one. ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## Legacy CMS Migration Without Losing SEO | Pradeep Saran URL: https://devsaran.com/writing/migrating-off-legacy-cms-without-losing-seo # Migrating Off a Legacy CMS Without Losing Your SEO Rebuild on a modern stack and you can watch a decade of rankings evaporate — because the authority lives in the URLs you're about to delete. Here's the migration checklist I actually run, using this site as the example. June 14, 2026 · 6 min read · Pradeep Saran There’s a specific kind of pain that comes a few weeks after a proud relaunch: the new site is faster, cleaner, and built on a stack you actually like — and your search traffic is quietly falling off a cliff. It happens because the value Google assigned to your old site isn’t attached to your brand or your design. It’s attached to URLs — hundreds of them, each carrying years of crawl history and inbound links — and a rebuild usually deletes most of them without a forwarding address. I just did this migration on this very site . devsaran.com ran for over a decade as a Drupal site with a large blog — the 25 themes and 16 modules it existed to publish are still here, one page each; the rebuild is a small, modern Astro site with about ten pages. Google still had roughly 287 old pages in its index. That gap is exactly where SEO goes to die — unless you treat the migration as a redirect and consolidation problem, not a redesign. Here’s the checklist I run. ## 1. Inventory what Google actually knows — before you delete anything You cannot preserve what you haven’t measured. Before the old site goes away, pull the real picture from Google Search Console: - Page indexing report — how many URLs are indexed, and the reasons the rest aren’t. - Performance → Pages — sorted by clicks and impressions. These are the URLs that still earn traffic; they are your priority list. - Links → Top linked pages — the URLs other sites point at. That’s borrowed authority you don’t want to drop. On devsaran.com this surfaced exactly what mattered: a handful of old /blog/... posts and theme pages still pulling impressions, plus a long tail of legacy paths. You’re not going to save everything — you’re going to save the URLs that carry weight. ## 2. Map old → new with 301s — by pattern, not by hand A 301 redirect tells Google “this moved permanently — pass the equity to the new location.” The mistake is doing it URL-by-URL (you’ll miss hundreds) or doing it bluntly (redirect everything to the homepage). Redirect by pattern , to the closest relevant page : # Old Drupal sections → nearest current equivalent /drupal-theme/* → /open-source /project/* → /products /content/about-me → /about The blunt version — /* → / — feels thorough and quietly backfires. When dozens of unrelated old pages all redirect to the homepage, Google treats that as a soft 404 and declines to pass the equity anyway. A redirect only counts when the destination is a genuine replacement for the source. So: specific rules for sections that have a real successor; the homepage only as a last resort for content that truly has no equivalent. ## 3. Pick one canonical host and enforce it Pick www or the apex (non‑ www ) — it doesn’t matter which, but pick one and force everything else to it with a 301. I canonicalize devsaran.com to the apex, the opposite of my product sites, specifically to preserve the old site’s history (it lived on www ): # Netlify keeps the path via its splat placeholder — do not paste the # placeholder into prose as a bare URL (crawlers will request the literal path). from = "https://www.devsaran.com/*" to = "https://devsaran.com/" # + captured path (splat) status = 301 force = true # Same rule for http://www.… → https://apex Skip this and Google sees http , https , www , and non‑ www as up to four versions of every page — splitting authority and triggering “Duplicate, Google chose a different canonical than the user.” A single forced host plus a self‑referencing <link rel="canonical"> on every page collapses that into one. ## 4. Don’t advertise your dead ends Some pages should exist but never rank: privacy policy, 404, utility pages. Two rules, and you need both : - Mark them <meta name="robots" content="noindex"> . - Keep them out of your sitemap. Doing only the first is a classic own-goal. If you noindex a page and list it in the sitemap, you’re inviting Google to crawl a URL you’ve told it to ignore — which it then files under “alternate page with proper canonical tag” or similar noise. Your sitemap should contain only the URLs you genuinely want indexed. ## 5. Migrate the analytics, not just the pages A rebuild silently breaks measurement too. The old tracking tag is gone, the new site ships without one, and you lose continuity at the exact moment you most need to watch traffic. Re-tag the new site against the same analytics property so the history is continuous — and if you care about privacy (you should), gate the tag behind consent so it only loads after the visitor opts in. Losing your rankings is bad; losing your rankings and having no data to see it happen is worse. ## 6. Tell Google you’re done — then be patient Once the redirects and canonicals are live: - Submit the new sitemap (and 301 the old /sitemap.xml location to it — old caches still hit it). - Use “Validate Fix” on the Not found (404) and Soft 404 reports. This asks Google to recrawl the affected URLs; the ones that now redirect drop out of the report over the following days. - URL-inspect your most important pages and Request Indexing for the handful that matter most. This is the same checklist I work through on the web and platform migrations Devkart is brought in for , not just on my own site — the only thing that changes is how many URLs are in the inventory. Then set expectations. “Crawled — currently not indexed” is the bucket where a migrated site sits while Google decides whether the new pages deserve their old standing. It doesn’t clear because you asked nicely; it clears because you gave Google fewer, better, genuinely useful pages to index. The redirects preserve equity — content is what re-earns it. ## 7. Accept that some things should 404 The counterintuitive part: not every old URL deserves rescuing. Content that is genuinely gone — a dead campaign page, a removed feature — should return a clean 404 (or 410) . That’s a correct, honest signal, and Google drops those URLs naturally. Trying to redirect every last one into a vaguely related page does more harm than a tidy 404. Save your redirects for URLs with real equity or a real successor; let the rest go cleanly. ## The mindset A CMS migration isn’t a redesign that happens to change some links. It’s a URL migration with a new design attached. Handle it that way — inventory first, redirect by pattern to real successors, enforce one canonical host, keep dead ends out of the sitemap, re-establish measurement, then tell Google and wait — and a relaunch becomes a chance to consolidate a decade of authority instead of forfeiting it. It’s unglamorous work. It’s also the difference between a faster site that keeps its hard-won rankings and a beautiful new site that starts from zero. Migrations of this shape are usually the first phase of a larger platform move — the case studies are what the other side looks like. More of how we work through problems shaped like this one — migrations, POS integrations, multi-tenant rebuilds — is in the engineering notes we publish at Devkart . ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com ## What White-Label Demands of Architecture | Pradeep Saran URL: https://devsaran.com/writing/what-white-label-demands-of-architecture # What 'White-Label' Actually Demands of Your Architecture White-label looks like a theming feature. It's really a multi-tenancy commitment that touches your data model, identity, branding, and every assumption about scale. Here's what it costs — and how I design for it. June 15, 2026 · 8 min read · Pradeep Saran “White-label” gets sold as a coat of paint: swap the logo, change the colors, ship it under someone else’s name. I spent years publishing Drupal themes — 25 of them, still running on thousands of sites a decade later — so I know exactly how seductive that framing is. A theme is a skin. You drop it in and the site looks different. A white-label platform is not a skin. It’s a promise that one codebase and one backend can be many products at once, each convinced it’s the only one. That promise reaches all the way down to your data model — which shape you choose there is the decision this one rests on — and if you don’t design for it on day one, you discover the cost on the day your second customer signs. Menuro is what the promise looks like when it holds: one backend, a separately branded ordering app per restaurant, and none of them aware of the others. Here’s what white-label actually demands — the parts that don’t show up in a demo. ## It’s a multi-tenancy decision, not a theming one The first question isn’t “how do tenants customize the look?” It’s “how does a single request know whose data it’s allowed to touch?” Everything else is downstream of that. You’re choosing, per resource, between shared infrastructure with row-level isolation and fully separated stores — and you’re choosing how strictly you enforce it. Get this wrong and the failure mode isn’t a visual glitch; it’s one brand’s customer seeing another brand’s orders. There is no recovering a reputation after that. So tenancy has to be a first-class concept everywhere: in the schema, in every query, in the cache keys, in the background jobs, in the logs. When I architect a platform like SuperApp , the multi-tenant backend is the product — the branded apps are projections of it. The skin is the easy 5%. ## The data model has to assume many brands from the first migration Retrofitting tenancy is one of the most expensive migrations there is, because it touches every table and every query at once. The cheap version is to add a tenant_id early and thread it through relentlessly. The expensive version is to bolt it on after you’ve shipped, when half your queries quietly assume a single owner. Three things I treat as non-negotiable from the first migration: - Every tenant-owned row carries its tenant , and the application layer refuses to query without it. The default scope is “this tenant only”; cross-tenant access is the special case that has to be asked for explicitly. - Per-tenant configuration is data, not deploys. Branding, feature flags, payment setup, business rules — a new brand should go live by writing rows, not by shipping code. If onboarding a customer requires an engineer, you don’t have a platform yet; you have a consultancy with extra steps. - Shared reference data is separated from tenant data. Currencies, locales, vertical templates — the things every tenant reads but none of them owns — live apart from the things they each own outright. ## One backend, three audiences The thing founders underestimate is that a commerce platform isn’t one app. SuperApp launches branded customer , partner , and business apps — for iOS, Android, and web — from a single backend. That’s three different audiences with three different trust levels reading and writing the same domain model. A customer places an order. A partner (a courier, a store) acts on it. A business owner configures the catalog and sees the money. Same order entity, three lenses, three permission sets — all scoped, on top of everything, to the right tenant. This is why role-based access control stops being a checkbox and becomes core architecture. “Can this identity perform this action on this resource, within this tenant?” is a question your system answers thousands of times a second, and it has to answer it the same way whether the request came from a customer’s phone, a partner’s tablet, or an admin dashboard. Designing those surfaces to share a domain model without coupling to each other is most of the real work. ## Branding goes much deeper than colors The visible layer — logo, palette, typography — is genuinely the simple part. Branded platforms have to be brand-coherent everywhere the customer touches them, and most of those places aren’t on screen: - Custom domains per tenant, with certificates and routing that resolve to the right tenant automatically. - Native apps that ship under each brand’s own name and identity in the App Store and Play Store — which means a build and release pipeline that treats “the app” as a parameterized artifact, not a one-off. - Transactional email, push notifications, and receipts that carry the tenant’s brand, not yours. A customer should never see your platform’s name in their inbox. - Assets and theming as configuration , served per tenant, cached per tenant. Each of these is a small project. Together they’re the difference between “white-label” as a slide and white-label as a product. ## Going multi-everything: the assumptions that break The moment a platform crosses a border, a pile of quiet assumptions break at once. SuperApp is built for 100+ countries, local-currency pricing, and a fully translatable interface — and every one of those is really a set of assumptions you had to not hard-code: - Money isn’t a float, and it isn’t one currency. Rounding rules, formatting, and the smallest unit differ by currency, and a single tenant may operate in several. - Language isn’t a string-replacement pass. Pluralization, text direction, date and number formats, and the fact that your UI has to breathe when a label triples in length — all of it has to be designed in, not translated in later. - Locale and region drive tax, addressing, phone formats, and which payment methods even exist. Supporting many payment methods across many markets — while staying PCI-compliant — is its own discipline. You don’t add internationalization later. You either assumed plurality from the start or you’re rewriting. ## Modularity: adding verticals without a rebuild The last demand is the one that pays off slowly and then all at once: a white-label platform should grow new capabilities without a migration. SuperApp runs food, retail, and supermarkets today, with ride-hailing, parcel delivery, and bookings in development — and the design goal is that a tenant switches a vertical on , rather than waiting for a rebuild. That only works if a “vertical” is a well-defined module against stable core abstractions — orders, catalog, fulfillment, payments, identity — rather than a fork of the whole system. The core has to be general enough that a new vertical is configuration plus a thin module, not a parallel codebase. This is the hardest part to get right, and the part that most determines whether the platform is still maintainable in year three. ## The operational tax nobody demos Multi-tenancy doesn’t just shape the code; it shapes operations: - Observability has to be per-tenant. “The app is slow” is useless. “Tenant 42’s order pipeline is slow” is actionable. Your metrics, traces, and logs need the tenant dimension or you’re debugging blind. - Deploys are all-or-nothing across tenants , so your release process and your migrations have to be safe for everyone simultaneously — and reversible. - Support and billing are per-tenant realities that your data model has to make answerable: who used what, who owes what, who’s affected by this incident. None of this is visible in a feature list. All of it is the reason a serious platform costs what it costs. ## If you’re evaluating a “white-label” vendor A short, brutal checklist — the questions that separate a real platform from a themed template: - Can you onboard a new brand without an engineer? (Configuration vs. code.) - How is tenant data isolated, and what stops a cross-tenant leak? Make them be specific. - Do the apps ship under my name in the stores, with my domain and my emails? - What happens when I add a second country, a second currency, a second language? - Can I turn on a new vertical without a migration? - Can you show me per-tenant monitoring? If the answers are vague, you’re buying a skin and a roadmap of surprises. If they’re crisp, someone designed for plurality on day one — which, after 14+ years of building exactly these systems, is the only way I’ve seen it work. It is a fair test to apply to me too: who builds and operates the ordering platform, and how it is sold is published rather than negotiated, for the same reason. White-label isn’t a feature you add. It’s a posture your architecture takes from the first migration — and it’s the difference between a product you can sell a hundred times and a project you rebuild every time. The three platforms I build and run — SuperApp and Supaorder under Devkart , Devfood under Future Stacks — are all the first kind, and all cost what the first kind costs. ## Working on a marketplace or ordering platform? I've spent 14+ years architecting exactly these systems — happy to talk through your platform, your stack, or a partnership. Get in Touch saran@devsaran.com