Case study · 2023

A multi-service super-app delivered in 6 working days.

juvidoeon.com needed a multi-service super-app. The Gojek Clone base already carried the mechanics, so the engagement went where their product was actually different. We built the product; they launched the brand.

  • Gojek Clone · MXJek
  • 6 working days our build time on the base
  • Source code transferred to juvidoeon.com’s own account
Jjuvidoeon.comGojek Clone · 2023
Jjuvidoeon.com
Solution
Gojek Clone
Product
MXJek
Delivered
2023
Stack
JS+PHP
Build time
6 working days
Blocks reused
19 of 24
Source code
Transferred
5applications shipped
19blocks reused unchanged
5built for this client
9integrations, each isolated
100%source code transferred

What already existed, and what did not.

The distinction that decides a project like this: the mechanics were proven before the engagement started, so the time went into the part that was theirs.

We build the product; the client launches the brand. That is the arrangement, and it only works if the handover is real: juvidoeon.com owns the source code, had a launch date in writing before work started, and can check every figure on this page against a public ledger.

A multi-service app without a multi-team budget was the whole brief. Rides, delivery and services were already carried by the base, so we configured our verticals and partners. Live in under a month.

juvidoeon.com Team, Founding team · juvidoeon.com

The line between reused and built.

The work sat where it always sits on this base: store verticals, payment gateways, pricing &. Everything else on the list below arrived already built and proven on other engagements running the same base.

5Applications and consoles shipped, each with its own permissions and release pathDelivered
19Platform modules reused unchanged from the Gojek Clone baseDelivered
5Decisions built for juvidoeon.com: store verticals, payment gateways, pricing &Delivered
3Environments: development, staging and productionDelivered
100%Source code transferred to juvidoeon.com’s own accountContractual

What juvidoeon.com actually needed.

A multi-service super-app is not one feature. It is 24 distinct pieces that all have to work together before a single customer can be served, and most of them already existed and had been proven elsewhere.

That distinction decides the shape of a project like this. A business does not need a dispatch engine or a settlement ledger to be invented again; it needs one that already works, then it needs the handful of decisions that make the product theirs rather than anyone else’s. The four below are the load-bearing pieces juvidoeon.com would otherwise have spent months building before proving anything to a customer.

Every platform of this kind has the same shape underneath: a set of load-bearing parts that must be correct before a single customer can be served, and a much smaller set of decisions that make it one business rather than another.

Building the first set from zero would have consumed the window before the second was even discussed. That is the decision this engagement turned on, and it was taken before any code was written.

Customer apporder, track, pay
Vendor appmenu, stock, orders
Driver appjobs, route, earnings
Fleet managerzones, agents, loads

What we settled before building.

Which of the 24 pieces were already solved, and which were genuinely juvidoeon.com’s to decide. Getting that line in the right place before any code is written is what keeps a Gojek Clone engagement short, and it is the conversation we would rather have honestly than optimistically.

Where a scope genuinely does not fit a proven base, we say so during scoping and quote it as a custom build instead, even when that costs us the larger and more comfortable project.

01

Read the requirement back to first principles

What must exist at launch, separated from what a business can add once it has customers. Those are different lists and conflating them is what makes projects run long.

02

Base versus build, capability by capability

Each of the 24 capabilities assessed against the existing base as covered, partial or absent. Partial is treated as absent, because a half-fitting module costs more than a new one.

03

Mark what only juvidoeon.com could decide

5 decisions were commercial or jurisdictional rather than technical. Those were theirs, and the engagement is where they got implemented.

04

Agree the line before writing anything

19 pieces reused unchanged, 5 built. Fixing that line up front is what turns a platform of this size into a six-working-day build.

The parts that are genuinely hard.

Not marketing difficulty, actual difficulty. These are the problems any serious Gojek Clone has to solve properly, and the reason building one from a blank page is a multi-quarter commitment rather than a sprint.

Each was solved once, on the base, and has been under load on other builds since. juvidoeon.com inherited the solutions rather than the problems.

01

Dispatch under contention

Several riders chasing the same job, drivers going offline mid-trip, and reassignment that must never double-charge or double-pay. It is a distributed-consensus problem wearing a delivery app.

