- deterministic (same inputs → same outputs)
- fast (cache what’s expensive)
- shareable (stable permalinks + OG previews)
High-level design
OpenKol runs as a single Next.js application that includes:- the UI
- API routes
- scoring modules
- OG image rendering
Core components
- Client UI for input, dashboards, and shareable pages
- API routes to normalize posts and fetch market data
- Scoring modules implemented as pure functions
- Storage for normalized posts and analysis snapshots
- Caching for expensive lookups and reanalysis
Data flow
- User submits a post URL.
- API normalizes the post and extracts symbols/addresses.
- Token/pair is resolved and liquidity + candles are pulled from a DEX analytics provider.
- Scoring modules compute Social, Chart, and Overall scores.
- Results are stored (snapshot) and cached for fast reloads.
- UI renders the analysis page and scorecard.
Rendering and sharing
- OG images are generated on demand for social previews
- Analysis pages are shareable via stable permalinks