Research Relationship Visualization — Visualize collaboration networks among researchers, institutions, keywords, and nations using interactive network graphs.
Relatenta ingests scholarly publication data from the OpenAlex API (250M+ records) or CSV files, and renders 4-layer network graphs and heatmaps that reveal collaboration patterns across researchers, topics, organizations, and countries.
- OpenAlex Author Search — Enhanced disambiguation with H-index, citations, ORCID, and research topics
- 4-Layer Network Visualization — Co-authorship, keyword co-occurrence, institutional collaboration, and international collaboration
- Heatmap Analysis — Author-keyword and nation-nation collaboration matrices
- Research Insights (NEW in v1.1.0)
- Community Detection — Auto-identify research clusters with color-coded visualization
- Emerging Topics (Burst Detection) — Spot keywords with sudden growth
- Collaborator Recommendation — Find potential collaborators by keyword overlap and network proximity
- Shortest Path Analysis — Discover networking paths between any two researchers
- Research Gap Detection — Identify under-explored research combinations
- Strategic Diagram — Classify themes as Motor / Niche / Emerging / Basic
- Thematic Evolution — Visualize how research themes evolve over time
- CSV Import/Export — Bulk import and export of works, authors, affiliations, and keywords
- Focus Filtering — Ego-network analysis centered on specific nodes
- Streamlit Cloud Ready — In-memory database with ZIP export/restore for data persistence
git clone https://github.com/Denny-Hwang/Relatenta.git
cd Relatenta
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txtstreamlit run streamlit_app.pyThe app opens at http://localhost:8501.
- Search for a researcher name in the sidebar (e.g., "Geoffrey Hinton")
- Review the search results — check institution, H-index, and topics to disambiguate
- Select one or more authors and click "Ingest Selected"
- Visualize — go to the Graph tab, pick a layer, click "Build Graph"
- Export your data as ZIP before closing the browser
streamlit_app.py (UI, sidebar, tabs)
|
+-- app/db.py (single in-memory SQLite engine)
+-- app/models.py (SQLAlchemy ORM, 12 tables)
+-- app/crud.py (data ops, edge computation)
+-- app/connectors_openalex.py (OpenAlex API client)
+-- app/services_graph.py (4-layer network graph builder)
+-- app/services_heatmap.py (heatmap matrix generator)
+-- app/services_export.py (CSV/ZIP export)
Single Streamlit process. No separate backend server. One in-memory SQLite database shared across the session.
This app uses an in-memory database. Data exists only during the active browser session.
| Action | How |
|---|---|
| Save | Sidebar > "Export CSV" — downloads a ZIP with all tables |
| Restore | Sidebar > "Restore from Export" — upload a previously exported ZIP |
| Layer | Nodes | Edges | Use Case |
|---|---|---|---|
| Co-authorship | Authors | Shared publications | Identify collaborators |
| Keyword Co-occurrence | Keywords | Papers with both topics | Map research landscapes |
| Institutional | Organizations | Joint publications | Discover partnerships |
| National | Countries | International co-authorships | Analyze global patterns |
- App: Streamlit, PyVis (network graphs), Plotly (heatmaps)
- Database: In-memory SQLite + SQLAlchemy ORM
- Data Source: OpenAlex API
- Language: Python 3.10+
- User Manual — Step-by-step usage guide
- Implementation Guide — Technical details and extension guide
- Changelog — Version history and release notes
- v1.0.0 Feature Spec — Initial release feature documentation
- v1.1.0 Development Spec — Research insight enhancement specification
- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License — see the LICENSE file for details.