Already solved in the base: Customer app
02

Money moving three ways

Every completed order splits between the merchant, the courier and the platform, with refunds, cancellations and partial deliveries all landing back on the same ledger.

Already solved in the base: Vendor app
03

Multi-vertical in one app

Grocery, food, pharmacy and parcel have different baskets, fulfilment windows and legal duties, yet share one account, one wallet and one support queue.

Already solved in the base: Driver app

What we did not have to build for juvidoeon.com.

Every platform is made of the same mechanics underneath. This is the account of which of them juvidoeon.com paid attention to, and which were already solved.

Built from nothing, juvidoeon.com would have meant paying for the mechanics again: the accounts, the sessions, the payments, the admin, the permissions. That work is real, it is slow, and none of it is what makes this product different from the next one. Starting from the Gojek Clone base moved that cost out of the project entirely, and the platform itself was deployed in 6 working days.

What that bought is attention. The engagement went into the 5 parts that were actually different, instead of being spread thin across 24 of them.

Shipped ready-made19 of 24
01
Customer apporder, track, pay
02
Vendor appmenu, stock, orders
03
Driver appjobs, route, earnings
04
Fleet managerzones, agents, loads
05
Admin consoleusers, disputes, payouts
06
API gatewayauth, rate limits,
07
Realtime channelorder status,
08
Event busasync fan-out, retries
09
Order lifecyclestates, cancellations
10
matchingassignment, ETA, retry
11
cataloguelistings, stock, search
12
Live trackingGPS, driver management
13
Wallet & payoutsbalances, ledger, splits
14
Identity & KYCaccounts, documents,
15
ratingsin-trip comms, reviews
16
Analyticssales, delivery, demand
17
storeorders, ledger,
18
realtimelocations, sessions
19
Object storagedocuments, media
Made for juvidoeon.com5 of 24
01
Store verticalsgrocery, food, pharmacy,
02
Payment gatewaysyour providers and cash
03
commissionfares, surge, take rate
04
Brand & themingidentity across all
05
currenciesthe markets you operate
Build all 24 from nothing, mechanics included 19 already solved, so the effort went to the 5 that were not

What this market demanded.

Multi-service super-apps live or die on local payment rails and on which verticals a market actually wants. The categories that work in one city fail in the next, which is why the vertical set and the payment mix are decided per client rather than shipped as a default.

None of that is optional, and none of it is something a platform can guess on a client’s behalf. It is precisely why the 5 decisions listed further down sat with juvidoeon.com rather than with us: they are commercial and jurisdictional questions, and the base exists so that answering them is the whole job rather than the last ten per cent of it.

Everything that shipped with it.

The full working set juvidoeon.com took delivery of. Each piece was already built and proven on other engagements before this one started, which is the only honest reason a platform of this size stands up in six working days rather than months.

None of it is a demo or a scaffold. These are the same components running under other businesses in other markets, which means the failure modes are already known and already handled rather than waiting to be discovered by juvidoeon.com’s first real customers.

Reused from the Gojek Clone base

Customer apporder, track, pay
Vendor appmenu, stock, orders
Driver appjobs, route, earnings
Fleet managerzones, agents, loads
Admin consoleusers, disputes, payouts
API gatewayauth, rate limits,
Realtime channelorder status,
Event busasync fan-out, retries
Order lifecyclestates, cancellations
matchingassignment, ETA, retry
cataloguelistings, stock, search
Live trackingGPS, driver management
Wallet & payoutsbalances, ledger, splits
Identity & KYCaccounts, documents,
ratingsin-trip comms, reviews
Analyticssales, delivery, demand
storeorders, ledger,
realtimelocations, sessions
Object storagedocuments, media

Built for juvidoeon.com

Store verticalsgrocery, food, pharmacy,
Payment gatewaysyour providers and cash
commissionfares, surge, take rate
Brand & themingidentity across all
currenciesthe markets you operate

The base this was built on.

The same architecture carries every Gojek Clone on this page. The filled blocks are the parts built for juvidoeon.com.

