Sol.College

Structure lesson

GetToasted

Scan any Solana wallet for sandwich attacks and quantify the USD lost to MEV.

What it does

From the project README:

Get Toasted is a SaaS that ingests a wallet's transaction history (via Helius), runs a typed sandwich-detection pipeline over each slot, prices the impact in USD using Jupiter quotes, and exposes the results via an API + dashboard. Real-time scans are driven by Helius webhooks; historical scans are paginated through BullMQ workers.
Original
0xuser64bit/GetToasted
SuperStack fork
Blockchains/GetToasted @ da594ac
Stars
0
Last push (original)
2026-11-03
Languages
TypeScript, CSS, PLpgSQL, JavaScript, Dockerfile, Shell
Detected stack
Next.jsweb3.js
Categories
Wallets & Identity
Licence
MIT
Homepage
https://gettoasted.fun

Architecture

150 source files. By extension: .ts ×103, .tsx ×40, .js ×7.

Top-level directorySource files
packages73
apps62
tools10
scripts5

Where the Solana code lives

Source files that import a Solana SDK, ranked by how many Solana APIs they use, with the APIs each one calls. Read them in this order to see how the app talks to the chain.

FileSolana APIs used
apps/web/app/dashboard/_components/dashboard-topbar.tsxuseWallet
apps/web/app/simulator/_components/simulator-client.tsxuseWallet
apps/web/app/_components/terminal-scan-input.tsxuseWallet
apps/web/app/_components/connect-wallet-button.tsxuseWallet

Dapp: devnet deploy pending

⏳ Devnet deploy pending — goes live when the devnet wallet is topped up. This fork's own dapp is not deployed yet, so there is no program address or transaction to show. It is queued in dapp-queue.txt; once devnet SOL is available it is deployed, exercised with real devnet transactions, and this section switches to the live dapp at /dapps/gettoasted/. Until then, the lesson and step-by-step guide below are complete, and you can run it locally with the commands below.

How to run, build and test

These commands come from the repo's own manifests (package.json scripts, Anchor.toml, Cargo, go.mod, Makefile). Check the README for prerequisites and environment variables.

DirectoryCommandRuns
.npm run devturbo dev
.npm run buildturbo build
.npm run testturbo test
.npm run lintturbo lint
apps/webnpm run devnext dev --port 3000
apps/webnpm run startnext start
apps/webnpm run buildnext build
apps/webnpm run linteslint --max-warnings 0
apps/docsnpm run devnext dev --port 3002
apps/docsnpm run startnext start
apps/docsnpm run buildnext build
apps/docsnpm run linteslint --max-warnings 0
apps/apinpm run devtsx watch src/index.ts
apps/apinpm run startnode dist/index.js
apps/apinpm run buildtsup src/index.ts --format esm --target node20 --clean
apps/apinpm run linteslint src

What you could build from it