OrbitGraph AI – GitLab Knowledge Graph Assistant

Inspiration

Modern software projects contain thousands of lines of code, issues, merge requests, and documentation spread across multiple locations. When developers join a new project, they often spend hours understanding how different parts of the repository are connected. We wanted to solve this problem by creating a system that transforms GitLab repository data into a connected knowledge graph that developers can explore using natural language.

Our inspiration came from a common challenge in software development: understanding unfamiliar codebases quickly. Instead of manually searching through files, issues, and merge requests, we envisioned an intelligent assistant that could provide repository insights instantly.

What It Does

OrbitGraph AI converts GitLab repository data into a Neo4j knowledge graph and allows developers to query project information using natural language. The system collects repository files, issues, merge requests, and developer activity from GitLab and maps relationships between them.

Developers can ask questions such as:

  • Which merge request fixed a login bug?
  • Where is authentication implemented?
  • What issues exist in the project?
  • Who created specific merge requests?
  • Which files are related to a particular feature?

By connecting repository entities through a knowledge graph, the platform helps developers understand project structure and history much faster.

How We Built It

The project was built using the following technology stack:

Frontend

  • React
  • Axios

Backend

  • FastAPI
  • Python

Knowledge Layer

  • Neo4j Graph Database

Integration Layer

  • GitLab API

The workflow begins by fetching repository data from GitLab using the GitLab API. The collected information is processed and transformed into graph nodes and relationships inside Neo4j.

Examples of graph entities include:

  • Repository
  • File
  • Issue
  • Merge Request
  • Developer

Relationships such as HAS_FILE, HAS_ISSUE, HAS_MR, LINKED_TO, and CREATED allow us to represent project knowledge visually and query it efficiently.

A FastAPI backend communicates with Neo4j and exposes API endpoints that answer developer questions. A React frontend provides a simple interface where users can interact with the knowledge graph.

Challenges We Faced

One of the biggest challenges was designing meaningful relationships between GitLab entities. Repository data is naturally distributed across files, issues, and merge requests, and determining how these components should be connected required careful planning.

Another challenge was integrating data from GitLab and converting it into a graph structure that could support natural language-style queries. We also had to ensure the graph remained easy to visualize and understand during demonstrations.

Working with Neo4j and Cypher queries was a valuable learning experience, especially when creating relationships between issues, merge requests, files, and developers.

What We Learned

Through this project, we learned how knowledge graphs can be used to represent software engineering data and improve repository understanding. We gained hands-on experience with GitLab APIs, Neo4j graph modeling, FastAPI backend development, and React frontend integration.

Most importantly, we discovered that software repositories contain rich interconnected knowledge that can be made far more accessible when represented as a graph rather than a collection of disconnected resources.

Future Improvements

Future versions of OrbitGraph AI could include:

  • AI-powered repository summarization
  • Automatic dependency analysis
  • Semantic code search
  • Developer expertise recommendations
  • Large Language Model (LLM) integration for advanced reasoning
  • Support for multiple repositories and organizations

Conclusion

OrbitGraph AI demonstrates how GitLab repository data can be transformed into a searchable knowledge graph that helps developers understand projects faster, reduce onboarding time, and improve collaboration. By combining GitLab data, graph technology, and natural language interaction, we provide a smarter way to explore and understand software projects.

Built With

  • axios
  • cors-middleware
  • css
  • cypher
  • data
  • developer-intelligence
  • fastapi
  • git
  • gitlab
  • gitlab-api
  • gitlab-orbit
  • graph-databases
  • html
  • javascript
  • json
  • knowledge-graphs
  • natural-language-querying
  • neo4j
  • python
  • react
  • repository
  • repository-analytics
  • rest-apis
  • software-engineering-analytics
  • vite
Share this project:

Updates