Inspiration PhD-style research gets messy fast: citation chains lose context, graphs are static, and turning papers into a story for an advisor takes manual work. Nexus is a live cockpit: you type a topic, an agent browses the real web, and a graph grows as it runs—built for the “Ship to Prod - Agentic Engineering” hackathon (TinyFish + Redis + WunderGraph Cosmo).

How we built it FastAPI starts sessions and runs the agent in the background. TinyFish streams the run (including a live preview URL); structured output feeds the pipeline. Redis holds sessions, streams raw extractions through a normalizer, dedupes URLs, and publishes events for the UI. Cosmo subscribes to Redis (EDFS) so clients get live graph updates without a custom GraphQL server. React + D3 draws the force-directed graph. Mock mode runs the same UI without a TinyFish key. What we learned Agent output needs a strict schema—what you extract is what the graph and report can show. Normalization matters: one wrong type (e.g. string vs list on findings) breaks the UI in subtle ways. Mock-first demos beat “works on my API key.” Challenges Wiring three products so events, IDs, and ordering stay consistent end-to-end. Keeping live web runs stable (seeds, limits, excluded hosts, honest handling of empty/blocked runs). Cosmo / wgc compose can break when schema rules change—fix schema, recompose, retry. That’s the gist: a small stack that turns browsing + extraction into a shared, live research view.

Built With

  • data
  • dedupe
  • docker
  • edfs
  • graphql
  • pytest
  • python-3.11+-?-fastapi-backend-tinyfish-?-streaming-web-agent-+-structured-extraction-redis-?-pub/sub
  • react
  • streams
  • vite
  • wundergraph
Share this project:

Updates