Gojek Clone architecture MXJek / filled = built for this client
Gojek Clone: the architecture, and one order traced through it 5 client surfaces reach an edge of gateway, realtime channel and event bus. The base holds 8 services, of which Order lifecycle is the source of truth, and 5 blocks are built for each client. Partner services sit behind a boundary and are chosen by the client. Underneath, one order is traced across 5 steps. 19 of 24 blocks are reused unchanged. Gojek Clone MXJek Fourteen documented builds run on this base. Only the filled blocks are built for you. Ships ready-made Built for this client Surfaces Edge The base - already built Partner boundary Data Customer app order, track, pay Vendor app menu, stock, orders Driver app jobs, route, earnings Fleet manager zones, agents, loads Admin console users, disputes, payouts API gateway auth, rate limits, idempotency Realtime channel order status, locations Event bus async fan-out, retries Order lifecycle states, cancellations SOURCE OF TRUTH Dispatch & matching assignment, ETA, retry Multi-store catalogue listings, stock, search Live tracking GPS, driver management Wallet & payouts balances, ledger, splits Identity & KYC accounts, documents, roles Chat, calls & ratings in-trip comms, reviews Analytics sales, delivery, demand Built for this client Store verticals grocery, food, pharmacy, parcel Payment gateways your providers and cash Pricing & commission fares, surge, take rate Brand & theming identity across all surfaces Languages & currencies the markets you operate in chosen by the client Maps & routing their key Payment gateway their merchant account Push & SMS their sender Object storage their bucket Transactional store orders, ledger, identities Cache & realtime locations, sessions Object storage documents, media one order, end to end every step below runs on blocks that already existed 1 Order basket, address, pay 2 Accept vendor confirms, prep time 3 Dispatch nearest driver assigned 4 Deliver live tracking to the door 5 Settle vendor, driver, commission PHP LARAVEL · FLUTTER APPS · MYSQL · NODE · REACT 19 of 24 blocks reused unchanged 5 built for you
This is the Gojek Clone base, drawn as it was actually assembled for juvidoeon.com. The plain blocks are the ready-made platform and shipped as they are. The filled blocks are the ones we built for this client. 19 of 24 blocks were reused, 5 were built.

Why none of this had to be written again.

Each of these was already running on other builds of the same base before juvidoeon.com started. That is the whole reason the platform was standing in days rather than months.

Customer apporder, track, pay
Vendor appmenu, stock, orders
Driver appjobs, route, earnings
Fleet managerzones, agents, loads
Admin consoleusers, disputes, payouts
API gatewayauth, rate limits,
Realtime channelorder status,
Event busasync fan-out, retries
Order lifecyclestates, cancellations
matchingassignment, ETA, retry
cataloguelistings, stock, search
Live trackingGPS, driver management
Wallet & payoutsbalances, ledger, splits
Identity & KYCaccounts, documents,
ratingsin-trip comms, reviews
Analyticssales, delivery, demand
storeorders, ledger,
realtimelocations, sessions
Object storagedocuments, media

The decisions that were actually theirs.

A ready-made base does not remove these; it removes everything underneath them. Each one below is a choice juvidoeon.com had to make, and the engagement is where those choices got implemented.

Store verticals

Which categories the platform runs, and how each one differs in fulfilment.

Why it sat with themWhat can be bought, and how each type is described, is a product decision. The base holds the mechanics; the taxonomy is theirs.

Payment gateways

Which providers the client is onboarded with, and how funds settle back to them.

Why it sat with themWhich processor sits behind the wallet follows from their jurisdiction, banking relationship and settlement terms. None of that is a technical choice.

Pricing &

Configured for juvidoeon.com during the engagement.

Why it sat with themTake rate and pricing are the business model itself. We implement the numbers they set; we do not choose them.

commission

Configured for juvidoeon.com during the engagement.

Why it sat with themTake rate and pricing are the business model itself. We implement the numbers they set; we do not choose them.

Brand & theming

The identity carried across every surface, so it reads as the client’s product rather than a template.

Why it sat with themThe base has to disappear behind their identity, so this is applied across every surface rather than skinned on one.

Languages &

Configured for juvidoeon.com during the engagement.

Why it sat with themThe markets they sell into decide this. Adding one later is configuration rather than a rebuild, which is exactly why it is exposed as a decision.

currencies

Configured for juvidoeon.com during the engagement.

