A Solana token scanner. Paste a contract address and it reads the blockchain directly. No wallet connection, no signature, no account, no API key asked from you.
It answers one question before you buy: can somebody still do something to this token that you cannot undo?
| Check | What it reads |
|---|---|
| Mint authority | Whether new supply can still be printed and dilute you |
| Freeze authority | Whether your wallet can be frozen so you cannot sell |
| Liquidity | Real depth against market cap: whether an exit actually exists |
| Age | Time since the first market opened |
| Top 10 holders | Supply held by the ten largest wallets, pools excluded |
| Largest holder | The biggest single wallet outside the pool |
| Bundled wallets | Top accounts that trace back to one owner |
| Snipers | Who bought in the first blocks |
Each result says plainly what it could not measure instead of filling the gap with a guess. A score out of 100 only appears when every check actually ran. Otherwise the ring shows how many did.
A single HTML file, written from scratch. No framework, no template, no build step.
| Piece | Role |
|---|---|
index.html |
The whole app: scanner, live report, trending feed, method page, light and dark themes |
netlify/functions/rpc.js |
Relays Solana RPC calls so the browser is not blocked by cross-origin rules, and keeps any endpoint key server-side |
netlify/functions/scans.js |
Public log of scanned tokens, stored in Netlify Blobs. No IP, no visitor data, only the token and how often it was seen |
netlify/functions/social.js |
Accounts and the community feed. Passwords are never stored: salted scrypt hashes, HMAC-signed sessions |
Market data comes from DexScreener, live BTC / ETH / SOL prices from Binance over a public websocket.
Connect the repo to Netlify. netlify.toml already tells it there is nothing to build and where the functions live. One environment variable is required for the community feed:
SOCIAL_SECRET: a long random string
