Code lives in this repo at code/newslogic/. Clone the portfolio repository to get the source.
How to run
Clone this repository, then open a terminal in the-monospace-web/code/newslogic.
Install Rust (rustup) if needed. Run cargo build to compile.
Start the API server: cargo run -- api-server. The REST API will serve events and map data.
Process the memory graph (RSS feeds, BitNet extraction, Neo4j): cargo run -- memory-graph.
Configure RSS feeds in config/feeds.yaml. Ensure Neo4j and any required env vars are set before running.
code/newslogic/
Overview
NewsLogic is a Rust-based system for processing RSS feeds, extracting events from news articles, geocoding locations using GeoJSON data for the 757 area, and storing them in Neo4j with spatial coordinates for visualization.
Architecture
Data Flow
Article → BitNet Agent → Events + Locations → Neo4j → Web API → Leaflet Map
Key Components
GeoJSON Data Layer - Loads and indexes GeoJSON files for location lookup and geocoding
BitNet Agent - Extracts events from article content, classifies event types, and geocodes locations
Neo4j Storage - Stores Events with coordinates and creates relationships: Article → Event → Location
API Server - REST API for querying events and serving data to frontend visualization
Worker System - Processes RSS feeds and extracts structured data