As Ocean Agentics’ Head of Product, I developed Ryu, the Network Graph application, to connect ocean data systems, organizations, and countries through documented relationships.
Ryu helps researchers find data, teams plan integrations, and people investigate marine information providers. Knowing who operates a portal, what it contains, and its connections helps users decide where to look next. It connects the search for data with an understanding of its providers.
Follow a question through the network
Who operates the Ocean Biodiversity Information System, and what connects it to other sources of marine biodiversity data?
Search for OBIS and explore its graph or catalogue record: data, access methods, representative content, and sources. Relationships identify IOC-UNESCO IODE as its operator and connect it to other systems and organizations.
The graph supplies context; the catalogue supports comparison. Shared search and filters connect both views. The public snapshot contains 237 entities and 274 relationships, a researched collection with defined limits.
Make every connection explain itself
Relationships distinguish operation, governance, funding, membership, contribution, and data transfer. Each has a direction, description, and supporting sources.
The WoRMS-to-OBIS relationship describes taxonomic enrichment: matching submitted scientific names against WoRMS and including that information in occurrence exports. Its evidence explains what the connection actually does.
Profiles collect access methods, data types, formats, research gaps, and source content. Review labels show research status; coverage indicators distinguish the six interface languages from available record translations. Evidence and limitations stay visible while users compare systems or follow a connection.

Two sides of the application
Ryu separates its editable research records from the public discovery application.
- Local authoring: an Express/TypeScript API validates PostgreSQL records. Shared contracts define three node types, six relationship types, citations, localization, and review metadata.
- Public export: a redacted JSON snapshot and gallery assets omit private reviewer information and operational routes.
- Browser exploration: React and Zustand coordinate search, filtering, and selection. Scope, projection, and geometry precede layout and Three.js rendering; graph, catalogue, and profiles share the exported records.
Search runs in the browser. An English-language export powers this page’s compact preview; the live application provides the full catalogue and profiles.
Developed beyond the graph
Repository history traces the shift from graph visualization to structured, evidenced research:
- Localized records and shared search coordinated aliases, language fallback, matching, and filters.
- Relationship-detail controls added graph detail levels while preserving entities and relationship meanings.
- Static public hosting separated discovery from the editable database and production API.
The graph becomes a starting point for investigating an information ecosystem: users can follow an overview into a record, its relationships, and the evidence behind them.
Explore Network Graph · All projects · About me · Discuss a project