Why it sat with themThe markets they sell into decide this. Adding one later is configuration rather than a rebuild, which is exactly why it is exposed as a decision.

What the six days actually cover.

Our build time on a ready-made base, and nothing else. The parts that sit with the client are named plainly.

01

White-label

The base is rebranded to the client’s identity across every surface.

02

Deploy

Stood up on the client’s own hosting, not ours.

03

Publish

Apps submitted from the client’s own developer accounts.

04

Handover

Source, schema, deployment configuration and architecture notes transferred.

The client supplies the hosting and domain, a verified developer account we publish from, branding and business details, an onboarded payment gateway with KYC complete, and any third-party API keys. Store review and merchant onboarding are controlled by Apple, Google and the payment provider, so those sit outside our window. Every figure here is defined on the facts page.

Who uses it, and for what.

Rather than screenshots of a product that has moved on since delivery, this is the set of surfaces that shipped and what each one is for. juvidoeon.com received every one of them, with the source behind each.

Every role here is a separate application with its own permissions, its own state and its own release path. Building them to work as one system is most of the engineering in a platform of this kind, and it is the part that was already finished before this engagement began.

Customer app
order, track, pay
Vendor app
menu, stock, orders
Driver app
jobs, route, earnings
Fleet manager
zones, agents, loads
Admin console
users, disputes, payouts

What guards the platform.

Built into the base and hardened across every engagement running it, rather than bolted on at the end of this one. Security added late is security that has to be argued for; the controls below were load-bearing from the first deployment.

We claim the process, not a certificate. Miracuves does not hold ISO 27001, and we do not say otherwise: we build to the controls those frameworks require, and the evidence trail is there for an auditor who asks.

Identity & KYC

accounts, documents,. Part of the base, so it was proven before this engagement started.

Role separation

Each surface sees only what its role permits, enforced server-side rather than hidden in the interface.

Audit trail

Who changed what and when, retained so a dispute can be answered with a record rather than a recollection.

Transport and storage

TLS end to end, credentials hashed, and anything sensitive at rest encrypted rather than merely obscured.

Secrets handling

Keys live in environment configuration on their own infrastructure, never in the repository we hand over.

Card data stays out

Payment details go to the gateway directly. The platform holds a reference, not a card number.

Backups and restore

Scheduled backups with a restore that was actually run, because an untested backup is a guess.

What it connects to.

The connection points are part of the base and were already written and tested. Which providers sit behind each one was juvidoeon.com’s decision, because those choices are commercial and jurisdictional rather than technical.

This is also where the client-side dependencies live. Gateway onboarding, KYC approval and merchant review are controlled by the provider, not by us, which is why they sit outside the build window rather than inside it.

Every one of these was already wired and tested in the base. What changed for juvidoeon.com was which account sat on the far side of it.

Payments and payoutsgateway of their choosing
Identity and KYCprovider per jurisdiction
Maps and geocodingtiles, routing, distance
Messaging and voicein-product communication
Object storage and CDNtheir bucket, their region
Product analyticsevents, funnels, retention
Search and indexingcatalogue, filters, ranking
Market data feedsrates and reference prices
Push and transactional emailsent under their sender identity

What it runs on.

The platform stack for MXJek. This describes the base as it stands today; juvidoeon.com took delivery of the source and has owned it since.

Platform
JS+PHP
The stack the MXJek base runs on, already in production elsewhere
Surfaces
Customer appVendor appDriver appFleet managerAdmin console
Each a separate application with its own permissions and release path
Client decisions
Store verticalsPayment gatewayscommissionBrand & themingcurrencies
Configured for juvidoeon.com during the engagement
Handover
SourceSchemaDeployment configArchitecture notes
Transferred at the end of the build

Where the six days went.

Our build time only. Store review and merchant onboarding are controlled by Apple, Google and the payment provider, so they sit outside this window and we do not count them as ours. Stating that plainly is the difference between a build time and a promise we cannot keep. Every figure here is defined on the facts page.

The six working days are guaranteed. If a ready-made platform is not live in six, we keep working free until it is. A deadline nobody is accountable for is not a deadline, and a guarantee nobody pays for is not a guarantee.

