# \[🔴 Closed\] Round of 16 Challenge -Processing: Graph Data Modeling, Structure, and Importing

**URL:** <https://community.neo4j.com/t/closed-round-of-16-challenge-processing-graph-data-modeling-structure-and-importing/79829>\
**Category:** GraphAcademy Cup Community Challenge\
**Created:** [July 9, 2026, 12:24am UTC](https://community.neo4j.com/t/closed-round-of-16-challenge-processing-graph-data-modeling-structure-and-importing/79829 "2026-07-09T00:24:54Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ari\_Neo4j](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/ari_neo4j/32/34352_2.png) [@Ari\_Neo4j](https://community.neo4j.com/u/Ari_Neo4j)\
**Post date:** [July 9, 2026, 12:24am UTC](https://community.neo4j.com/t/closed-round-of-16-challenge-processing-graph-data-modeling-structure-and-importing/79829/1 "2026-07-09T00:24:54Z")

</div>

## Round of 16 Challenge: "Sweet Sixteen" 🏗 (July 9 to 15, 2026)

The bracket is heating up! This round we shift gears from Graph Data Science to the foundations that make every great graph possible: **modeling, structure, and importing**.

### 📚 This Round's GraphAcademy Topic: Processing

This round is powered by the **[Processing category](https://graphacademy.neo4j.com/categories/processing?ref=community-graphacademy-cup)** (_Graph Data Modeling, Structure, and Importing_), featuring 5 potential courses:

- **Cypher Indexes and Constraints** (2h): make your graph performant
- **Importing CSV Data into Neo4j** (1h): get data in with Cypher
- **Introduction to Vector Indexes and Unstructured Data** (1h): search the unstructured
- **Building Knowledge Graphs with LLMs** (1h): GenAI meets graphs
- **Constructing Knowledge Graphs with Neo4j GraphRAG for Python** (2h): Python + LLM pipelines

✅ **To qualify:** complete **at least 2 of the 5 courses** from the Processing category (badges must be visible on your public GraphAcademy profile).

### 🔢 The Rule of 16: Maximums Edition

Last round, 32 was your target. This round, **16 is your ceiling**. Constraints breed creativity, so your entire project must stay within ALL of these limits:

- **Maximum 16 node labels** and **maximum 16 relationship types**
- **Maximum 16 properties** on any single node or relationship
- **Maximum 16 indexes + constraints** combined
- **Maximum 16 source files** in your import (CSVs, documents for KG extraction, etc.)

Small model, big impact. The best entries will squeeze the most insight out of the tightest structure. Show us what elegant modeling looks like when you can't just add another label!

### 🛠 What to Build

Any project that showcases what you learned in the Processing courses: a well-modeled graph imported from real CSV data, a knowledge graph extracted from unstructured text with LLMs, a vector-search-powered app, or a combination. **Real data is strongly encouraged.** Show us your data model and how you got the data in!

### 📋 Submission Template

Post a new topic titled `Round of 16: [Project Name] in [Country]` containing:

- **GraphAcademy Cup Team Profile Link:**
- **GraphAcademy Public Profile Username:** _(anonymous profiles are not eligible for prizes!)_
- **Country:**
- **Courses Completed** (minimum 2 from Processing):
- **Project Name:**
- **Project Description** (32 to 320 words):
- **How your project stays within the Rule of 16 maximums:**
- **Screenshots** (data model diagram encouraged!):
- **GitHub / Demo URL:**
- **Dataset URL:**
- **Additional Notes:**

### 🧱 Prize: Winner's Choice!

The Round of 16 winner picks their LEGO legend:

- **Cristiano Ronaldo Display Figure** ⚽ OR

- **Lionel Messi Display Figure** ⚽

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/5/b/5bc0dd3a7f7f6313c4c79eeb8da5ec036d98d4e0.jpeg)

The eternal GOAT debate, settled brick by brick. Which icon will you build?

_(Reminder: anonymous GraphAcademy profiles are not eligible for prizes!)_

### 📅 Deadline

Submissions close **July 15, 2026, 23:59 (anywhere on Earth)**. Winners advance to the Quarterfinals!

Good luck, everyone! May your constraints never be violated and your imports never fail! 🚀

---

<div class="post-metadata">

**Author:** ![Ari\_Neo4j](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/ari_neo4j/32/34352_2.png) [@Ari\_Neo4j](https://community.neo4j.com/u/Ari_Neo4j)\
**Post date:** [July 9, 2026, 12:32am UTC](https://community.neo4j.com/t/closed-round-of-16-challenge-processing-graph-data-modeling-structure-and-importing/79829/2 "2026-07-09T00:32:11Z")

</div>



---

<div class="post-metadata">

**Author:** ![prashant7090](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/prashant7090/32/38056_2.png) [@prashant7090](https://community.neo4j.com/u/prashant7090)\
**Post date:** [July 14, 2026, 7:31pm UTC](https://community.neo4j.com/t/closed-round-of-16-challenge-processing-graph-data-modeling-structure-and-importing/79829/3 "2026-07-14T19:31:30Z")

</div>

- **GraphAcademy Cup Team Profile Link:** [India | GraphAcademy](https://graphacademy.neo4j.com/teams/country-in)

- **GraphAcademy Public Profile Username:** [Prashant Sable | GraphAcademy](https://graphacademy.neo4j.com/u/dcd5aa7d-29df-40ac-9125-26706634d00e)

- **Country: India**

- **Courses Completed** Yes , 3

 ![Screenshot 2026-07-15 at 1.07.07 AM](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/2/d/2d31bff94af54809ea4a6676a96426f630d3f7a5.jpeg)

- **Project Name: BBC NewsGraph Semantic Intelligence**

- **Project Description** : **BBC**  **NewsGraph Semantic Intelligence** is an AI-powered semantic search system that combines Neo4j graph database and local embeddings to discover BBC News articles based on meaning rather than keywords. It uses vector search to retrieve contextually similar articles and provides a foundation for future GraphRAG applications.

- **How your project stays within the Rule of 16 maximums: attached screenshots in github repos, Total node labels, relationships, constraints and index are under 16**

- **Screenshots** : data model -

- **GitHub / Demo URL:** [GitHub - prashant7090/bbc-news · GitHub](https://github.com/prashant7090/bbc-news)

- **Dataset URL:** [BBC News Archive | Kaggle](https://www.kaggle.com/datasets/hgultekin/bbcnewsarchive) - Real Data:

- \*\*Additional Notes:

- Imported and structured BBC News data into Neo4j using a graph-based data model.

- Designed nodes, relationships, **constraints, and indexes** to maintain data consistency and improve query performance.

- Generated local embeddings using `all-MiniLM-L6-v2` and stored vector representations with Article nodes.

- Implemented Neo4j Vector Search to perform semantic search based on meaning rather than keyword matching.

- Learned the foundation of building AI-powered search systems using Graph Database + Embeddings.\*\*

**Question (Health Category): find articles about discoveries improving people's lives.**

 ![Screenshot 2026-07-15 at 12.58.24 AM](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/4/9/49546468fa33bd9e65298519fe7ed8c17f83369a.png)

---

<div class="post-metadata">

**Author:** ![shubhamsingh.41188](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/shubhamsingh.41188/32/35981_2.png) [@shubhamsingh.41188](https://community.neo4j.com/u/shubhamsingh.41188)\
**Post date:** [July 15, 2026, 5:35pm UTC](https://community.neo4j.com/t/closed-round-of-16-challenge-processing-graph-data-modeling-structure-and-importing/79829/4 "2026-07-15T17:35:00Z")

</div>

`Round of 16: [CodeMind Graph AI — Intelligent Codebase Knowledge Graph] in [India]` containing:

- **GraphAcademy Cup Team Profile Link:[India | GraphAcademy Cup](https://cup.graphacademy.neo4j.com/teams/country-in)**

- **GraphAcademy Public Profile Username:** shubhamsingh.41188

- **Country: India**

- **Courses Completed** (minimum 2 from Processing):

 ![Screenshot 2026-07-15 162019](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/0/a/0a5a140ae6d553af8240d4df316f2b4bf189b21f.png)

- **Project Name** :`CodeMind Graph AI — Intelligent Codebase Knowledge Graph`

**Project Description** (32 to 320 words):

1. CodeMind Graph AI transforms codebases into intelligent Neo4j knowledge graphs.
2. It parses files, builds nodes (Files, Functions, Imports, Projects), and creates relationships
3. (CONTAINS, IMPORTS, CALLS). Vector embeddings (768-dim) from Ollama enable semantic search.
4. GraphRAG with llama3.1:8b answers natural language queries like "Find functions related to chatbot."
5. 6 GDS algorithms (PageRank, Degree, Betweenness, Louvain, Node Similarity, WCC) reveal hidden
6. patterns. Built within Rule of 16: exactly 15 indexes+constraints (7 uniqueness + 7 range + 1 vector).

**How your project stays within the Rule of 16 maximums:**

- **Node Labels** ≤16 **5** (Project, File, Folder, Function, Import)✅
- **Relationship Types** ≤16 **3** (CONTAINS, IMPORTS, CALLS)✅
- **Max Properties per Node** ≤16 **6** (name, path, language, size, docstring, embedding)✅
- **Max Properties per Relationship** ≤16 **0** (no properties on relationships)✅
- **Indexes + Constraints Combined** ≤16 **15** (7 constraints + 7 range indexes + 1 vector index)✅
- **Source Files** ≤16 **7** files imported from GitHub​✅

#### **Screenshots** (data model diagram encouraged!)

1. GitHub Repository Load/Local File Path

**User Action:** Entered GitHub URL And Local File Path → Clicked "Parse & Load"

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/4/9/49171e9ebb90bb4077325da6edc94fd387fef823.png)  
**Shows:** System fetched code, parsed 7 files, found 5 functions, 25 imports, 64 relationships → Graph built!

**Caption:** _"Loading codebase from GitHub — parsing and building initial graph"_

### _2. Graph Build + Embeddings_

**User Action:** After parsing, system automatically generated embeddings

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/b/2/b2c2138484eb9125002b97c13e6b4e6c5f3f7788.png)  
**Shows:** 5 code elements embedded → 39 total nodes created  
**Caption:** _"Graph created with 39 nodes — embeddings generated for semantic search"_

### _3.Node Labels Distribution_

**Shows:** Import (25), File (7), Function (5), Project (1), Folder (1) = 39 nodes

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/5/3/53a7838b103719973cb1c8edd0199de3d15a633d.png)  
**Caption:** _"5 node labels — all under Rule of 16 limit"_

### _4. Relationship Types Distribution_

**Shows:** IMPORTS (25), CONTAINS (13), CALLS (1) = 39 relationships

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/8/4/84f06744909642306e1b477fd5ef13bc44e00780.png)

**Caption:** _"3 relationship types — all under Rule of 16_

**5.Constraints + Indexes (7+7)**

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/4/e/4e74e8507f9a9a2191a9c7be27b4db0f0732ef6d.png)

**6Vector Index (1)**

**Shows:** Neo4j vector index `code_embedding` — type: VECTOR, status: ONLINE

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/b/5/b56a987f0de9dc11f792cecb8d9ed3a98956d02f.png)

**Caption:** _"Vector index created — enabling semantic search"_

_ **7** _\*\*.Embedding\*\*

**Shows:** A Function node has `embedding` property with 768-dimension array

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/5/2/5294afc7344a3187550d556e63f0a37fa552accb.png)

**Caption:** _"Vector embeddings stored — 768-dimension for each function"_

**8. Knowledge Graph**

 ![Screenshot 2026-07-15 171153](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/1/a/1a45000ef7f46451744e0142210518cd76885685.jpeg)

📊 Graph Details:  
- Total Nodes: 39  
- Total Relationships: 39  
- Node Labels: 5 (Project, File, Folder, Function, Import)  
- Relationship Types: 3 (CONTAINS, IMPORTS, CALLS)  
- Max Properties per Node: 6 (name, path, language, size, docstring, embedding)

🔗 What This Graph Shows:  
- Files and their locations (File nodes)  
- Functions defined in each file (Function nodes)  
- Import statements (Import nodes)  
- Project structure (Project, Folder nodes)

🧬 Vector Embeddings:

- 768-dim embeddings on Function nodes
- Code embedding vector index for semantic search

**9. GDS Analytics Dashboard**

**Description:**

GDS Analytics dashboard showing basic stats: 39 nodes, 39 relationships, 5 functions, 25 imports, 7 files, 0 classes, 0 methods. Shows GDS Analytics integrated.

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/7/a/7a6b46c24507f0ed291118081c7ea7ac1a2933b3.png)

_10._ **Knowledge Graph _+ LLM_**

_1.User asks: What files are in this project?_

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/e/8/e8cb0d5e1d9168aaa4ca56fbd0cbc6277001d814.png)

-\>Shows file → function relationship

2.User asks: "Who calls the function you just mentioned?"

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/a/c/acbb87afbdbc177b59ccfa19773f47b68a3ac96c.png)

-\>GraphRAG + Graph Traversal.

3.User asks: "Find functions related to 'chatbot'."

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/d/e/de4ee30a1fd9ff5af4277a44cc10638e3ff9f8de.png)

→Shows semantic search

**GitHub / Demo URL:[shubham123sing/CodeMind-Graph-AI](https://github.com/shubham123sing/CodeMind-Graph-AI)**

**Dataset URL: [streamlit/llm-examples: Streamlit LLM app examples for getting started](https://github.com/streamlit/llm-examples)**

**Additional Notes:**

1. Key Features: Codebase Import, Knowledge Graph, Vector Embeddings, GraphRAG Chat,GDS Analytics (6 algorithms), Random Discovery, Memory Management, Fully Offline.
2. Future Scope: MCP Integration, Multi-Language Support, VS Code Extension
3. Coding AI Agent Ready:Graph provides persistent code memory — AI agents can query call chains, dependencies, and code structure instantly.
