Pre-emptive scam detection for Solana. SolGuard monitors new token launches in real-time, scores rug pull risk before users get rugged, and alerts the community via a live dashboard and autonomous X/Twitter posts.
98.6% of pump.fun tokens are rug pulls (Solidus Labs, 2025). Thousands launch daily. Existing tools like RugCheck and SolSniffer are passive: you have to know to check a token before you buy it. Most users don't.
The security gap on Solana looks like this:
- zachxbt investigates scams after they happen
- samczsun / SEAL responds to exploits during attacks
- Nobody warns users before they get rugged
SolGuard fills that gap.
SolGuard connects to Solana's mainnet via WebSocket (powered by Helius), listens for pump.fun token creation events, and runs every new token through a 5-factor risk engine:
| Factor | Weight | What it checks |
|---|---|---|
| Deployer History | 40% | Has this wallet launched rug pulls before? How many tokens total? |
| Liquidity | 25% | Is LP locked? What percentage? For how long? |
| Token Authority | 15% | Is mint authority revoked? Freeze authority? Mutable metadata? |
| Holder Concentration | 10% | Does one wallet hold a dangerous % of supply? |
| Token Age | 10% | How old is this token? Minutes-old tokens are higher risk. |
Each token gets a score from 0 (extremely dangerous) to 100 (safe), with a color-coded status:
- 🔴 RED (0-30): High rug pull risk. Avoid.
- 🟡 YELLOW (31-60): Proceed with caution. Multiple risk flags.
- 🟢 GREEN (61-100): Lower risk. Standard safety checks passed.
Live Dashboard
- Real-time token risk monitoring with auto-refresh
- Filter by risk level (RED / YELLOW / GREEN) with counts
- Sort by newest, oldest, or risk score
- Expandable token detail with visual risk breakdown (5 factor bars)
- External links to RugCheck, Solscan, and DexScreener
- Mobile responsive (card layout on small screens, table on desktop)
Autonomous Scanner
- WebSocket connection to Solana mainnet via Helius
- Monitors pump.fun program for new token creation events
- Automatic scanning with RugCheck API integration
- Deployer wallet history analysis via Helius Enhanced Transactions API
- Serial rugger detection (cross-references deployer's past tokens in local DB)
Alert System
- X/Twitter posting for high-risk token discoveries
- Configurable alert thresholds
- Runtime: Node.js 24+
- Framework: Next.js 16 (App Router, TypeScript)
- Styling: Tailwind CSS v4
- Database: Turso / LibSQL (compatible with SQLite, works in serverless)
- Blockchain: @solana/web3.js (WebSocket subscription)
- APIs: Helius (deployer history, wallet assets), RugCheck (token risk data)
- Alerts: X API v2 (OAuth 1.0a)
-
Clone and install:
git clone https://github.com/gabchess/solguard.git cd solguard npm install -
Configure environment variables — create
.env.localin the project root:HELIUS_API_KEY=your_helius_api_key # Optional: Turso cloud database (defaults to local SQLite file) TURSO_DATABASE_URL=libsql://your-db.turso.io TURSO_AUTH_TOKEN=your_turso_token # Optional: X/Twitter alerts X_API_KEY=your_x_api_key X_API_SECRET=your_x_api_secret X_ACCESS_TOKEN=your_x_access_token X_ACCESS_SECRET=your_x_access_secret
-
Start the development server:
npm run dev
-
Open http://localhost:3000. The scanner starts automatically and begins monitoring pump.fun for new token launches.
solguard/
├── src/
│ ├── app/
│ │ ├── page.tsx # Dashboard (main UI)
│ │ ├── layout.tsx # Root layout, nav, footer
│ │ ├── leaderboard/page.tsx # Serial Rugger Leaderboard
│ │ ├── deployer/[address]/ # Deployer profile pages
│ │ ├── roadmap/page.tsx # Roadmap page
│ │ └── api/
│ │ ├── tokens/route.ts # GET: list tokens with stats
│ │ ├── scan/route.ts # POST: scan a token by mint
│ │ ├── leaderboard/route.ts # GET: serial rugger rankings
│ │ └── deployer/[address]/ # GET: deployer profile data
│ ├── components/
│ │ ├── RiskChart.tsx # Donut chart (recharts)
│ │ ├── ScannerStatus.tsx # Live scanner status widget
│ │ ├── MatrixLoader.tsx # Loading animation
│ │ └── SerialRuggerBoard.tsx # Leaderboard table
│ ├── lib/
│ │ ├── scanner.ts # pump.fun WebSocket listener
│ │ ├── risk-engine.ts # 5-factor risk scoring
│ │ ├── rugcheck.ts # RugCheck API client
│ │ ├── helius.ts # Helius API client
│ │ ├── alerts.ts # X/Twitter alert posting
│ │ ├── db.ts # Turso/LibSQL operations
│ │ └── doc-links.ts # Risk reason → docs mapping
│ └── types/
│ └── index.ts # TypeScript interfaces
└── AUDIT-REPORT.md # Security audit report
Current (MVP)
- Real-time pump.fun scanner
- 5-factor risk scoring engine
- Live dashboard with filters, sorting, risk breakdown
- Deployer history analysis
- Mobile responsive UI
- X/Twitter alert integration
Next
- "Scan Any Token" search bar (paste mint address, get instant risk score)
- Serial Rugger Profile pages (/deployer/[address])
- Deployer fund-flow graph visualization
- Telegram bot alerts
- DeFi protocol anomaly detection (large fund movements, suspicious contract upgrades)
- On-chain risk attestations
The scoring is intentionally conservative. A few key overrides ensure dangerous tokens can't game their way to a GREEN score:
- Any deployer with previous rugs: Score capped at YELLOW, regardless of other factors
- Active mint authority: Score capped at YELLOW (new tokens can be minted at any time)
- Unknown deployer (no history): Deployer factor starts at 40/100, not 50
The engine uses data from RugCheck (token authorities, LP status, holder concentration, risk flags) combined with Helius Enhanced Transactions API (deployer transaction history, token age). The database tracks which deployers have launched RED tokens, building a serial rugger database over time.
SolGuard uses two Helius endpoints:
- WebSocket (mainnet RPC) — Real-time subscription to pump.fun program logs. When a new token creation event fires, SolGuard extracts the mint address and queues it for scanning.
- Enhanced Transactions API (
/v0/addresses/{address}/transactions) — Fetches the deployer wallet's transaction history filtered byTOKEN_MINTtype. This reveals how many tokens the deployer has previously created and whether any of them scored RED in SolGuard's database (serial rugger detection).