How it works
A real fleet, held as a digital position.
The trucks are the business. The chain is the cap table.
Guided walkthrough
Be shown, rather than told
The walkthrough runs on top of the real product and follows what you actually do. Nothing in it is a mock-up.
The fleet pool
Find a truck, take a share of the pool that finances it, put it to work, and collect what it earns. Runs on the exhibition simulator, or against a wallet.
11 steps
The on-chain asset
The separate testnet demonstration: a registered haulage fleet, an oracle-derived valuation, and one real transaction you can look up afterwards. Needs a browser wallet.
9 steps · Local Development Node
The journey
Four steps, in order
Discover
Find an asset
Browse the fleet working the estate-to-port corridor. Each vehicle shows what it is doing right now, how hard it has been worked, and what it has earned.
Explore the fleetOwn
Take a position
Contribute to the fleet pool. Your balance divided by the pool total is your ownership percentage, recorded on-chain the moment the transaction confirms.
View portfolioOperate
Put it to work
Deploy a truck onto a corridor and watch it load, haul, deliver and return. Fuel burns, condition degrades, and the trip accrues real costs against real revenue.
Open operationsEarn
Receive your share
Completed trips accumulate operating profit. Settling pushes it on-chain in one transaction, raising every owner's claimable dividend by their exact fraction.
See activityThe mechanism
From a truck to a claim
Five things, in the order value moves through them. Open one to see what it means, what part of SawitFund implements it, and why it is there at all.
The truck
- What it means
- The real-world asset is the vehicle — a heavy hauler with a plate, a condition and a resale value. Estates, mills and the port are places it drives to, not things anyone here owns.
- What implements it
- src/sim/world.ts — the fleet roster
- Why it exists
- Fresh fruit bunches lose oil the hour they are cut, so the mill pays for haulage whether or not anyone owns the trucks. That tariff is the revenue this product is built on.
Ownership model
One pool, 9 financed vehicles
SawitFund raises into a single pool sized at 12 ETH, which finances 9 of the 16 vehicles working this region. Holding a position means holding the same fraction of all 9 — not a claim on one truck that might sit idle while others run. The remaining 7 belong to other operators; they share the corridors, and none of their revenue reaches the pool.
That fraction is not stored as a separate record. It is derived, every time it is read, from numbers the contract already keeps:
ownership = shares[you] / sharesSold
on settlement:
perShare += amount / sharesSold
dividend = shares[you] × perShare
− alreadyCounted[you]Settling revenue advances one running total rather than paying every holder in turn, so the cost of a settlement does not grow with the number of owners. It also fixes the timing: you earn from the revenue settled while you held your position, and a contribution arriving afterwards cannot reach backwards into it.
Worked example
Illustrative, using the exhibition seed rather than live state: the seeded pool stands at 8.00 ETH against the 12 ETH target. Your own position is on the portfolio.
37.5% of the pool earns 37.5% of everything settled, without any per-investor bookkeeping.
Settlement
What goes on-chain, and what does not
Stays off-chain
Everything physical
- Truck position and heading
- Fuel level and vehicle wear
- Cargo state and route progress
- Per-frame movement
These change many times a second. Writing them to a ledger would cost more than the freight and prove nothing.
Goes on-chain
Everything economic
- Ownership contributions
- Operating profit, settled per cycle
- Dividend entitlement, derived pro-rata
- Claims made against that entitlement
A trip produces thousands of updates and exactly one number worth recording: what it earned.
Two instruments
The pool and the token are not the same thing
Instrument one
The fleet pool
- What you hold
- A position in a share ledger
- Is there a token?
- No
- What it earns
- A fraction of settled operating profit
- Contract
- TruckFunding
- Where
- Portfolio, Explore, Operations, Activity
Instrument two
The asset token
- What you hold
- An ERC-20 balance of SAWIT
- Is there a token?
- Yes — that is the point of it
- What it earns
- Nothing. It demonstrates a valuation
- Contract
- SawitToken, SawitAsset, SawitOracle
- Where
- Token
A pool share is not a SAWIT balance. Neither converts into the other, and no surface in SawitFund adds them together.
Oracles
How an outside number gets in
A blockchain cannot fetch anything from outside itself. This is the path an outside number takes to reach a figure on screen — and where its credibility is decided.
Outside data
- What it means
- Two different things arrive from outside: the price of ETH in dollars, and what the fleet is worth. They are not equally well-sourced, and the product never lets them look alike.
- What implements it
- Chainlink aggregators · a valuer's appraisal
- Why it exists
- A contract cannot reach out and fetch anything. Every external number has to be pushed in by someone, which makes who pushed it the whole question.
The network
SawitChain
SawitChain is the settlement layer beneath the product. It holds the ownership contract, receives revenue deposits, and pays dividends on demand. Holders interact with SawitFund; SawitChain is what makes the position real.
This build is pointed at Local Development Node. Every explorer link in the product is derived from that setting rather than written down, so a build on a testnet cannot hand anyone a mainnet link — and where the active network has no explorer, the product says so instead of inventing one.
Exhibition mode
Simulated Network
Not on a chainNo node is reachable, so ownership and settlement are simulated locally. Nothing here is recorded on a public chain.
This is an exhibition build. The fleet, its corridors and its economics are simulated on this device. Ownership and settlement run against a local SawitChain node, and anything that has not reached a chain is marked SIMULATED rather than presented as settled. Nothing here is an offer of securities.