I built this dashboard to monitor cryptocurrency, blockchain, and AI news in real time. It fetches live updates from major RSS feeds, runs them through a basic sentiment and priority analysis, and streams them into a glassmorphism cyberpunk-style interface.
It maps live RSS feeds into simulated X (Twitter) profiles, Telegram channels, and Web news portals so I can see what a live terminal feed looks like.
- Live News Aggregator: Pulls actual, real-time news from platforms like Cointelegraph, Decrypt, Blockworks, CryptoSlate, and VentureBeat.
- Custom Ingestion Channels: I can add custom X handles, Telegram channels, or RSS web feed URLs on the fly to expand the stream.
- Dynamic Streaming Simulator: Feeds are queued and streamed at adjustable speeds (from 1 second to 8 seconds intervals).
- Auto-Recycled Buffer: Once news is fetched, it is stored in a local buffer and recycled, ensuring the feed never runs out of real content even if left open for hours.
- Smart Filtering: Quick filter controls for source types (X, Telegram, Web), sentiments (positive, neutral, negative), and severity (Medium, High, Critical).
- Emergency Flash Alert: A panic button to inject simulated critical security alerts (DeFi exploits, market crashes, stablecoin depegs) to test the UI's reaction.
- Responsive Cyberpunk UI: Designed with a neon-glow glassmorphism theme, built using pure CSS and React.
To run this project locally, make sure you have:
- Node.js (v18.0.0 or higher is recommended)
- npm (comes with Node.js) or yarn / pnpm
-
Clone the repository:
git clone https://github.com/srimadhavsats/cnc-crypto-dash.git cd cnc-crypto-dash -
Install the dependencies:
npm install
-
Start the local development server:
npm run dev
This will boot up the Vite dev server. Open the local link (usually
http://localhost:5173/) in your browser. -
Build for Production:
npm run build
- Frontend Framework: Built with React 19 and Vite 8 for fast builds and hot module replacement.
- Styling: Styled using vanilla CSS for the custom cyberpunk theme and layout, combined with standard React inline styles for some structural grid alignments.
- Icons: Powered by
lucide-react. - CORS Bypass: Since standard RSS feeds block client-side requests, I used the free
rss2jsonAPI service to fetch and parse feeds on the fly.