Throughout, a named team worked the build and sent juvidoeon.com progress on WhatsApp every working day. There was never a week where nobody knew where it stood, which is the part clients tell us they notice more than the date itself.

6 working days our side of the window

The bar below is that window, day by day. Nothing outside it is counted as ours, and nothing inside it waits on someone else.

Day 1
Base stood up and white-labelled
Base stood up and white-labelled
Days 2-4
5 client decisions implemented
5 client decisions implemented
Day 5
Deployed, apps submitted
Deployed, apps submitted
Day 6
Source, schema and config handed over
Source, schema and config handed over

This base has done this before.

juvidoeon.com was not the experiment. The base underneath this build had already carried other businesses in other markets before it carried theirs, which is the whole argument for reuse: the risk was retired by somebody else’s project, not by this one.

Across everything delivered since 2010 that is more than 9,000 products for over 6,000 businesses across 35+ industries. The eighty-four documented on this site are the ones with a named client and permission to show the work; most of the rest sits under NDA or white-label and is deliberately not here at all.

Every number on this page is defined and sourced on a public facts ledger. That is the whole instinct behind how this company is run: most vendors ask you to trust them, and we would rather you checked us. If we cannot back a claim, we do not make it, which is why you will not find a satisfaction percentage or an unnamed award anywhere on this site.

19 of 24

Blocks reused unchanged on this build, each already under load on other engagements.

Architecture
14

Documented builds running on the Gojek Clone base, in different markets.

Portfolio
9,000+

Products delivered for more than 6,000 businesses across 35+ industries since 2010.

Company record
3,900+

Apps published under clients’ own brands, counted per store release.

Company record

What we can state plainly.

No client figures were supplied for this build, so these are architectural and contractual facts rather than outcomes.

Source code transferred blocks reused unchanged

Full repository history, to the client’s own account

Miracuves delivery record
6 working daysOur build time on the ready-made base
MXJekA base already running on other engagements
6 working daysOur build window on this engagement.Miracuves delivery record

A multi-service app without a multi-team budget was the whole brief. Rides, delivery and services were already carried by the base, so we configured our verticals and partners. Live in under a month.

juvidoeon.com TeamFounding team, juvidoeon.com

What juvidoeon.com holds now.

The same on every engagement. What happened to the platform after handover was theirs to decide.

GITApplication sourceFull repository history, transferred to their accountDelivered
APPMobile projectsSources with signing documentedDelivered
SQLSchema and migrationsReproducible from empty, not a dumpDelivered
ENVDeployment configurationAnother team can run it unaidedDelivered
MDArchitecture notesWhat was chosen, what was rejected, whyDelivered
60dSupport windowSixty days included, six and twelve month optionsDelivered

The questions that decide this.

Answered for this build. The same answers hold for every Gojek Clone in the portfolio.

Do we own the code?

Yes. The full repository history transferred to juvidoeon.com’s own account at handover, with deployment configuration and architecture notes. It is not a licence and it is not held against a support contract.

How is six working days realistic?

Because 19 of the 24 pieces were built and proven before the engagement started. The six days are our build time on that base, not a calendar promise.

What sat with juvidoeon.com?

Hosting and domain, a verified developer account we publish from, branding and business details, an onboarded payment gateway with KYC complete, and any third-party API keys.

Will it look like everyone else’s?

No. The base supplies mechanics, not identity. Branding, flows and every customer-facing screen were built for this product.

Is this what the platform looks like today?

This describes what was delivered in 2023. What happened afterwards was juvidoeon.com’s to decide; the source transferred at handover. Clients move on, rebuild, or sell up, and none of that changes what was delivered or how it went.

Would you have said no to this project?

We are a good fit for a founder who wants a proven model launched fast, a deadline they can hold us to, and code they own outright. We are a poor fit for anyone who needs a team embedded in their office full-time, or who wants a blank page and a six-month roadmap. Being straight about that up front saves everyone a call.

Who actually worked on it?

A named team, not a rotating pool. Our leadership is public with real profiles rather than a stock-photo team page, and progress went to juvidoeon.com on WhatsApp every working day of the build.

Building something like this?

Tell us what you are building and we will say plainly whether a ready-made base fits it, including when the answer costs us the larger project.