JacobLinCool Codex commited on
Commit
9219266
·
verified ·
1 Parent(s): 5a83369

feat: add offline project index artifact

Browse files

Co-authored-by: Codex <noreply@openai.com>

README.md CHANGED
@@ -51,9 +51,11 @@ Then open <http://127.0.0.1:7860>.
51
 
52
  ```bash
53
  python scripts/crawl_hf_spaces.py --org build-small-hackathon --out data/projects.json
 
54
  ```
55
 
56
- The app uses `data/projects.json` at runtime, so deployed builds remain usable without live crawl calls.
 
57
 
58
  ## Test
59
 
 
51
 
52
  ```bash
53
  python scripts/crawl_hf_spaces.py --org build-small-hackathon --out data/projects.json
54
+ python scripts/build_project_index.py --projects data/projects.json --out data/project_index.json
55
  ```
56
 
57
+ The app uses `data/projects.json` and `data/project_index.json` at runtime. The index validates the snapshot timestamp,
58
+ source, project order, and digest before the app starts.
59
 
60
  ## Test
61
 
app.py CHANGED
@@ -15,8 +15,9 @@ from hackathon_advisor.data import ProjectIndex
15
  ROOT = Path(__file__).parent
16
  STATIC_DIR = ROOT / "static"
17
  DATA_PATH = ROOT / "data" / "projects.json"
 
18
 
19
- index = ProjectIndex.from_file(DATA_PATH)
20
  engine = AdvisorEngine(index)
21
  app = Server()
22
 
@@ -44,6 +45,9 @@ def health() -> dict:
44
  "ok": True,
45
  "projects": len(index.projects),
46
  "snapshot_generated_at": index.generated_at,
 
 
 
47
  }
48
 
49
 
@@ -52,6 +56,9 @@ def bootstrap() -> dict:
52
  return {
53
  "project_count": len(index.projects),
54
  "snapshot_generated_at": index.generated_at,
 
 
 
55
  "top_projects": [project.to_public_dict() for project in index.top_projects(limit=8)],
56
  "whitespace": [item.to_dict() for item in index.find_whitespace(limit=5)],
57
  }
 
15
  ROOT = Path(__file__).parent
16
  STATIC_DIR = ROOT / "static"
17
  DATA_PATH = ROOT / "data" / "projects.json"
18
+ INDEX_PATH = ROOT / "data" / "project_index.json"
19
 
20
+ index = ProjectIndex.from_files(DATA_PATH, INDEX_PATH)
21
  engine = AdvisorEngine(index)
22
  app = Server()
23
 
 
45
  "ok": True,
46
  "projects": len(index.projects),
47
  "snapshot_generated_at": index.generated_at,
48
+ "index_generated_at": index.index_generated_at,
49
+ "index_algorithm": index.index_algorithm,
50
+ "snapshot_digest": index.snapshot_digest,
51
  }
52
 
53
 
 
56
  return {
57
  "project_count": len(index.projects),
58
  "snapshot_generated_at": index.generated_at,
59
+ "index_generated_at": index.index_generated_at,
60
+ "index_algorithm": index.index_algorithm,
61
+ "snapshot_digest": index.snapshot_digest,
62
  "top_projects": [project.to_public_dict() for project in index.top_projects(limit=8)],
63
  "whitespace": [item.to_dict() for item in index.find_whitespace(limit=5)],
64
  }
data/project_index.json ADDED
@@ -0,0 +1,2817 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_version": 1,
3
+ "algorithm": "tfidf-sparse-v1",
4
+ "generated_at": "2026-06-06T19:44:42+00:00",
5
+ "snapshot_generated_at": "2026-06-06T19:20:47+00:00",
6
+ "snapshot_source": "https://huggingface.co/api/spaces?author=build-small-hackathon&limit=100",
7
+ "snapshot_digest": "1d59c168b446bc1268ef648897fac523e85b258fd6048a37409b9cfbc5c28329",
8
+ "document_count": 100,
9
+ "vocabulary_size": 721,
10
+ "idf": {
11
+ "1000": 4.92197334,
12
+ "10pratibh": 4.92197334,
13
+ "14b": 4.92197334,
14
+ "2.6": 4.92197334,
15
+ "30s": 4.92197334,
16
+ "32": 4.92197334,
17
+ "32b-class": 4.92197334,
18
+ "35b": 4.92197334,
19
+ "a3b": 4.92197334,
20
+ "abroad": 4.92197334,
21
+ "abstract": 4.92197334,
22
+ "accompaniment": 4.92197334,
23
+ "across": 4.92197334,
24
+ "actually": 4.51650823,
25
+ "adindamochamad": 4.92197334,
26
+ "admins": 4.92197334,
27
+ "admiraltaco": 4.92197334,
28
+ "ads-b": 4.92197334,
29
+ "advent": 4.92197334,
30
+ "adventure": 4.92197334,
31
+ "advisor": 4.92197334,
32
+ "agent": 3.53567898,
33
+ "agent-eval-golden-dataset": 4.92197334,
34
+ "agent-trace": 4.92197334,
35
+ "agentic": 4.51650823,
36
+ "agents": 4.22882616,
37
+ "ai": 3.21722524,
38
+ "ai-agents": 4.92197334,
39
+ "ai-news": 4.92197334,
40
+ "ai-powered": 4.51650823,
41
+ "aircraft": 4.92197334,
42
+ "alien": 4.92197334,
43
+ "all-bench-leaderboard": 4.92197334,
44
+ "all-minilm-l6-v2": 4.51650823,
45
+ "amazon": 4.92197334,
46
+ "ambience": 4.92197334,
47
+ "amnesiac": 4.92197334,
48
+ "an": 4.0056826,
49
+ "analysis": 4.92197334,
50
+ "analytics": 4.92197334,
51
+ "and": 3.41789594,
52
+ "animais": 4.92197334,
53
+ "any": 4.92197334,
54
+ "anything": 4.92197334,
55
+ "aoti": 4.92197334,
56
+ "api": 4.92197334,
57
+ "apni": 4.92197334,
58
+ "app": 4.92197334,
59
+ "argument": 4.92197334,
60
+ "army": 4.92197334,
61
+ "art": 4.22882616,
62
+ "as": 4.51650823,
63
+ "asset": 4.92197334,
64
+ "assisstant": 4.92197334,
65
+ "assistant": 3.41789594,
66
+ "asssitant": 4.92197334,
67
+ "at": 4.92197334,
68
+ "atelier": 4.92197334,
69
+ "atlas": 4.92197334,
70
+ "attention": 4.92197334,
71
+ "audio": 4.92197334,
72
+ "awaaz": 4.92197334,
73
+ "baai": 4.92197334,
74
+ "backyard": 4.22882616,
75
+ "backyard-ai": 4.0056826,
76
+ "before": 4.92197334,
77
+ "bge-small-en-v1.5": 4.92197334,
78
+ "bhagavad": 4.92197334,
79
+ "bilingual": 4.92197334,
80
+ "bill": 4.92197334,
81
+ "bills": 4.92197334,
82
+ "biosignal": 4.92197334,
83
+ "black-forest-labs": 4.0056826,
84
+ "bonsai-image-binary-4b-mlx-1bit": 4.92197334,
85
+ "bonsai-image-ternary-4b-mlx-2bit": 4.92197334,
86
+ "borderless": 4.92197334,
87
+ "both": 4.92197334,
88
+ "break": 4.92197334,
89
+ "bridge": 4.92197334,
90
+ "briefing": 4.92197334,
91
+ "briefing-32": 4.92197334,
92
+ "brutal": 4.92197334,
93
+ "buddy": 4.92197334,
94
+ "build": 4.0056826,
95
+ "build-small-hackathon": 2.97606319,
96
+ "builder": 4.92197334,
97
+ "business": 4.92197334,
98
+ "but": 4.92197334,
99
+ "by": 4.92197334,
100
+ "can": 4.92197334,
101
+ "case": 4.92197334,
102
+ "categorizes": 4.92197334,
103
+ "cbensimon": 4.92197334,
104
+ "chatbot": 4.92197334,
105
+ "chatgpt": 4.92197334,
106
+ "chatroom": 4.92197334,
107
+ "chess": 4.92197334,
108
+ "child": 4.92197334,
109
+ "children": 4.92197334,
110
+ "cholec-yolo26n-seg": 4.92197334,
111
+ "chorus": 4.92197334,
112
+ "chose": 4.92197334,
113
+ "classifier": 4.92197334,
114
+ "claude": 4.92197334,
115
+ "clean": 4.92197334,
116
+ "coach": 4.51650823,
117
+ "coaching": 4.92197334,
118
+ "code": 4.22882616,
119
+ "codeflow": 4.92197334,
120
+ "codex": 4.92197334,
121
+ "cognitive": 4.92197334,
122
+ "cognitiveengineering": 4.92197334,
123
+ "cohere-transcribe-03-2026": 4.92197334,
124
+ "coherelabs": 4.51650823,
125
+ "colaborativo": 4.92197334,
126
+ "com": 4.92197334,
127
+ "come": 4.92197334,
128
+ "communities": 4.92197334,
129
+ "companion": 4.92197334,
130
+ "compare": 4.51650823,
131
+ "comparison": 4.92197334,
132
+ "compliment": 4.92197334,
133
+ "compliment-forest-flux-lora": 4.92197334,
134
+ "compliment-forest-minicpm5-1b": 4.92197334,
135
+ "compliment-forest-sft": 4.92197334,
136
+ "compliment-forest-traces": 4.92197334,
137
+ "compliment-forest-watercolor": 4.92197334,
138
+ "configured": 4.92197334,
139
+ "console": 4.92197334,
140
+ "contact": 4.92197334,
141
+ "content": 4.92197334,
142
+ "controlnet-scribble-sdxl-1.0": 4.92197334,
143
+ "cosmic": 4.92197334,
144
+ "council": 4.92197334,
145
+ "creates": 4.92197334,
146
+ "crime": 4.92197334,
147
+ "cross-encoder": 4.92197334,
148
+ "cryptic": 4.92197334,
149
+ "culture": 4.92197334,
150
+ "custom": 4.92197334,
151
+ "custom-frontend": 4.92197334,
152
+ "customs": 4.92197334,
153
+ "darwin": 4.92197334,
154
+ "darwin-35b-a3b-opus": 4.92197334,
155
+ "data": 4.51650823,
156
+ "de": 4.92197334,
157
+ "declarations": 4.92197334,
158
+ "delightfully": 4.92197334,
159
+ "demo": 4.51650823,
160
+ "demo-builder": 4.92197334,
161
+ "demos": 4.92197334,
162
+ "demucs": 4.92197334,
163
+ "dental": 4.92197334,
164
+ "dentiste": 4.92197334,
165
+ "describe": 4.92197334,
166
+ "design": 4.92197334,
167
+ "desk": 4.92197334,
168
+ "destroyer": 4.92197334,
169
+ "detective": 4.51650823,
170
+ "deterrent": 4.92197334,
171
+ "didn": 4.92197334,
172
+ "differently": 4.92197334,
173
+ "discover": 4.51650823,
174
+ "discovery": 4.92197334,
175
+ "dispatch": 4.92197334,
176
+ "distance": 4.92197334,
177
+ "distillation": 4.92197334,
178
+ "dm": 4.92197334,
179
+ "dms": 4.92197334,
180
+ "docker": 4.0056826,
181
+ "documentation-images": 4.92197334,
182
+ "documents": 4.92197334,
183
+ "doppleground": 4.92197334,
184
+ "draw": 4.92197334,
185
+ "dream": 4.51650823,
186
+ "dream-journal": 4.92197334,
187
+ "dreams": 4.92197334,
188
+ "dreamshaper-xl-lightning": 4.92197334,
189
+ "dreamwall": 4.92197334,
190
+ "drop": 4.92197334,
191
+ "dubbing": 4.51650823,
192
+ "duckdb": 4.92197334,
193
+ "ducks": 4.92197334,
194
+ "dudu": 4.92197334,
195
+ "echo": 4.92197334,
196
+ "edge-ai": 4.92197334,
197
+ "education": 4.92197334,
198
+ "elemental": 4.92197334,
199
+ "emrekuruu": 4.92197334,
200
+ "encouragement": 4.92197334,
201
+ "engine": 4.92197334,
202
+ "english": 4.92197334,
203
+ "entered": 4.92197334,
204
+ "espressocheese": 4.92197334,
205
+ "ettin-reranker-32m-v1": 4.92197334,
206
+ "evaluate": 4.92197334,
207
+ "evaluation": 4.92197334,
208
+ "every": 4.92197334,
209
+ "evidence": 4.92197334,
210
+ "evolution": 4.92197334,
211
+ "exam": 4.92197334,
212
+ "experiments": 4.92197334,
213
+ "expressions": 4.92197334,
214
+ "facebook": 4.92197334,
215
+ "family": 4.92197334,
216
+ "fast": 4.92197334,
217
+ "faux": 4.92197334,
218
+ "fighters": 4.92197334,
219
+ "figures": 4.92197334,
220
+ "final-bench": 4.92197334,
221
+ "fine-tuned": 4.51650823,
222
+ "firewall": 4.92197334,
223
+ "first": 4.22882616,
224
+ "first-principle": 4.92197334,
225
+ "flame": 4.92197334,
226
+ "flipkart": 4.92197334,
227
+ "flowchart": 4.92197334,
228
+ "flowering": 4.92197334,
229
+ "flux": 4.92197334,
230
+ "flux.1-dev": 4.92197334,
231
+ "flux.1-schnell": 4.51650823,
232
+ "flux.2-klein-4b": 4.22882616,
233
+ "for": 3.21722524,
234
+ "forensics": 4.92197334,
235
+ "forest": 4.92197334,
236
+ "format": 4.92197334,
237
+ "foundation": 4.92197334,
238
+ "fp8da": 4.92197334,
239
+ "from": 3.66921037,
240
+ "fully": 4.92197334,
241
+ "fun": 4.92197334,
242
+ "game": 4.0056826,
243
+ "garden": 4.92197334,
244
+ "gemma": 4.51650823,
245
+ "gemma-3-27b-it": 4.92197334,
246
+ "gemma-4-12b-it": 4.92197334,
247
+ "gemma-4-12b-it-qat-gguf": 4.92197334,
248
+ "gemma-4-26b-a4b-it": 4.92197334,
249
+ "gemma4chat": 4.92197334,
250
+ "generate": 4.92197334,
251
+ "generative-art": 4.92197334,
252
+ "generator": 4.51650823,
253
+ "get": 4.51650823,
254
+ "gets": 4.92197334,
255
+ "gguf": 4.0056826,
256
+ "ghost": 4.92197334,
257
+ "gita": 4.92197334,
258
+ "github": 4.92197334,
259
+ "gitopadesh": 4.92197334,
260
+ "google": 4.22882616,
261
+ "gorm-lora": 4.92197334,
262
+ "gpt-oss-20b": 3.53567898,
263
+ "gradio": 1.12648415,
264
+ "gradio-server": 4.92197334,
265
+ "grm": 4.92197334,
266
+ "grm-2.6-opus": 4.92197334,
267
+ "grounded": 4.92197334,
268
+ "gtrox": 4.92197334,
269
+ "guide": 4.92197334,
270
+ "guiding": 4.92197334,
271
+ "guitar": 4.92197334,
272
+ "hackathon": 4.22882616,
273
+ "hackaton": 4.92197334,
274
+ "handful": 4.92197334,
275
+ "handoff": 4.92197334,
276
+ "happen": 4.92197334,
277
+ "harrier-oss-v1-0.6b": 4.92197334,
278
+ "has": 4.92197334,
279
+ "having": 4.92197334,
280
+ "healthcare": 4.92197334,
281
+ "help": 4.92197334,
282
+ "her": 4.92197334,
283
+ "here": 4.92197334,
284
+ "hexgrad": 4.92197334,
285
+ "hindi": 4.92197334,
286
+ "home": 4.92197334,
287
+ "honour": 4.92197334,
288
+ "hours": 4.92197334,
289
+ "how": 4.92197334,
290
+ "huggingface": 4.51650823,
291
+ "huggingfacetb": 4.92197334,
292
+ "hygi": 4.92197334,
293
+ "i3": 4.92197334,
294
+ "ia": 4.92197334,
295
+ "if": 4.92197334,
296
+ "image": 4.92197334,
297
+ "in": 4.22882616,
298
+ "incontext": 4.92197334,
299
+ "independent": 4.92197334,
300
+ "individual": 4.92197334,
301
+ "inner-space-1b-sft-cbt": 4.92197334,
302
+ "innerspace": 4.92197334,
303
+ "insight": 4.92197334,
304
+ "interactive-fiction": 4.92197334,
305
+ "interface": 4.92197334,
306
+ "interrogation": 4.92197334,
307
+ "into": 4.22882616,
308
+ "investigates": 4.92197334,
309
+ "investigative": 4.92197334,
310
+ "invoice": 4.92197334,
311
+ "is": 3.82336105,
312
+ "it": 4.92197334,
313
+ "jackailocal": 4.92197334,
314
+ "job": 4.92197334,
315
+ "job-search-distill": 4.92197334,
316
+ "job-searcher-qwen3-8b": 4.92197334,
317
+ "job-searcher-qwen3-8b-gguf": 4.92197334,
318
+ "jobs": 4.92197334,
319
+ "journal": 4.92197334,
320
+ "journalist": 4.92197334,
321
+ "jxm": 4.92197334,
322
+ "karim": 4.92197334,
323
+ "kasualdad": 4.92197334,
324
+ "keypa": 4.92197334,
325
+ "kijai": 4.92197334,
326
+ "kintsugi": 4.92197334,
327
+ "klein": 4.92197334,
328
+ "know": 4.92197334,
329
+ "knowledge": 4.92197334,
330
+ "knows": 4.92197334,
331
+ "kokoro-82m": 4.92197334,
332
+ "korean": 4.92197334,
333
+ "lab": 4.51650823,
334
+ "lantern": 4.92197334,
335
+ "lastmass": 4.92197334,
336
+ "learn": 4.51650823,
337
+ "learning": 4.92197334,
338
+ "legal": 4.92197334,
339
+ "legawa": 4.92197334,
340
+ "legends": 4.92197334,
341
+ "lens": 4.92197334,
342
+ "levels": 4.92197334,
343
+ "lfed": 4.92197334,
344
+ "library": 4.92197334,
345
+ "life": 4.92197334,
346
+ "lightweight": 4.92197334,
347
+ "live": 4.51650823,
348
+ "lived": 4.92197334,
349
+ "lives": 4.92197334,
350
+ "living": 4.92197334,
351
+ "llama-3.1-8b-instruct": 4.22882616,
352
+ "llama-3.2-11b-vision-instruct": 4.92197334,
353
+ "llama-cpp": 3.82336105,
354
+ "llama.cpp": 4.51650823,
355
+ "llm": 4.92197334,
356
+ "lmstudio-community": 4.92197334,
357
+ "local": 4.0056826,
358
+ "local-first": 4.22882616,
359
+ "local-inference": 4.92197334,
360
+ "localduo": 4.92197334,
361
+ "locals": 4.92197334,
362
+ "logger": 4.92197334,
363
+ "logistics": 4.92197334,
364
+ "lolaby": 4.92197334,
365
+ "lolaby-llama-3b": 4.92197334,
366
+ "lolaby-traces": 4.92197334,
367
+ "lora": 4.92197334,
368
+ "lore": 4.92197334,
369
+ "lovegpt": 4.92197334,
370
+ "lullabies": 4.92197334,
371
+ "lullaby": 4.92197334,
372
+ "lunch": 4.92197334,
373
+ "lykon": 4.92197334,
374
+ "magpie_tts_multilingual_357m": 4.92197334,
375
+ "maker": 4.92197334,
376
+ "map": 4.51650823,
377
+ "mapeamento": 4.92197334,
378
+ "matches": 4.92197334,
379
+ "materialize": 4.51650823,
380
+ "matrix": 4.92197334,
381
+ "mc": 4.92197334,
382
+ "mcp-server": 4.51650823,
383
+ "meaning": 4.92197334,
384
+ "mediassist": 4.92197334,
385
+ "medical": 4.92197334,
386
+ "melbandroformer_comfy": 4.92197334,
387
+ "mermaid.js": 4.92197334,
388
+ "message": 4.92197334,
389
+ "messy": 4.92197334,
390
+ "meta-llama": 4.0056826,
391
+ "metabolic": 4.92197334,
392
+ "microsoft": 4.22882616,
393
+ "minds": 4.92197334,
394
+ "minecraft": 4.92197334,
395
+ "minicpm": 4.51650823,
396
+ "minicpm-o-4_5": 4.92197334,
397
+ "minicpm-v": 4.92197334,
398
+ "minicpm-v-4.6": 4.0056826,
399
+ "minicpm-v-4_6": 4.92197334,
400
+ "minicpm3-4b": 4.92197334,
401
+ "minicpm4-8b": 4.92197334,
402
+ "minicpm4.1-8b": 4.51650823,
403
+ "minicpm4.1-8b-gguf": 4.92197334,
404
+ "minicpm5-1b": 4.92197334,
405
+ "minicpm5-1b-sft": 4.92197334,
406
+ "mistralai": 4.92197334,
407
+ "mixtral-8x7b-v0.1": 4.92197334,
408
+ "modal": 4.92197334,
409
+ "model": 4.51650823,
410
+ "model-lab": 4.92197334,
411
+ "modular": 4.92197334,
412
+ "mradermacher": 4.92197334,
413
+ "multilingual": 4.92197334,
414
+ "multimodal": 4.92197334,
415
+ "museum": 4.92197334,
416
+ "music": 4.92197334,
417
+ "musicgen": 4.92197334,
418
+ "musicgen-melody": 4.92197334,
419
+ "my": 4.51650823,
420
+ "mycelium": 4.92197334,
421
+ "myntra": 4.92197334,
422
+ "myspace": 4.92197334,
423
+ "mythograph": 4.92197334,
424
+ "n-of-1": 4.92197334,
425
+ "nano_compact_3b_qkvfp16": 4.92197334,
426
+ "neighbourhood": 4.92197334,
427
+ "neila": 4.92197334,
428
+ "nemotron-3.5-asr-streaming-0.6b": 4.92197334,
429
+ "nemotron-3.5-content-safety": 4.92197334,
430
+ "nemotron-mini-4b-instruct": 4.0056826,
431
+ "never": 4.92197334,
432
+ "news": 4.92197334,
433
+ "next-best": 4.92197334,
434
+ "next-day": 4.92197334,
435
+ "nextclue": 4.92197334,
436
+ "nexus": 4.92197334,
437
+ "niste": 4.92197334,
438
+ "no": 4.92197334,
439
+ "noir": 4.92197334,
440
+ "noise": 4.92197334,
441
+ "not": 4.92197334,
442
+ "nvidia": 3.21722524,
443
+ "nvidia-nemotron-3-nano-30b-a3b-bf16": 4.51650823,
444
+ "nvidia-nemotron-3-nano-4b-bf16": 4.92197334,
445
+ "nvidia-nemotron-3-nano-4b-fp8": 4.92197334,
446
+ "nvidia-nemotron-3-nano-4b-gguf": 4.92197334,
447
+ "nvidia-nemotron-parse-v1.2": 4.92197334,
448
+ "object-detection": 4.92197334,
449
+ "objection": 4.92197334,
450
+ "observability": 4.92197334,
451
+ "octopus": 4.92197334,
452
+ "octopus-dev-checkpoints": 4.92197334,
453
+ "of": 3.82336105,
454
+ "off-the-grid": 4.92197334,
455
+ "offers": 4.92197334,
456
+ "offline": 4.51650823,
457
+ "on-device": 4.92197334,
458
+ "one": 4.92197334,
459
+ "oneiros": 4.92197334,
460
+ "oneiros-agent-traces": 4.92197334,
461
+ "openai": 3.41789594,
462
+ "openbmb": 3.13021387,
463
+ "operations-research": 4.92197334,
464
+ "opus": 4.51650823,
465
+ "oracle": 4.92197334,
466
+ "oracle-gemma4-12b-lora": 4.92197334,
467
+ "order": 4.51650823,
468
+ "orders": 4.92197334,
469
+ "organizer": 4.92197334,
470
+ "orionllm": 4.92197334,
471
+ "os": 4.92197334,
472
+ "other": 4.92197334,
473
+ "own": 4.92197334,
474
+ "pact": 4.92197334,
475
+ "panic": 4.92197334,
476
+ "parents": 4.92197334,
477
+ "past": 4.92197334,
478
+ "path": 4.92197334,
479
+ "patient": 4.51650823,
480
+ "pawmap": 4.92197334,
481
+ "persona": 4.92197334,
482
+ "personal": 4.51650823,
483
+ "personas": 4.92197334,
484
+ "phase-3": 4.92197334,
485
+ "phase-3-gguf": 4.92197334,
486
+ "phi-4-mini-instruct": 4.51650823,
487
+ "pipeline": 4.92197334,
488
+ "pixel-art": 4.92197334,
489
+ "pixelforge": 4.92197334,
490
+ "planpalette": 4.92197334,
491
+ "playful": 4.92197334,
492
+ "plays": 4.92197334,
493
+ "pocket": 4.92197334,
494
+ "pocket-weather-theater-smollm2-135m-lora": 4.92197334,
495
+ "poetry": 4.92197334,
496
+ "policy": 4.92197334,
497
+ "powered": 4.92197334,
498
+ "pratikbuilds": 4.92197334,
499
+ "preview": 4.92197334,
500
+ "price": 4.92197334,
501
+ "principle": 4.92197334,
502
+ "prism-ml": 4.92197334,
503
+ "privacy-first": 4.92197334,
504
+ "pro": 4.51650823,
505
+ "project": 4.92197334,
506
+ "prompt": 4.92197334,
507
+ "props": 4.92197334,
508
+ "prototype": 4.51650823,
509
+ "public": 4.92197334,
510
+ "puppet": 4.92197334,
511
+ "python": 4.92197334,
512
+ "q8": 4.92197334,
513
+ "qwen": 2.21392314,
514
+ "qwen2.5-0.5b-instruct": 4.22882616,
515
+ "qwen2.5-0.5b-instruct-gguf": 4.92197334,
516
+ "qwen2.5-1.5b-instruct": 4.0056826,
517
+ "qwen2.5-3b-instruct": 4.51650823,
518
+ "qwen2.5-7b-instruct": 3.41789594,
519
+ "qwen2.5-7b-instruct-gguf": 4.92197334,
520
+ "qwen2.5-coder-7b-instruct": 4.92197334,
521
+ "qwen2.5-coder-7b-instruct-gguf": 4.92197334,
522
+ "qwen2.5-vl-7b-instruct": 4.92197334,
523
+ "qwen3": 4.92197334,
524
+ "qwen3-32b": 4.92197334,
525
+ "qwen3-4b-instruct-2507": 4.92197334,
526
+ "qwen3-8b": 4.92197334,
527
+ "qwen3-asr-1.7b": 4.92197334,
528
+ "qwen3-coder-30b-a3b-instruct-gguf": 4.92197334,
529
+ "qwen3-forcedaligner-0.6b": 4.92197334,
530
+ "qwen3-tts-12hz-1.7b-base": 4.92197334,
531
+ "qwen3-tts-12hz-1.7b-voicedesign": 4.92197334,
532
+ "qwen3.5-0.8b-gguf": 4.92197334,
533
+ "qwen3.5-27b": 4.92197334,
534
+ "qwen3.5-2b": 4.92197334,
535
+ "qwen3.5-9b": 4.0056826,
536
+ "qwen3.5-9b-gguf": 4.92197334,
537
+ "qwen3.5-medical-gspo": 4.92197334,
538
+ "qwen3.6-27b": 4.22882616,
539
+ "qwq-32b": 4.92197334,
540
+ "r3gm": 4.92197334,
541
+ "raccoon": 4.92197334,
542
+ "rarebirds": 4.92197334,
543
+ "rarity": 4.92197334,
544
+ "read": 4.92197334,
545
+ "readable": 4.92197334,
546
+ "real": 4.92197334,
547
+ "real-estate": 4.92197334,
548
+ "real-person": 4.92197334,
549
+ "real-time": 4.92197334,
550
+ "real-world": 4.92197334,
551
+ "reasoning": 4.22882616,
552
+ "receipt": 4.92197334,
553
+ "reflection": 4.92197334,
554
+ "region": 1.22067136,
555
+ "repo": 4.92197334,
556
+ "repos": 4.92197334,
557
+ "rescue": 4.92197334,
558
+ "rescuer": 4.92197334,
559
+ "research": 4.92197334,
560
+ "resume": 4.92197334,
561
+ "retail": 4.92197334,
562
+ "retro": 4.92197334,
563
+ "returned": 4.92197334,
564
+ "reusable": 4.92197334,
565
+ "reverse-turing": 4.92197334,
566
+ "review": 4.92197334,
567
+ "rife": 4.92197334,
568
+ "road": 4.92197334,
569
+ "roadb": 4.92197334,
570
+ "roast": 4.92197334,
571
+ "route": 4.92197334,
572
+ "rthitalia": 4.92197334,
573
+ "rua": 4.92197334,
574
+ "rubber": 4.92197334,
575
+ "rubber-duck": 4.92197334,
576
+ "runs": 4.92197334,
577
+ "sales": 4.92197334,
578
+ "scaling": 4.92197334,
579
+ "scanner": 4.92197334,
580
+ "scene": 4.92197334,
581
+ "school": 4.92197334,
582
+ "screen": 4.92197334,
583
+ "search": 4.92197334,
584
+ "searcher": 4.92197334,
585
+ "segmentation": 4.92197334,
586
+ "self": 4.92197334,
587
+ "self-monitoring": 4.92197334,
588
+ "sentence-transformers": 4.51650823,
589
+ "session": 4.92197334,
590
+ "sessions": 4.92197334,
591
+ "shrine": 4.92197334,
592
+ "signal": 4.92197334,
593
+ "sim": 4.92197334,
594
+ "simplifies": 4.92197334,
595
+ "singalong": 4.92197334,
596
+ "slideai": 4.92197334,
597
+ "small": 4.22882616,
598
+ "small-language-model": 4.92197334,
599
+ "small-model": 4.22882616,
600
+ "small-models": 4.0056826,
601
+ "smart": 4.51650823,
602
+ "smollm2-135m-instruct": 4.92197334,
603
+ "snap": 4.92197334,
604
+ "soap": 4.92197334,
605
+ "software": 4.92197334,
606
+ "space": 4.92197334,
607
+ "span": 4.92197334,
608
+ "speaking": 4.92197334,
609
+ "spooky": 4.92197334,
610
+ "stabilityai": 4.92197334,
611
+ "stable-diffusion-xl-base-1.0": 4.92197334,
612
+ "starting": 4.92197334,
613
+ "stories": 4.92197334,
614
+ "storybook": 4.92197334,
615
+ "stress": 4.92197334,
616
+ "structured": 4.92197334,
617
+ "study": 4.92197334,
618
+ "submission": 4.92197334,
619
+ "subtitles": 4.92197334,
620
+ "sugan04": 4.92197334,
621
+ "surgical": 4.92197334,
622
+ "surpassed": 4.92197334,
623
+ "swarm": 4.92197334,
624
+ "talk": 4.51650823,
625
+ "tarook": 4.92197334,
626
+ "task": 4.92197334,
627
+ "teach": 4.92197334,
628
+ "team": 4.92197334,
629
+ "ternary": 4.92197334,
630
+ "test": 4.92197334,
631
+ "testorganizationpleaseignore": 4.92197334,
632
+ "text": 4.51650823,
633
+ "text-to-audio": 4.92197334,
634
+ "text-to-sql": 4.92197334,
635
+ "that": 4.0056826,
636
+ "the": 2.90707032,
637
+ "the_office_lines": 4.92197334,
638
+ "theater": 4.51650823,
639
+ "their": 4.92197334,
640
+ "they": 4.92197334,
641
+ "think": 4.92197334,
642
+ "this": 4.51650823,
643
+ "thousand": 4.51650823,
644
+ "thousand-token-wood": 4.92197334,
645
+ "thousand-token-wood-traces": 4.92197334,
646
+ "through": 4.92197334,
647
+ "tiny": 3.53567898,
648
+ "tiny-aya-global": 4.92197334,
649
+ "tiny-aya-global-gguf": 4.92197334,
650
+ "tiny-models": 4.92197334,
651
+ "tinyllama": 4.92197334,
652
+ "tinyllama-1.1b-chat-v1.0": 4.92197334,
653
+ "tissue": 4.92197334,
654
+ "to": 4.22882616,
655
+ "todo": 4.92197334,
656
+ "token": 4.22882616,
657
+ "tongyi-mai": 4.92197334,
658
+ "tool": 4.92197334,
659
+ "tra": 4.92197334,
660
+ "trace": 4.51650823,
661
+ "traceable": 4.92197334,
662
+ "transformers": 4.92197334,
663
+ "translation": 4.92197334,
664
+ "travel": 4.92197334,
665
+ "tree": 4.92197334,
666
+ "trees": 4.92197334,
667
+ "tricket": 4.92197334,
668
+ "troll": 4.92197334,
669
+ "trollsona": 4.92197334,
670
+ "true": 4.92197334,
671
+ "tts": 4.51650823,
672
+ "ttw-trader-0.5b": 4.92197334,
673
+ "turn": 4.22882616,
674
+ "ui": 4.92197334,
675
+ "underserved": 4.92197334,
676
+ "unsloth": 4.0056826,
677
+ "unstructured": 4.92197334,
678
+ "up": 4.92197334,
679
+ "us": 1.22067136,
680
+ "user": 4.92197334,
681
+ "ux": 4.92197334,
682
+ "v1": 4.92197334,
683
+ "v5": 4.92197334,
684
+ "v5.2": 4.92197334,
685
+ "video": 4.92197334,
686
+ "virtuel": 4.92197334,
687
+ "visual": 4.51650823,
688
+ "vla": 4.92197334,
689
+ "voice": 4.51650823,
690
+ "voicegate": 4.92197334,
691
+ "voxcpm2": 4.51650823,
692
+ "wakes": 4.92197334,
693
+ "walk": 4.92197334,
694
+ "wamu-tools": 4.92197334,
695
+ "wan-ai": 4.92197334,
696
+ "wan2": 4.92197334,
697
+ "wan2.2": 4.92197334,
698
+ "wan2.2-i2v-a14b-diffusers": 4.92197334,
699
+ "wantransformer3dmodel-sm120-cu130-raa": 4.92197334,
700
+ "watch": 4.92197334,
701
+ "watercolor": 4.92197334,
702
+ "way": 4.92197334,
703
+ "weather": 4.92197334,
704
+ "weaver": 4.92197334,
705
+ "webcam": 4.92197334,
706
+ "weird": 4.92197334,
707
+ "what": 4.51650823,
708
+ "where": 4.92197334,
709
+ "whimsical": 4.92197334,
710
+ "whisper-medium": 4.92197334,
711
+ "who": 4.92197334,
712
+ "witgym": 4.92197334,
713
+ "with": 3.31253542,
714
+ "without": 4.92197334,
715
+ "wonderland": 4.92197334,
716
+ "wood": 4.51650823,
717
+ "words": 4.92197334,
718
+ "workbench": 4.92197334,
719
+ "workflow": 4.92197334,
720
+ "world": 4.92197334,
721
+ "wpl": 4.92197334,
722
+ "write": 4.92197334,
723
+ "xinsir": 4.92197334,
724
+ "yolo": 4.92197334,
725
+ "yolov8": 4.92197334,
726
+ "you": 4.22882616,
727
+ "your": 3.31253542,
728
+ "yui": 4.92197334,
729
+ "z-image-turbo": 4.92197334,
730
+ "zero-gpu": 4.92197334,
731
+ "zerogpu": 4.92197334
732
+ },
733
+ "documents": [
734
+ {
735
+ "project_id": "build-small-hackathon/Advent_of_a_World_of_Flowering_Trees",
736
+ "tokens": 25,
737
+ "unique_terms": 18,
738
+ "norm": 28.49876959,
739
+ "weights": {
740
+ "advent": 9.84394667,
741
+ "build": 4.0056826,
742
+ "coherelabs": 4.51650823,
743
+ "flowering": 9.84394667,
744
+ "for": 3.21722524,
745
+ "gradio": 1.12648415,
746
+ "hackathon": 4.22882616,
747
+ "huggingface": 4.51650823,
748
+ "is": 3.82336105,
749
+ "of": 15.29344419,
750
+ "region": 1.22067136,
751
+ "small": 4.22882616,
752
+ "space": 4.92197334,
753
+ "this": 4.51650823,
754
+ "tiny-aya-global-gguf": 4.92197334,
755
+ "trees": 9.84394667,
756
+ "us": 1.22067136,
757
+ "world": 9.84394667
758
+ }
759
+ },
760
+ {
761
+ "project_id": "build-small-hackathon/agent-swarm-workbench",
762
+ "tokens": 28,
763
+ "unique_terms": 28,
764
+ "norm": 23.0163109,
765
+ "weights": {
766
+ "agent": 3.53567898,
767
+ "agents": 4.22882616,
768
+ "ai-agents": 4.92197334,
769
+ "backyard": 4.22882616,
770
+ "backyard-ai": 4.0056826,
771
+ "before": 4.92197334,
772
+ "build": 4.0056826,
773
+ "build-small-hackathon": 2.97606319,
774
+ "builder": 4.92197334,
775
+ "custom": 4.92197334,
776
+ "demo": 4.51650823,
777
+ "demo-builder": 4.92197334,
778
+ "demos": 4.92197334,
779
+ "gemma-4-12b-it-qat-gguf": 4.92197334,
780
+ "gradio": 1.12648415,
781
+ "nemotron-3.5-content-safety": 4.92197334,
782
+ "nvidia": 3.21722524,
783
+ "qwen": 2.21392314,
784
+ "qwen2.5-7b-instruct": 3.41789594,
785
+ "real-estate": 4.92197334,
786
+ "real-person": 4.92197334,
787
+ "scaling": 4.92197334,
788
+ "small-language-model": 4.92197334,
789
+ "software": 4.92197334,
790
+ "swarm": 4.92197334,
791
+ "tiny": 3.53567898,
792
+ "unsloth": 4.0056826,
793
+ "workbench": 4.92197334
794
+ }
795
+ },
796
+ {
797
+ "project_id": "build-small-hackathon/AI-agent-Evaluation-pipeline",
798
+ "tokens": 29,
799
+ "unique_terms": 21,
800
+ "norm": 29.09332995,
801
+ "weights": {
802
+ "agent": 7.07135795,
803
+ "agent-eval-golden-dataset": 4.92197334,
804
+ "agents": 8.45765231,
805
+ "ai": 9.65167573,
806
+ "at": 4.92197334,
807
+ "build-small-hackathon": 2.97606319,
808
+ "evaluate": 4.92197334,
809
+ "evaluation": 14.76592001,
810
+ "gradio": 1.12648415,
811
+ "levels": 4.92197334,
812
+ "llm": 4.92197334,
813
+ "nvidia": 3.21722524,
814
+ "nvidia-nemotron-3-nano-30b-a3b-bf16": 4.51650823,
815
+ "observability": 4.92197334,
816
+ "pipeline": 9.84394667,
817
+ "qwen": 4.42784627,
818
+ "qwen3.6-27b": 4.22882616,
819
+ "qwq-32b": 4.92197334,
820
+ "session": 4.92197334,
821
+ "span": 4.92197334,
822
+ "trace": 4.51650823
823
+ }
824
+ },
825
+ {
826
+ "project_id": "build-small-hackathon/AI-Puppet-Theater",
827
+ "tokens": 11,
828
+ "unique_terms": 8,
829
+ "norm": 15.75858203,
830
+ "weights": {
831
+ "ai": 6.43445049,
832
+ "gpt-oss-20b": 3.53567898,
833
+ "gradio": 1.12648415,
834
+ "openai": 3.41789594,
835
+ "puppet": 9.84394667,
836
+ "region": 1.22067136,
837
+ "theater": 9.03301646,
838
+ "us": 1.22067136
839
+ }
840
+ },
841
+ {
842
+ "project_id": "build-small-hackathon/ai-study-buddy",
843
+ "tokens": 18,
844
+ "unique_terms": 12,
845
+ "norm": 25.44052908,
846
+ "weights": {
847
+ "ai": 9.65167573,
848
+ "buddy": 14.76592001,
849
+ "companion": 4.92197334,
850
+ "gradio": 1.12648415,
851
+ "learning": 4.92197334,
852
+ "llama-3.1-8b-instruct": 4.22882616,
853
+ "meta-llama": 4.0056826,
854
+ "region": 1.22067136,
855
+ "smart": 4.51650823,
856
+ "study": 14.76592001,
857
+ "us": 1.22067136,
858
+ "your": 3.31253542
859
+ }
860
+ },
861
+ {
862
+ "project_id": "build-small-hackathon/amnesiac",
863
+ "tokens": 11,
864
+ "unique_terms": 10,
865
+ "norm": 14.96326662,
866
+ "weights": {
867
+ "amnesiac": 9.84394667,
868
+ "game": 4.0056826,
869
+ "gradio": 1.12648415,
870
+ "interrogation": 4.92197334,
871
+ "minicpm-o-4_5": 4.92197334,
872
+ "openbmb": 3.13021387,
873
+ "region": 1.22067136,
874
+ "reverse-turing": 4.92197334,
875
+ "us": 1.22067136,
876
+ "webcam": 4.92197334
877
+ }
878
+ },
879
+ {
880
+ "project_id": "build-small-hackathon/attention-firewall",
881
+ "tokens": 7,
882
+ "unique_terms": 5,
883
+ "norm": 14.07322336,
884
+ "weights": {
885
+ "attention": 9.84394667,
886
+ "firewall": 9.84394667,
887
+ "gradio": 1.12648415,
888
+ "region": 1.22067136,
889
+ "us": 1.22067136
890
+ }
891
+ },
892
+ {
893
+ "project_id": "build-small-hackathon/awaaz",
894
+ "tokens": 12,
895
+ "unique_terms": 11,
896
+ "norm": 16.70075566,
897
+ "weights": {
898
+ "apni": 4.92197334,
899
+ "awaaz": 9.84394667,
900
+ "backyard-ai": 4.0056826,
901
+ "dubbing": 4.51650823,
902
+ "hindi": 4.92197334,
903
+ "openai": 3.41789594,
904
+ "qwen": 2.21392314,
905
+ "qwen2.5-7b-instruct": 3.41789594,
906
+ "translation": 4.92197334,
907
+ "tts": 4.51650823,
908
+ "whisper-medium": 4.92197334
909
+ }
910
+ },
911
+ {
912
+ "project_id": "build-small-hackathon/backyard-dudu-destroyer",
913
+ "tokens": 16,
914
+ "unique_terms": 12,
915
+ "norm": 19.80732781,
916
+ "weights": {
917
+ "and": 3.41789594,
918
+ "backyard": 8.45765231,
919
+ "destroyer": 9.84394667,
920
+ "dudu": 9.84394667,
921
+ "for": 3.21722524,
922
+ "gradio": 2.25296829,
923
+ "interface": 4.92197334,
924
+ "policy": 4.92197334,
925
+ "region": 1.22067136,
926
+ "starting": 4.92197334,
927
+ "us": 1.22067136,
928
+ "vla": 4.92197334
929
+ }
930
+ },
931
+ {
932
+ "project_id": "build-small-hackathon/backyard-raccoon-deterrent",
933
+ "tokens": 18,
934
+ "unique_terms": 11,
935
+ "norm": 30.21160071,
936
+ "weights": {
937
+ "backyard": 8.45765231,
938
+ "build-small-hackathon": 2.97606319,
939
+ "deterrent": 14.76592001,
940
+ "edge-ai": 9.84394667,
941
+ "fully": 4.92197334,
942
+ "object-detection": 4.92197334,
943
+ "offline": 4.51650823,
944
+ "raccoon": 19.68789335,
945
+ "tiny": 3.53567898,
946
+ "yolo": 4.92197334,
947
+ "yolov8": 4.92197334
948
+ }
949
+ },
950
+ {
951
+ "project_id": "build-small-hackathon/borderless",
952
+ "tokens": 7,
953
+ "unique_terms": 6,
954
+ "norm": 11.13268863,
955
+ "weights": {
956
+ "borderless": 9.84394667,
957
+ "gradio": 1.12648415,
958
+ "qwen": 2.21392314,
959
+ "qwen3.6-27b": 4.22882616,
960
+ "region": 1.22067136,
961
+ "us": 1.22067136
962
+ }
963
+ },
964
+ {
965
+ "project_id": "build-small-hackathon/bridge-troll",
966
+ "tokens": 21,
967
+ "unique_terms": 17,
968
+ "norm": 24.0921246,
969
+ "weights": {
970
+ "10pratibh": 4.92197334,
971
+ "argument": 4.92197334,
972
+ "bridge": 9.84394667,
973
+ "fine-tuned": 4.51650823,
974
+ "gorm-lora": 4.92197334,
975
+ "gradio": 1.12648415,
976
+ "if": 4.92197334,
977
+ "is": 3.82336105,
978
+ "past": 4.92197334,
979
+ "qwen": 2.21392314,
980
+ "qwen2.5-7b-instruct": 3.41789594,
981
+ "region": 1.22067136,
982
+ "talk": 4.51650823,
983
+ "troll": 14.76592001,
984
+ "us": 1.22067136,
985
+ "way": 4.92197334,
986
+ "your": 6.62507085
987
+ }
988
+ },
989
+ {
990
+ "project_id": "build-small-hackathon/briefing-32",
991
+ "tokens": 16,
992
+ "unique_terms": 15,
993
+ "norm": 18.23560356,
994
+ "weights": {
995
+ "32": 4.92197334,
996
+ "32b-class": 4.92197334,
997
+ "ai-news": 4.92197334,
998
+ "briefing": 9.84394667,
999
+ "briefing-32": 4.92197334,
1000
+ "every": 4.92197334,
1001
+ "gradio": 1.12648415,
1002
+ "hours": 4.92197334,
1003
+ "maker": 4.92197334,
1004
+ "qwen": 2.21392314,
1005
+ "qwen3-32b": 4.92197334,
1006
+ "region": 1.22067136,
1007
+ "runs": 4.92197334,
1008
+ "the": 2.90707032,
1009
+ "us": 1.22067136
1010
+ }
1011
+ },
1012
+ {
1013
+ "project_id": "build-small-hackathon/business-order-assistant",
1014
+ "tokens": 20,
1015
+ "unique_terms": 16,
1016
+ "norm": 22.90427067,
1017
+ "weights": {
1018
+ "ai": 3.21722524,
1019
+ "an": 4.0056826,
1020
+ "and": 3.41789594,
1021
+ "any": 4.92197334,
1022
+ "assistant": 6.83579188,
1023
+ "business": 9.84394667,
1024
+ "creates": 4.92197334,
1025
+ "format": 4.92197334,
1026
+ "gets": 4.92197334,
1027
+ "gradio": 1.12648415,
1028
+ "in": 4.22882616,
1029
+ "invoice": 4.92197334,
1030
+ "order": 13.54952468,
1031
+ "region": 1.22067136,
1032
+ "that": 4.0056826,
1033
+ "us": 1.22067136
1034
+ }
1035
+ },
1036
+ {
1037
+ "project_id": "build-small-hackathon/Case-Lantern",
1038
+ "tokens": 9,
1039
+ "unique_terms": 7,
1040
+ "norm": 15.70054964,
1041
+ "weights": {
1042
+ "case": 9.84394667,
1043
+ "gradio": 1.12648415,
1044
+ "lantern": 9.84394667,
1045
+ "lastmass": 4.92197334,
1046
+ "qwen3.5-medical-gspo": 4.92197334,
1047
+ "region": 1.22067136,
1048
+ "us": 1.22067136
1049
+ }
1050
+ },
1051
+ {
1052
+ "project_id": "build-small-hackathon/chorus",
1053
+ "tokens": 14,
1054
+ "unique_terms": 12,
1055
+ "norm": 17.15714096,
1056
+ "weights": {
1057
+ "chorus": 9.84394667,
1058
+ "discover": 4.51650823,
1059
+ "gradio": 1.12648415,
1060
+ "having": 4.92197334,
1061
+ "noise": 4.92197334,
1062
+ "read": 4.92197334,
1063
+ "region": 1.22067136,
1064
+ "signal": 4.92197334,
1065
+ "the": 5.81414063,
1066
+ "to": 4.22882616,
1067
+ "us": 1.22067136,
1068
+ "without": 4.92197334
1069
+ }
1070
+ },
1071
+ {
1072
+ "project_id": "build-small-hackathon/CodeFlow",
1073
+ "tokens": 14,
1074
+ "unique_terms": 13,
1075
+ "norm": 17.08730063,
1076
+ "weights": {
1077
+ "code": 4.22882616,
1078
+ "codeflow": 9.84394667,
1079
+ "flowchart": 4.92197334,
1080
+ "gradio": 1.12648415,
1081
+ "into": 4.22882616,
1082
+ "mermaid.js": 4.92197334,
1083
+ "python": 4.92197334,
1084
+ "qwen3-coder-30b-a3b-instruct-gguf": 4.92197334,
1085
+ "readable": 4.92197334,
1086
+ "region": 1.22067136,
1087
+ "turn": 4.22882616,
1088
+ "unsloth": 4.0056826,
1089
+ "us": 1.22067136
1090
+ }
1091
+ },
1092
+ {
1093
+ "project_id": "build-small-hackathon/come-and-compare",
1094
+ "tokens": 18,
1095
+ "unique_terms": 15,
1096
+ "norm": 20.38725057,
1097
+ "weights": {
1098
+ "across": 4.92197334,
1099
+ "amazon": 4.92197334,
1100
+ "and": 6.83579188,
1101
+ "come": 9.84394667,
1102
+ "compare": 9.03301646,
1103
+ "comparison": 4.92197334,
1104
+ "flipkart": 4.92197334,
1105
+ "gradio": 1.12648415,
1106
+ "myntra": 4.92197334,
1107
+ "price": 4.92197334,
1108
+ "qwen": 2.21392314,
1109
+ "qwen2.5-7b-instruct": 3.41789594,
1110
+ "real-time": 4.92197334,
1111
+ "region": 1.22067136,
1112
+ "us": 1.22067136
1113
+ }
1114
+ },
1115
+ {
1116
+ "project_id": "build-small-hackathon/compliment-forest",
1117
+ "tokens": 27,
1118
+ "unique_terms": 19,
1119
+ "norm": 30.23968056,
1120
+ "weights": {
1121
+ "build-small-hackathon": 17.85637912,
1122
+ "compliment": 9.84394667,
1123
+ "compliment-forest-flux-lora": 4.92197334,
1124
+ "compliment-forest-minicpm5-1b": 4.92197334,
1125
+ "compliment-forest-sft": 4.92197334,
1126
+ "compliment-forest-traces": 4.92197334,
1127
+ "compliment-forest-watercolor": 4.92197334,
1128
+ "encouragement": 4.92197334,
1129
+ "forest": 9.84394667,
1130
+ "gradio": 1.12648415,
1131
+ "grounded": 4.92197334,
1132
+ "llama.cpp": 4.51650823,
1133
+ "local-first": 4.22882616,
1134
+ "of": 3.82336105,
1135
+ "path": 4.92197334,
1136
+ "the": 2.90707032,
1137
+ "through": 4.92197334,
1138
+ "walk": 4.92197334,
1139
+ "watercolor": 9.84394667
1140
+ }
1141
+ },
1142
+ {
1143
+ "project_id": "build-small-hackathon/Council-of-Tiny-Minds",
1144
+ "tokens": 23,
1145
+ "unique_terms": 18,
1146
+ "norm": 24.87170821,
1147
+ "weights": {
1148
+ "chatroom": 4.92197334,
1149
+ "council": 9.84394667,
1150
+ "faux": 4.92197334,
1151
+ "gradio": 1.12648415,
1152
+ "handful": 4.92197334,
1153
+ "message": 4.92197334,
1154
+ "minds": 9.84394667,
1155
+ "of": 11.47008314,
1156
+ "one": 4.92197334,
1157
+ "qwen": 2.21392314,
1158
+ "qwen3.5-9b": 4.0056826,
1159
+ "region": 1.22067136,
1160
+ "tiny": 7.07135795,
1161
+ "up": 4.92197334,
1162
+ "us": 1.22067136,
1163
+ "user": 4.92197334,
1164
+ "wakes": 4.92197334,
1165
+ "where": 4.92197334
1166
+ }
1167
+ },
1168
+ {
1169
+ "project_id": "build-small-hackathon/Darwin-35B-A3B-Opus",
1170
+ "tokens": 28,
1171
+ "unique_terms": 21,
1172
+ "norm": 29.68249458,
1173
+ "weights": {
1174
+ "35b": 9.84394667,
1175
+ "a3b": 9.84394667,
1176
+ "all-bench-leaderboard": 4.92197334,
1177
+ "both": 4.92197334,
1178
+ "child": 4.92197334,
1179
+ "darwin": 9.84394667,
1180
+ "darwin-35b-a3b-opus": 4.92197334,
1181
+ "documentation-images": 9.84394667,
1182
+ "evolution": 4.92197334,
1183
+ "final-bench": 9.84394667,
1184
+ "gradio": 1.12648415,
1185
+ "huggingface": 9.03301646,
1186
+ "is": 3.82336105,
1187
+ "mcp-server": 4.51650823,
1188
+ "opus": 9.03301646,
1189
+ "parents": 4.92197334,
1190
+ "region": 1.22067136,
1191
+ "surpassed": 4.92197334,
1192
+ "that": 4.0056826,
1193
+ "the": 2.90707032,
1194
+ "us": 1.22067136
1195
+ }
1196
+ },
1197
+ {
1198
+ "project_id": "build-small-hackathon/dental-soap",
1199
+ "tokens": 17,
1200
+ "unique_terms": 14,
1201
+ "norm": 23.57823599,
1202
+ "weights": {
1203
+ "agents": 4.22882616,
1204
+ "bilingual": 4.92197334,
1205
+ "dental": 14.76592001,
1206
+ "for": 3.21722524,
1207
+ "handoff": 4.92197334,
1208
+ "healthcare": 4.92197334,
1209
+ "patient": 4.51650823,
1210
+ "qwen": 2.21392314,
1211
+ "qwen3-4b-instruct-2507": 4.92197334,
1212
+ "real": 4.92197334,
1213
+ "small-model": 4.22882616,
1214
+ "soap": 9.84394667,
1215
+ "stories": 4.92197334,
1216
+ "zero-gpu": 4.92197334
1217
+ }
1218
+ },
1219
+ {
1220
+ "project_id": "build-small-hackathon/dm-order-desk",
1221
+ "tokens": 17,
1222
+ "unique_terms": 14,
1223
+ "norm": 20.81507095,
1224
+ "weights": {
1225
+ "clean": 4.92197334,
1226
+ "desk": 9.84394667,
1227
+ "dm": 9.84394667,
1228
+ "dms": 4.92197334,
1229
+ "gradio": 1.12648415,
1230
+ "into": 4.22882616,
1231
+ "messy": 4.92197334,
1232
+ "order": 9.03301646,
1233
+ "orders": 4.92197334,
1234
+ "qwen": 2.21392314,
1235
+ "qwen2.5-1.5b-instruct": 4.0056826,
1236
+ "region": 1.22067136,
1237
+ "turn": 4.22882616,
1238
+ "us": 1.22067136
1239
+ }
1240
+ },
1241
+ {
1242
+ "project_id": "build-small-hackathon/dream-customs",
1243
+ "tokens": 19,
1244
+ "unique_terms": 15,
1245
+ "norm": 23.39608919,
1246
+ "weights": {
1247
+ "build-small-hackathon": 2.97606319,
1248
+ "customs": 9.84394667,
1249
+ "declarations": 4.92197334,
1250
+ "dream": 13.54952468,
1251
+ "dream-journal": 4.92197334,
1252
+ "gradio": 1.12648415,
1253
+ "into": 4.22882616,
1254
+ "minicpm": 4.51650823,
1255
+ "minicpm-v-4.6": 4.0056826,
1256
+ "minicpm5-1b": 4.92197334,
1257
+ "next-day": 4.92197334,
1258
+ "openbmb": 6.26042773,
1259
+ "pact": 4.92197334,
1260
+ "playful": 4.92197334,
1261
+ "turn": 4.22882616
1262
+ }
1263
+ },
1264
+ {
1265
+ "project_id": "build-small-hackathon/dream-museum",
1266
+ "tokens": 18,
1267
+ "unique_terms": 14,
1268
+ "norm": 23.90867693,
1269
+ "weights": {
1270
+ "controlnet-scribble-sdxl-1.0": 4.92197334,
1271
+ "describe": 4.92197334,
1272
+ "draw": 4.92197334,
1273
+ "dream": 13.54952468,
1274
+ "gradio": 1.12648415,
1275
+ "it": 9.84394667,
1276
+ "materialize": 4.51650823,
1277
+ "museum": 9.84394667,
1278
+ "region": 1.22067136,
1279
+ "stabilityai": 4.92197334,
1280
+ "stable-diffusion-xl-base-1.0": 4.92197334,
1281
+ "us": 1.22067136,
1282
+ "watch": 4.92197334,
1283
+ "xinsir": 4.92197334
1284
+ }
1285
+ },
1286
+ {
1287
+ "project_id": "build-small-hackathon/dreamwall-mc",
1288
+ "tokens": 11,
1289
+ "unique_terms": 9,
1290
+ "norm": 17.8248972,
1291
+ "weights": {
1292
+ "agent-trace": 4.92197334,
1293
+ "art": 4.22882616,
1294
+ "codex": 4.92197334,
1295
+ "dreamwall": 9.84394667,
1296
+ "game": 4.0056826,
1297
+ "gradio": 1.12648415,
1298
+ "mc": 9.84394667,
1299
+ "minecraft": 4.92197334,
1300
+ "small-models": 4.0056826
1301
+ }
1302
+ },
1303
+ {
1304
+ "project_id": "build-small-hackathon/ducks-happen",
1305
+ "tokens": 15,
1306
+ "unique_terms": 12,
1307
+ "norm": 23.13042944,
1308
+ "weights": {
1309
+ "art": 4.22882616,
1310
+ "black-forest-labs": 4.0056826,
1311
+ "ducks": 14.76592001,
1312
+ "flux": 4.92197334,
1313
+ "flux.1-schnell": 4.51650823,
1314
+ "fun": 4.92197334,
1315
+ "generative-art": 4.92197334,
1316
+ "happen": 9.84394667,
1317
+ "here": 4.92197334,
1318
+ "materialize": 4.51650823,
1319
+ "rubber": 4.92197334,
1320
+ "rubber-duck": 4.92197334
1321
+ }
1322
+ },
1323
+ {
1324
+ "project_id": "build-small-hackathon/espressocheese-chess-demo",
1325
+ "tokens": 9,
1326
+ "unique_terms": 6,
1327
+ "norm": 16.72276897,
1328
+ "weights": {
1329
+ "chess": 9.84394667,
1330
+ "demo": 9.03301646,
1331
+ "espressocheese": 9.84394667,
1332
+ "gradio": 1.12648415,
1333
+ "region": 1.22067136,
1334
+ "us": 1.22067136
1335
+ }
1336
+ },
1337
+ {
1338
+ "project_id": "build-small-hackathon/exam-panic-rescue",
1339
+ "tokens": 15,
1340
+ "unique_terms": 11,
1341
+ "norm": 20.12889855,
1342
+ "weights": {
1343
+ "exam": 9.84394667,
1344
+ "gradio": 1.12648415,
1345
+ "minicpm4.1-8b": 4.51650823,
1346
+ "minicpm4.1-8b-gguf": 4.92197334,
1347
+ "nemotron-mini-4b-instruct": 4.0056826,
1348
+ "nvidia": 3.21722524,
1349
+ "openbmb": 6.26042773,
1350
+ "panic": 9.84394667,
1351
+ "region": 1.22067136,
1352
+ "rescue": 9.84394667,
1353
+ "us": 1.22067136
1354
+ }
1355
+ },
1356
+ {
1357
+ "project_id": "build-small-hackathon/Family-Bill-Assistant",
1358
+ "tokens": 24,
1359
+ "unique_terms": 19,
1360
+ "norm": 24.89541745,
1361
+ "weights": {
1362
+ "agent": 3.53567898,
1363
+ "ai": 3.21722524,
1364
+ "and": 3.41789594,
1365
+ "assistant": 6.83579188,
1366
+ "bill": 9.84394667,
1367
+ "bills": 4.92197334,
1368
+ "categorizes": 4.92197334,
1369
+ "family": 14.76592001,
1370
+ "gradio": 1.12648415,
1371
+ "minicpm-v-4.6": 4.0056826,
1372
+ "minicpm4.1-8b": 4.51650823,
1373
+ "nvidia": 3.21722524,
1374
+ "nvidia-nemotron-parse-v1.2": 4.92197334,
1375
+ "openbmb": 6.26042773,
1376
+ "region": 1.22067136,
1377
+ "simplifies": 4.92197334,
1378
+ "smart": 4.51650823,
1379
+ "that": 4.0056826,
1380
+ "us": 1.22067136
1381
+ }
1382
+ },
1383
+ {
1384
+ "project_id": "build-small-hackathon/First-Principle-AI",
1385
+ "tokens": 21,
1386
+ "unique_terms": 18,
1387
+ "norm": 21.08518293,
1388
+ "weights": {
1389
+ "ai": 6.43445049,
1390
+ "build-small-hackathon": 5.95212637,
1391
+ "chatbot": 4.92197334,
1392
+ "console": 4.92197334,
1393
+ "first": 4.22882616,
1394
+ "first-principle": 4.92197334,
1395
+ "gguf": 8.01136521,
1396
+ "gradio": 1.12648415,
1397
+ "lab": 4.51650823,
1398
+ "llama-cpp": 3.82336105,
1399
+ "llama.cpp": 4.51650823,
1400
+ "model-lab": 4.92197334,
1401
+ "phase-3": 4.92197334,
1402
+ "phase-3-gguf": 4.92197334,
1403
+ "principle": 4.92197334,
1404
+ "q8": 4.92197334,
1405
+ "with": 3.31253542,
1406
+ "zerogpu": 4.92197334
1407
+ }
1408
+ },
1409
+ {
1410
+ "project_id": "build-small-hackathon/gemma-task-agent-trace",
1411
+ "tokens": 19,
1412
+ "unique_terms": 13,
1413
+ "norm": 24.82109265,
1414
+ "weights": {
1415
+ "agent": 10.60703693,
1416
+ "gemma": 9.03301646,
1417
+ "gradio": 1.12648415,
1418
+ "lightweight": 4.92197334,
1419
+ "prototype": 4.51650823,
1420
+ "reasoning": 4.22882616,
1421
+ "region": 1.22067136,
1422
+ "task": 14.76592001,
1423
+ "tra": 4.92197334,
1424
+ "trace": 9.03301646,
1425
+ "us": 1.22067136,
1426
+ "visual": 4.51650823,
1427
+ "with": 3.31253542
1428
+ }
1429
+ },
1430
+ {
1431
+ "project_id": "build-small-hackathon/gemma4chat",
1432
+ "tokens": 5,
1433
+ "unique_terms": 4,
1434
+ "norm": 10.76702634,
1435
+ "weights": {
1436
+ "docker": 4.0056826,
1437
+ "gemma4chat": 9.84394667,
1438
+ "region": 1.22067136,
1439
+ "us": 1.22067136
1440
+ }
1441
+ },
1442
+ {
1443
+ "project_id": "build-small-hackathon/gitopadesh",
1444
+ "tokens": 18,
1445
+ "unique_terms": 17,
1446
+ "norm": 18.5226581,
1447
+ "weights": {
1448
+ "advisor": 4.92197334,
1449
+ "ai": 3.21722524,
1450
+ "all-minilm-l6-v2": 4.51650823,
1451
+ "as": 4.51650823,
1452
+ "bhagavad": 4.92197334,
1453
+ "by": 4.92197334,
1454
+ "gita": 4.92197334,
1455
+ "gitopadesh": 9.84394667,
1456
+ "gradio": 1.12648415,
1457
+ "living": 4.92197334,
1458
+ "powered": 4.92197334,
1459
+ "qwen": 2.21392314,
1460
+ "qwen2.5-7b-instruct": 3.41789594,
1461
+ "region": 1.22067136,
1462
+ "sentence-transformers": 4.51650823,
1463
+ "the": 2.90707032,
1464
+ "us": 1.22067136
1465
+ }
1466
+ },
1467
+ {
1468
+ "project_id": "build-small-hackathon/GRM-2.6-Opus",
1469
+ "tokens": 9,
1470
+ "unique_terms": 8,
1471
+ "norm": 13.93659359,
1472
+ "weights": {
1473
+ "2.6": 4.92197334,
1474
+ "gradio": 1.12648415,
1475
+ "grm": 4.92197334,
1476
+ "grm-2.6-opus": 9.84394667,
1477
+ "opus": 4.51650823,
1478
+ "orionllm": 4.92197334,
1479
+ "region": 1.22067136,
1480
+ "us": 1.22067136
1481
+ }
1482
+ },
1483
+ {
1484
+ "project_id": "build-small-hackathon/GTROX",
1485
+ "tokens": 7,
1486
+ "unique_terms": 6,
1487
+ "norm": 11.19532796,
1488
+ "weights": {
1489
+ "gpt-oss-20b": 3.53567898,
1490
+ "gradio": 1.12648415,
1491
+ "gtrox": 9.84394667,
1492
+ "openai": 3.41789594,
1493
+ "region": 1.22067136,
1494
+ "us": 1.22067136
1495
+ }
1496
+ },
1497
+ {
1498
+ "project_id": "build-small-hackathon/guitar-singalong",
1499
+ "tokens": 13,
1500
+ "unique_terms": 10,
1501
+ "norm": 22.47031992,
1502
+ "weights": {
1503
+ "accompaniment": 4.92197334,
1504
+ "audio": 4.92197334,
1505
+ "demucs": 4.92197334,
1506
+ "facebook": 4.92197334,
1507
+ "generator": 4.51650823,
1508
+ "guitar": 14.76592001,
1509
+ "music": 4.92197334,
1510
+ "musicgen": 4.92197334,
1511
+ "musicgen-melody": 4.92197334,
1512
+ "singalong": 9.84394667
1513
+ }
1514
+ },
1515
+ {
1516
+ "project_id": "build-small-hackathon/her",
1517
+ "tokens": 13,
1518
+ "unique_terms": 12,
1519
+ "norm": 15.34943812,
1520
+ "weights": {
1521
+ "claude": 4.92197334,
1522
+ "code": 4.22882616,
1523
+ "detective": 4.51650823,
1524
+ "for": 3.21722524,
1525
+ "gradio": 1.12648415,
1526
+ "her": 9.84394667,
1527
+ "nemotron-mini-4b-instruct": 4.0056826,
1528
+ "nvidia": 3.21722524,
1529
+ "region": 1.22067136,
1530
+ "sessions": 4.92197334,
1531
+ "us": 1.22067136,
1532
+ "your": 3.31253542
1533
+ }
1534
+ },
1535
+ {
1536
+ "project_id": "build-small-hackathon/InContext",
1537
+ "tokens": 14,
1538
+ "unique_terms": 13,
1539
+ "norm": 16.70113215,
1540
+ "weights": {
1541
+ "content": 4.92197334,
1542
+ "english": 4.92197334,
1543
+ "expressions": 4.92197334,
1544
+ "from": 3.66921037,
1545
+ "gradio": 1.12648415,
1546
+ "incontext": 9.84394667,
1547
+ "learn": 4.51650823,
1548
+ "qwen": 2.21392314,
1549
+ "qwen2.5-0.5b-instruct": 4.22882616,
1550
+ "real-world": 4.92197334,
1551
+ "region": 1.22067136,
1552
+ "reusable": 4.92197334,
1553
+ "us": 1.22067136
1554
+ }
1555
+ },
1556
+ {
1557
+ "project_id": "build-small-hackathon/innerspace",
1558
+ "tokens": 15,
1559
+ "unique_terms": 14,
1560
+ "norm": 17.49171642,
1561
+ "weights": {
1562
+ "build-small-hackathon": 2.97606319,
1563
+ "coach": 4.51650823,
1564
+ "cognitive": 4.92197334,
1565
+ "gradio": 1.12648415,
1566
+ "inner-space-1b-sft-cbt": 4.92197334,
1567
+ "innerspace": 9.84394667,
1568
+ "journal": 4.92197334,
1569
+ "minicpm5-1b-sft": 4.92197334,
1570
+ "offline": 4.51650823,
1571
+ "openbmb": 3.13021387,
1572
+ "privacy-first": 4.92197334,
1573
+ "reflection": 4.92197334,
1574
+ "region": 1.22067136,
1575
+ "us": 1.22067136
1576
+ }
1577
+ },
1578
+ {
1579
+ "project_id": "build-small-hackathon/investigative-news-agent",
1580
+ "tokens": 16,
1581
+ "unique_terms": 12,
1582
+ "norm": 22.09354349,
1583
+ "weights": {
1584
+ "agent": 7.07135795,
1585
+ "analysis": 4.92197334,
1586
+ "assistant": 3.41789594,
1587
+ "for": 3.21722524,
1588
+ "gradio": 1.12648415,
1589
+ "independent": 4.92197334,
1590
+ "investigative": 9.84394667,
1591
+ "journalist": 4.92197334,
1592
+ "news": 14.76592001,
1593
+ "region": 1.22067136,
1594
+ "traceable": 4.92197334,
1595
+ "us": 1.22067136
1596
+ }
1597
+ },
1598
+ {
1599
+ "project_id": "build-small-hackathon/jackailocal",
1600
+ "tokens": 5,
1601
+ "unique_terms": 4,
1602
+ "norm": 10.05745145,
1603
+ "weights": {
1604
+ "gradio": 1.12648415,
1605
+ "jackailocal": 9.84394667,
1606
+ "region": 1.22067136,
1607
+ "us": 1.22067136
1608
+ }
1609
+ },
1610
+ {
1611
+ "project_id": "build-small-hackathon/job-search-assistant",
1612
+ "tokens": 25,
1613
+ "unique_terms": 21,
1614
+ "norm": 27.94451999,
1615
+ "weights": {
1616
+ "assistant": 3.41789594,
1617
+ "distillation": 4.92197334,
1618
+ "drop": 4.92197334,
1619
+ "emrekuruu": 14.76592001,
1620
+ "get": 4.51650823,
1621
+ "gguf": 4.0056826,
1622
+ "job": 9.84394667,
1623
+ "job-search-distill": 4.92197334,
1624
+ "job-searcher-qwen3-8b": 4.92197334,
1625
+ "job-searcher-qwen3-8b-gguf": 4.92197334,
1626
+ "jobs": 4.92197334,
1627
+ "llama-cpp": 3.82336105,
1628
+ "lora": 4.92197334,
1629
+ "matches": 4.92197334,
1630
+ "qwen3": 4.92197334,
1631
+ "reasoning": 4.22882616,
1632
+ "resume": 9.84394667,
1633
+ "search": 4.92197334,
1634
+ "searcher": 4.92197334,
1635
+ "with": 3.31253542,
1636
+ "your": 3.31253542
1637
+ }
1638
+ },
1639
+ {
1640
+ "project_id": "build-small-hackathon/karim-lab",
1641
+ "tokens": 12,
1642
+ "unique_terms": 10,
1643
+ "norm": 16.76792143,
1644
+ "weights": {
1645
+ "assistant": 3.41789594,
1646
+ "gradio": 1.12648415,
1647
+ "karim": 9.84394667,
1648
+ "lab": 9.03301646,
1649
+ "legal": 4.92197334,
1650
+ "prototype": 4.51650823,
1651
+ "region": 1.22067136,
1652
+ "small-model": 4.22882616,
1653
+ "us": 1.22067136,
1654
+ "workflow": 4.92197334
1655
+ }
1656
+ },
1657
+ {
1658
+ "project_id": "build-small-hackathon/Kasualdad_LFED",
1659
+ "tokens": 23,
1660
+ "unique_terms": 20,
1661
+ "norm": 24.80030831,
1662
+ "weights": {
1663
+ "admins": 4.92197334,
1664
+ "analytics": 4.92197334,
1665
+ "data": 4.51650823,
1666
+ "duckdb": 4.92197334,
1667
+ "education": 9.84394667,
1668
+ "first": 4.22882616,
1669
+ "for": 3.21722524,
1670
+ "gguf": 4.0056826,
1671
+ "gradio": 1.12648415,
1672
+ "kasualdad": 9.84394667,
1673
+ "lfed": 9.84394667,
1674
+ "llama-cpp": 3.82336105,
1675
+ "local": 4.0056826,
1676
+ "local-first": 4.22882616,
1677
+ "mradermacher": 4.92197334,
1678
+ "qwen2.5-coder-7b-instruct": 4.92197334,
1679
+ "qwen2.5-coder-7b-instruct-gguf": 4.92197334,
1680
+ "school": 4.92197334,
1681
+ "text-to-sql": 4.92197334,
1682
+ "unsloth": 4.0056826
1683
+ }
1684
+ },
1685
+ {
1686
+ "project_id": "build-small-hackathon/Kintsugi-Garden",
1687
+ "tokens": 12,
1688
+ "unique_terms": 10,
1689
+ "norm": 16.55040084,
1690
+ "weights": {
1691
+ "garden": 9.84394667,
1692
+ "gradio": 1.12648415,
1693
+ "kintsugi": 9.84394667,
1694
+ "microsoft": 4.22882616,
1695
+ "phi-4-mini-instruct": 4.51650823,
1696
+ "qwen": 2.21392314,
1697
+ "qwen3-8b": 4.92197334,
1698
+ "region": 1.22067136,
1699
+ "the": 2.90707032,
1700
+ "us": 1.22067136
1701
+ }
1702
+ },
1703
+ {
1704
+ "project_id": "build-small-hackathon/legawa",
1705
+ "tokens": 9,
1706
+ "unique_terms": 7,
1707
+ "norm": 12.68973865,
1708
+ "weights": {
1709
+ "gradio": 1.12648415,
1710
+ "legawa": 9.84394667,
1711
+ "qwen": 4.42784627,
1712
+ "qwen3.5-27b": 4.92197334,
1713
+ "qwen3.5-9b": 4.0056826,
1714
+ "region": 1.22067136,
1715
+ "us": 1.22067136
1716
+ }
1717
+ },
1718
+ {
1719
+ "project_id": "build-small-hackathon/LocalDuo",
1720
+ "tokens": 14,
1721
+ "unique_terms": 11,
1722
+ "norm": 19.09115421,
1723
+ "weights": {
1724
+ "documents": 4.92197334,
1725
+ "from": 3.66921037,
1726
+ "gradio": 1.12648415,
1727
+ "korean": 4.92197334,
1728
+ "learn": 4.51650823,
1729
+ "localduo": 14.76592001,
1730
+ "qwen": 4.42784627,
1731
+ "qwen3.5-2b": 4.92197334,
1732
+ "qwen3.5-9b": 4.0056826,
1733
+ "region": 1.22067136,
1734
+ "us": 1.22067136
1735
+ }
1736
+ },
1737
+ {
1738
+ "project_id": "build-small-hackathon/lolaby",
1739
+ "tokens": 23,
1740
+ "unique_terms": 20,
1741
+ "norm": 23.19152629,
1742
+ "weights": {
1743
+ "agentic": 4.51650823,
1744
+ "ai-powered": 4.51650823,
1745
+ "backyard-ai": 4.0056826,
1746
+ "build-small-hackathon": 8.92818956,
1747
+ "children": 4.92197334,
1748
+ "fine-tuned": 4.51650823,
1749
+ "gradio": 1.12648415,
1750
+ "hexgrad": 4.92197334,
1751
+ "kokoro-82m": 4.92197334,
1752
+ "llama-cpp": 3.82336105,
1753
+ "lolaby": 9.84394667,
1754
+ "lolaby-llama-3b": 4.92197334,
1755
+ "lolaby-traces": 4.92197334,
1756
+ "lullabies": 4.92197334,
1757
+ "lullaby": 4.92197334,
1758
+ "minicpm-v-4_6": 4.92197334,
1759
+ "on-device": 4.92197334,
1760
+ "openbmb": 3.13021387,
1761
+ "small-models": 4.0056826,
1762
+ "text-to-audio": 4.92197334
1763
+ }
1764
+ },
1765
+ {
1766
+ "project_id": "build-small-hackathon/lore-lens",
1767
+ "tokens": 24,
1768
+ "unique_terms": 21,
1769
+ "norm": 24.96795863,
1770
+ "weights": {
1771
+ "30s": 4.92197334,
1772
+ "abroad": 4.92197334,
1773
+ "actually": 4.51650823,
1774
+ "anything": 4.92197334,
1775
+ "culture": 4.92197334,
1776
+ "get": 4.51650823,
1777
+ "in": 4.22882616,
1778
+ "know": 4.92197334,
1779
+ "lens": 9.84394667,
1780
+ "local": 4.0056826,
1781
+ "locals": 4.92197334,
1782
+ "lore": 9.84394667,
1783
+ "minicpm": 4.51650823,
1784
+ "minicpm-v-4.6": 4.0056826,
1785
+ "multimodal": 4.92197334,
1786
+ "openbmb": 6.26042773,
1787
+ "snap": 4.92197334,
1788
+ "travel": 4.92197334,
1789
+ "tts": 4.51650823,
1790
+ "voxcpm2": 4.51650823,
1791
+ "what": 4.51650823
1792
+ }
1793
+ },
1794
+ {
1795
+ "project_id": "build-small-hackathon/lovegpt",
1796
+ "tokens": 7,
1797
+ "unique_terms": 6,
1798
+ "norm": 11.8082237,
1799
+ "weights": {
1800
+ "gradio": 1.12648415,
1801
+ "lovegpt": 9.84394667,
1802
+ "microsoft": 4.22882616,
1803
+ "phi-4-mini-instruct": 4.51650823,
1804
+ "region": 1.22067136,
1805
+ "us": 1.22067136
1806
+ }
1807
+ },
1808
+ {
1809
+ "project_id": "build-small-hackathon/Mediassist",
1810
+ "tokens": 13,
1811
+ "unique_terms": 12,
1812
+ "norm": 16.192497,
1813
+ "weights": {
1814
+ "assistant": 3.41789594,
1815
+ "communities": 4.92197334,
1816
+ "for": 3.21722524,
1817
+ "gradio": 1.12648415,
1818
+ "mediassist": 9.84394667,
1819
+ "medical": 4.92197334,
1820
+ "reasoning": 4.22882616,
1821
+ "region": 1.22067136,
1822
+ "tinyllama": 4.92197334,
1823
+ "tinyllama-1.1b-chat-v1.0": 4.92197334,
1824
+ "underserved": 4.92197334,
1825
+ "us": 1.22067136
1826
+ }
1827
+ },
1828
+ {
1829
+ "project_id": "build-small-hackathon/metabolic-forensics",
1830
+ "tokens": 13,
1831
+ "unique_terms": 10,
1832
+ "norm": 22.02709818,
1833
+ "weights": {
1834
+ "backyard-ai": 4.0056826,
1835
+ "biosignal": 4.92197334,
1836
+ "build-small-hackathon": 2.97606319,
1837
+ "coaching": 4.92197334,
1838
+ "engine": 4.92197334,
1839
+ "evidence": 4.92197334,
1840
+ "forensics": 14.76592001,
1841
+ "metabolic": 9.84394667,
1842
+ "n-of-1": 4.92197334,
1843
+ "not": 4.92197334
1844
+ }
1845
+ },
1846
+ {
1847
+ "project_id": "build-small-hackathon/my-build-small-hackathon",
1848
+ "tokens": 18,
1849
+ "unique_terms": 13,
1850
+ "norm": 21.95417287,
1851
+ "weights": {
1852
+ "build": 8.01136521,
1853
+ "build-small-hackathon": 2.97606319,
1854
+ "for": 3.21722524,
1855
+ "gradio": 1.12648415,
1856
+ "hackathon": 8.45765231,
1857
+ "is": 3.82336105,
1858
+ "my": 13.54952468,
1859
+ "region": 1.22067136,
1860
+ "small": 8.45765231,
1861
+ "submission": 4.92197334,
1862
+ "the": 2.90707032,
1863
+ "this": 4.51650823,
1864
+ "us": 1.22067136
1865
+ }
1866
+ },
1867
+ {
1868
+ "project_id": "build-small-hackathon/mycelium",
1869
+ "tokens": 15,
1870
+ "unique_terms": 14,
1871
+ "norm": 16.50702869,
1872
+ "weights": {
1873
+ "agent": 3.53567898,
1874
+ "all-minilm-l6-v2": 4.51650823,
1875
+ "gradio": 1.12648415,
1876
+ "knowledge": 4.92197334,
1877
+ "local-first": 4.22882616,
1878
+ "mycelium": 9.84394667,
1879
+ "nemotron-mini-4b-instruct": 4.0056826,
1880
+ "nvidia": 3.21722524,
1881
+ "personal": 4.51650823,
1882
+ "qwen": 2.21392314,
1883
+ "qwen2.5-vl-7b-instruct": 4.92197334,
1884
+ "region": 1.22067136,
1885
+ "sentence-transformers": 4.51650823,
1886
+ "us": 1.22067136
1887
+ }
1888
+ },
1889
+ {
1890
+ "project_id": "build-small-hackathon/Myspace",
1891
+ "tokens": 8,
1892
+ "unique_terms": 7,
1893
+ "norm": 12.22952124,
1894
+ "weights": {
1895
+ "gpt-oss-20b": 3.53567898,
1896
+ "gradio": 1.12648415,
1897
+ "myspace": 9.84394667,
1898
+ "openai": 3.41789594,
1899
+ "region": 1.22067136,
1900
+ "todo": 4.92197334,
1901
+ "us": 1.22067136
1902
+ }
1903
+ },
1904
+ {
1905
+ "project_id": "build-small-hackathon/mythograph-atelier",
1906
+ "tokens": 17,
1907
+ "unique_terms": 15,
1908
+ "norm": 19.71021594,
1909
+ "weights": {
1910
+ "abstract": 4.92197334,
1911
+ "ai": 3.21722524,
1912
+ "art": 4.22882616,
1913
+ "atelier": 9.84394667,
1914
+ "black-forest-labs": 4.0056826,
1915
+ "flux.2-klein-4b": 4.22882616,
1916
+ "gradio": 1.12648415,
1917
+ "lmstudio-community": 4.92197334,
1918
+ "meaning": 4.92197334,
1919
+ "mythograph": 9.84394667,
1920
+ "personal": 4.51650823,
1921
+ "qwen3.5-0.8b-gguf": 4.92197334,
1922
+ "region": 1.22067136,
1923
+ "us": 1.22067136,
1924
+ "with": 3.31253542
1925
+ }
1926
+ },
1927
+ {
1928
+ "project_id": "build-small-hackathon/neighbourhood-guide",
1929
+ "tokens": 13,
1930
+ "unique_terms": 10,
1931
+ "norm": 19.04413309,
1932
+ "weights": {
1933
+ "cohere-transcribe-03-2026": 4.92197334,
1934
+ "coherelabs": 9.03301646,
1935
+ "gradio": 1.12648415,
1936
+ "guide": 9.84394667,
1937
+ "magpie_tts_multilingual_357m": 4.92197334,
1938
+ "neighbourhood": 9.84394667,
1939
+ "nvidia": 3.21722524,
1940
+ "region": 1.22067136,
1941
+ "tiny-aya-global": 4.92197334,
1942
+ "us": 1.22067136
1943
+ }
1944
+ },
1945
+ {
1946
+ "project_id": "build-small-hackathon/neilA",
1947
+ "tokens": 19,
1948
+ "unique_terms": 19,
1949
+ "norm": 18.36547048,
1950
+ "weights": {
1951
+ "alien": 4.92197334,
1952
+ "an": 4.0056826,
1953
+ "but": 4.92197334,
1954
+ "contact": 4.92197334,
1955
+ "first": 4.22882616,
1956
+ "gradio": 1.12648415,
1957
+ "has": 4.92197334,
1958
+ "knows": 4.92197334,
1959
+ "life": 4.92197334,
1960
+ "lived": 4.92197334,
1961
+ "neila": 4.92197334,
1962
+ "never": 4.92197334,
1963
+ "qwen": 2.21392314,
1964
+ "qwen2.5-7b-instruct": 3.41789594,
1965
+ "region": 1.22067136,
1966
+ "teach": 4.92197334,
1967
+ "that": 4.0056826,
1968
+ "us": 1.22067136,
1969
+ "words": 4.92197334
1970
+ }
1971
+ },
1972
+ {
1973
+ "project_id": "build-small-hackathon/NextClue",
1974
+ "tokens": 13,
1975
+ "unique_terms": 12,
1976
+ "norm": 16.13373728,
1977
+ "weights": {
1978
+ "assistant": 3.41789594,
1979
+ "design": 4.92197334,
1980
+ "experiments": 4.92197334,
1981
+ "gradio": 1.12648415,
1982
+ "help": 4.92197334,
1983
+ "next-best": 4.92197334,
1984
+ "nextclue": 9.84394667,
1985
+ "region": 1.22067136,
1986
+ "research": 4.92197334,
1987
+ "the": 2.90707032,
1988
+ "to": 4.22882616,
1989
+ "us": 1.22067136
1990
+ }
1991
+ },
1992
+ {
1993
+ "project_id": "build-small-hackathon/NEXUS-Visual-Weaver",
1994
+ "tokens": 19,
1995
+ "unique_terms": 15,
1996
+ "norm": 24.10358477,
1997
+ "weights": {
1998
+ "and": 3.41789594,
1999
+ "black-forest-labs": 4.0056826,
2000
+ "doppleground": 4.92197334,
2001
+ "flux.2-klein-4b": 4.22882616,
2002
+ "foundation": 4.92197334,
2003
+ "from": 3.66921037,
2004
+ "gradio": 1.12648415,
2005
+ "hackaton": 4.92197334,
2006
+ "nexus": 14.76592001,
2007
+ "os": 4.92197334,
2008
+ "project": 4.92197334,
2009
+ "region": 1.22067136,
2010
+ "us": 1.22067136,
2011
+ "visual": 9.03301646,
2012
+ "weaver": 9.84394667
2013
+ }
2014
+ },
2015
+ {
2016
+ "project_id": "build-small-hackathon/Objection-Your-Honour",
2017
+ "tokens": 13,
2018
+ "unique_terms": 10,
2019
+ "norm": 17.50432897,
2020
+ "weights": {
2021
+ "game": 4.0056826,
2022
+ "gpt-oss-20b": 3.53567898,
2023
+ "gradio": 1.12648415,
2024
+ "honour": 9.84394667,
2025
+ "objection": 9.84394667,
2026
+ "openai": 3.41789594,
2027
+ "region": 1.22067136,
2028
+ "us": 1.22067136,
2029
+ "whimsical": 4.92197334,
2030
+ "your": 6.62507085
2031
+ }
2032
+ },
2033
+ {
2034
+ "project_id": "build-small-hackathon/octopus-ai",
2035
+ "tokens": 21,
2036
+ "unique_terms": 17,
2037
+ "norm": 24.16668215,
2038
+ "weights": {
2039
+ "ai": 9.65167573,
2040
+ "break": 4.92197334,
2041
+ "can": 4.92197334,
2042
+ "cognitiveengineering": 4.92197334,
2043
+ "gradio": 1.12648415,
2044
+ "mistralai": 4.92197334,
2045
+ "mixtral-8x7b-v0.1": 4.92197334,
2046
+ "modular": 4.92197334,
2047
+ "octopus": 14.76592001,
2048
+ "octopus-dev-checkpoints": 4.92197334,
2049
+ "region": 1.22067136,
2050
+ "self-monitoring": 4.92197334,
2051
+ "stress": 4.92197334,
2052
+ "test": 4.92197334,
2053
+ "the": 2.90707032,
2054
+ "us": 1.22067136,
2055
+ "you": 4.22882616
2056
+ }
2057
+ },
2058
+ {
2059
+ "project_id": "build-small-hackathon/oneiros",
2060
+ "tokens": 18,
2061
+ "unique_terms": 17,
2062
+ "norm": 18.87487701,
2063
+ "weights": {
2064
+ "adindamochamad": 4.92197334,
2065
+ "api": 4.92197334,
2066
+ "chatgpt": 4.92197334,
2067
+ "dreams": 4.92197334,
2068
+ "gradio": 1.12648415,
2069
+ "map": 4.51650823,
2070
+ "model": 4.51650823,
2071
+ "no": 4.92197334,
2072
+ "oneiros": 9.84394667,
2073
+ "oneiros-agent-traces": 4.92197334,
2074
+ "qwen": 2.21392314,
2075
+ "qwen2.5-7b-instruct-gguf": 4.92197334,
2076
+ "region": 1.22067136,
2077
+ "small": 4.22882616,
2078
+ "us": 1.22067136,
2079
+ "with": 3.31253542,
2080
+ "your": 3.31253542
2081
+ }
2082
+ },
2083
+ {
2084
+ "project_id": "build-small-hackathon/oracle-ternary-flame",
2085
+ "tokens": 20,
2086
+ "unique_terms": 16,
2087
+ "norm": 25.40985091,
2088
+ "weights": {
2089
+ "cosmic": 4.92197334,
2090
+ "cryptic": 4.92197334,
2091
+ "elemental": 4.92197334,
2092
+ "flame": 9.84394667,
2093
+ "gemma-4-12b-it": 4.92197334,
2094
+ "google": 4.22882616,
2095
+ "gradio": 1.12648415,
2096
+ "in": 4.22882616,
2097
+ "keypa": 4.92197334,
2098
+ "oracle": 14.76592001,
2099
+ "oracle-gemma4-12b-lora": 4.92197334,
2100
+ "poetry": 4.92197334,
2101
+ "region": 1.22067136,
2102
+ "speaking": 4.92197334,
2103
+ "ternary": 9.84394667,
2104
+ "us": 1.22067136
2105
+ }
2106
+ },
2107
+ {
2108
+ "project_id": "build-small-hackathon/patient-virtuel-dentiste",
2109
+ "tokens": 13,
2110
+ "unique_terms": 11,
2111
+ "norm": 17.2802909,
2112
+ "weights": {
2113
+ "dentiste": 4.92197334,
2114
+ "gradio": 1.12648415,
2115
+ "hygi": 4.92197334,
2116
+ "niste": 4.92197334,
2117
+ "patient": 9.03301646,
2118
+ "pro": 4.51650823,
2119
+ "qwen": 2.21392314,
2120
+ "qwen3.6-27b": 4.22882616,
2121
+ "region": 1.22067136,
2122
+ "us": 1.22067136,
2123
+ "virtuel": 9.84394667
2124
+ }
2125
+ },
2126
+ {
2127
+ "project_id": "build-small-hackathon/pawmap",
2128
+ "tokens": 15,
2129
+ "unique_terms": 13,
2130
+ "norm": 19.96142245,
2131
+ "weights": {
2132
+ "animais": 4.92197334,
2133
+ "colaborativo": 4.92197334,
2134
+ "com": 4.92197334,
2135
+ "de": 9.84394667,
2136
+ "docker": 4.0056826,
2137
+ "ia": 4.92197334,
2138
+ "llama-3.2-11b-vision-instruct": 4.92197334,
2139
+ "mapeamento": 4.92197334,
2140
+ "meta-llama": 4.0056826,
2141
+ "pawmap": 9.84394667,
2142
+ "region": 1.22067136,
2143
+ "rua": 4.92197334,
2144
+ "us": 1.22067136
2145
+ }
2146
+ },
2147
+ {
2148
+ "project_id": "build-small-hackathon/persona-atlas",
2149
+ "tokens": 21,
2150
+ "unique_terms": 19,
2151
+ "norm": 22.14435756,
2152
+ "weights": {
2153
+ "and": 3.41789594,
2154
+ "atlas": 9.84394667,
2155
+ "build": 4.0056826,
2156
+ "compare": 4.51650823,
2157
+ "figures": 4.92197334,
2158
+ "gemma-4-26b-a4b-it": 4.92197334,
2159
+ "google": 4.22882616,
2160
+ "gradio": 1.12648415,
2161
+ "harrier-oss-v1-0.6b": 4.92197334,
2162
+ "how": 4.92197334,
2163
+ "microsoft": 4.22882616,
2164
+ "of": 3.82336105,
2165
+ "persona": 9.84394667,
2166
+ "personas": 4.92197334,
2167
+ "public": 4.92197334,
2168
+ "region": 1.22067136,
2169
+ "they": 4.92197334,
2170
+ "think": 4.92197334,
2171
+ "us": 1.22067136
2172
+ }
2173
+ },
2174
+ {
2175
+ "project_id": "build-small-hackathon/planpalette",
2176
+ "tokens": 7,
2177
+ "unique_terms": 6,
2178
+ "norm": 12.23127029,
2179
+ "weights": {
2180
+ "dreamshaper-xl-lightning": 4.92197334,
2181
+ "gradio": 1.12648415,
2182
+ "lykon": 4.92197334,
2183
+ "planpalette": 9.84394667,
2184
+ "region": 1.22067136,
2185
+ "us": 1.22067136
2186
+ }
2187
+ },
2188
+ {
2189
+ "project_id": "build-small-hackathon/pocket-weather-theater",
2190
+ "tokens": 23,
2191
+ "unique_terms": 18,
2192
+ "norm": 28.49656,
2193
+ "weights": {
2194
+ "build-small-hackathon": 2.97606319,
2195
+ "from": 3.66921037,
2196
+ "gradio": 1.12648415,
2197
+ "huggingfacetb": 4.92197334,
2198
+ "local": 4.0056826,
2199
+ "local-inference": 4.92197334,
2200
+ "plays": 4.92197334,
2201
+ "pocket": 14.76592001,
2202
+ "pocket-weather-theater-smollm2-135m-lora": 4.92197334,
2203
+ "pratikbuilds": 4.92197334,
2204
+ "props": 4.92197334,
2205
+ "smollm2-135m-instruct": 4.92197334,
2206
+ "theater": 9.03301646,
2207
+ "thousand-token-wood": 4.92197334,
2208
+ "tiny": 3.53567898,
2209
+ "tiny-models": 4.92197334,
2210
+ "transformers": 4.92197334,
2211
+ "weather": 14.76592001
2212
+ }
2213
+ },
2214
+ {
2215
+ "project_id": "build-small-hackathon/rarebirds",
2216
+ "tokens": 15,
2217
+ "unique_terms": 12,
2218
+ "norm": 21.32389952,
2219
+ "weights": {
2220
+ "ads-b": 9.84394667,
2221
+ "aircraft": 9.84394667,
2222
+ "classifier": 4.92197334,
2223
+ "gemma": 4.51650823,
2224
+ "gemma-3-27b-it": 4.92197334,
2225
+ "google": 4.22882616,
2226
+ "gradio": 1.12648415,
2227
+ "live": 4.51650823,
2228
+ "map": 4.51650823,
2229
+ "rarebirds": 9.84394667,
2230
+ "rarity": 4.92197334,
2231
+ "with": 3.31253542
2232
+ }
2233
+ },
2234
+ {
2235
+ "project_id": "build-small-hackathon/receipt_scanner",
2236
+ "tokens": 11,
2237
+ "unique_terms": 8,
2238
+ "norm": 16.65892811,
2239
+ "weights": {
2240
+ "gradio": 1.12648415,
2241
+ "minicpm-v": 4.92197334,
2242
+ "minicpm-v-4.6": 4.0056826,
2243
+ "openbmb": 6.26042773,
2244
+ "receipt": 9.84394667,
2245
+ "region": 1.22067136,
2246
+ "scanner": 9.84394667,
2247
+ "us": 1.22067136
2248
+ }
2249
+ },
2250
+ {
2251
+ "project_id": "build-small-hackathon/Retail-Insight-AI",
2252
+ "tokens": 10,
2253
+ "unique_terms": 7,
2254
+ "norm": 16.12006872,
2255
+ "weights": {
2256
+ "ai": 6.43445049,
2257
+ "gradio": 1.12648415,
2258
+ "insight": 9.84394667,
2259
+ "pro": 4.51650823,
2260
+ "region": 1.22067136,
2261
+ "retail": 9.84394667,
2262
+ "us": 1.22067136
2263
+ }
2264
+ },
2265
+ {
2266
+ "project_id": "build-small-hackathon/roadb-other-screen",
2267
+ "tokens": 26,
2268
+ "unique_terms": 23,
2269
+ "norm": 24.70138865,
2270
+ "weights": {
2271
+ "build-small-hackathon": 2.97606319,
2272
+ "chose": 4.92197334,
2273
+ "custom-frontend": 4.92197334,
2274
+ "differently": 4.92197334,
2275
+ "gguf": 4.0056826,
2276
+ "gradio": 1.12648415,
2277
+ "gradio-server": 4.92197334,
2278
+ "interactive-fiction": 4.92197334,
2279
+ "llama-cpp": 3.82336105,
2280
+ "modal": 4.92197334,
2281
+ "other": 9.84394667,
2282
+ "qwen": 2.21392314,
2283
+ "qwen3.5-9b-gguf": 4.92197334,
2284
+ "road": 4.92197334,
2285
+ "roadb": 4.92197334,
2286
+ "screen": 9.84394667,
2287
+ "self": 4.92197334,
2288
+ "small-models": 4.0056826,
2289
+ "talk": 4.51650823,
2290
+ "the": 5.81414063,
2291
+ "to": 4.22882616,
2292
+ "unsloth": 4.0056826,
2293
+ "who": 4.92197334
2294
+ }
2295
+ },
2296
+ {
2297
+ "project_id": "build-small-hackathon/roast-my-repo",
2298
+ "tokens": 19,
2299
+ "unique_terms": 16,
2300
+ "norm": 21.68371728,
2301
+ "weights": {
2302
+ "ai-powered": 4.51650823,
2303
+ "brutal": 4.92197334,
2304
+ "code": 4.22882616,
2305
+ "for": 3.21722524,
2306
+ "github": 4.92197334,
2307
+ "gradio": 1.12648415,
2308
+ "minicpm4-8b": 4.92197334,
2309
+ "my": 9.03301646,
2310
+ "openbmb": 3.13021387,
2311
+ "region": 1.22067136,
2312
+ "repo": 9.84394667,
2313
+ "repos": 4.92197334,
2314
+ "review": 4.92197334,
2315
+ "roast": 9.84394667,
2316
+ "us": 1.22067136,
2317
+ "your": 3.31253542
2318
+ }
2319
+ },
2320
+ {
2321
+ "project_id": "build-small-hackathon/SlideAI",
2322
+ "tokens": 7,
2323
+ "unique_terms": 6,
2324
+ "norm": 10.8506128,
2325
+ "weights": {
2326
+ "gradio": 1.12648415,
2327
+ "qwen": 2.21392314,
2328
+ "qwen2.5-7b-instruct": 3.41789594,
2329
+ "region": 1.22067136,
2330
+ "slideai": 9.84394667,
2331
+ "us": 1.22067136
2332
+ }
2333
+ },
2334
+ {
2335
+ "project_id": "build-small-hackathon/Spooky-From-a-Distance",
2336
+ "tokens": 9,
2337
+ "unique_terms": 6,
2338
+ "norm": 15.87161097,
2339
+ "weights": {
2340
+ "distance": 9.84394667,
2341
+ "from": 7.33842074,
2342
+ "gradio": 1.12648415,
2343
+ "region": 1.22067136,
2344
+ "spooky": 9.84394667,
2345
+ "us": 1.22067136
2346
+ }
2347
+ },
2348
+ {
2349
+ "project_id": "build-small-hackathon/storybook",
2350
+ "tokens": 5,
2351
+ "unique_terms": 4,
2352
+ "norm": 10.05745145,
2353
+ "weights": {
2354
+ "gradio": 1.12648415,
2355
+ "region": 1.22067136,
2356
+ "storybook": 9.84394667,
2357
+ "us": 1.22067136
2358
+ }
2359
+ },
2360
+ {
2361
+ "project_id": "build-small-hackathon/Structured-Data-Rescuer",
2362
+ "tokens": 20,
2363
+ "unique_terms": 13,
2364
+ "norm": 28.676237,
2365
+ "weights": {
2366
+ "and": 3.41789594,
2367
+ "data": 18.06603291,
2368
+ "entered": 4.92197334,
2369
+ "gradio": 1.12648415,
2370
+ "is": 7.6467221,
2371
+ "llama-3.1-8b-instruct": 4.22882616,
2372
+ "meta-llama": 4.0056826,
2373
+ "region": 1.22067136,
2374
+ "rescuer": 9.84394667,
2375
+ "returned": 4.92197334,
2376
+ "structured": 14.76592001,
2377
+ "unstructured": 4.92197334,
2378
+ "us": 1.22067136
2379
+ }
2380
+ },
2381
+ {
2382
+ "project_id": "build-small-hackathon/surgical-tissue-segmentation",
2383
+ "tokens": 13,
2384
+ "unique_terms": 10,
2385
+ "norm": 19.4252158,
2386
+ "weights": {
2387
+ "cholec-yolo26n-seg": 4.92197334,
2388
+ "gradio": 1.12648415,
2389
+ "llama-3.1-8b-instruct": 4.22882616,
2390
+ "meta-llama": 4.0056826,
2391
+ "region": 1.22067136,
2392
+ "segmentation": 9.84394667,
2393
+ "sugan04": 4.92197334,
2394
+ "surgical": 9.84394667,
2395
+ "tissue": 9.84394667,
2396
+ "us": 1.22067136
2397
+ }
2398
+ },
2399
+ {
2400
+ "project_id": "build-small-hackathon/tarook",
2401
+ "tokens": 5,
2402
+ "unique_terms": 4,
2403
+ "norm": 10.76702634,
2404
+ "weights": {
2405
+ "docker": 4.0056826,
2406
+ "region": 1.22067136,
2407
+ "tarook": 9.84394667,
2408
+ "us": 1.22067136
2409
+ }
2410
+ },
2411
+ {
2412
+ "project_id": "build-small-hackathon/team_lunch_app_v1",
2413
+ "tokens": 17,
2414
+ "unique_terms": 11,
2415
+ "norm": 26.5239325,
2416
+ "weights": {
2417
+ "app": 9.84394667,
2418
+ "gradio": 1.12648415,
2419
+ "individual": 4.92197334,
2420
+ "lunch": 14.76592001,
2421
+ "organizer": 4.92197334,
2422
+ "qwen": 2.21392314,
2423
+ "qwen2.5-1.5b-instruct": 4.0056826,
2424
+ "region": 1.22067136,
2425
+ "team": 14.76592001,
2426
+ "us": 1.22067136,
2427
+ "v1": 9.84394667
2428
+ }
2429
+ },
2430
+ {
2431
+ "project_id": "build-small-hackathon/the-echo",
2432
+ "tokens": 18,
2433
+ "unique_terms": 15,
2434
+ "norm": 19.09276993,
2435
+ "weights": {
2436
+ "agentic": 4.51650823,
2437
+ "an": 4.0056826,
2438
+ "didn": 4.92197334,
2439
+ "echo": 9.84394667,
2440
+ "gradio": 1.12648415,
2441
+ "live": 4.51650823,
2442
+ "lives": 4.92197334,
2443
+ "of": 3.82336105,
2444
+ "qwen": 2.21392314,
2445
+ "qwen2.5-3b-instruct": 4.51650823,
2446
+ "region": 1.22067136,
2447
+ "the": 8.72121095,
2448
+ "tree": 4.92197334,
2449
+ "us": 1.22067136,
2450
+ "you": 4.22882616
2451
+ }
2452
+ },
2453
+ {
2454
+ "project_id": "build-small-hackathon/the-i3-ghost-matrix-v5",
2455
+ "tokens": 19,
2456
+ "unique_terms": 13,
2457
+ "norm": 26.54527231,
2458
+ "weights": {
2459
+ "agent": 3.53567898,
2460
+ "delightfully": 4.92197334,
2461
+ "ghost": 14.76592001,
2462
+ "gradio": 1.12648415,
2463
+ "i3": 14.76592001,
2464
+ "matrix": 9.84394667,
2465
+ "off-the-grid": 4.92197334,
2466
+ "region": 1.22067136,
2467
+ "the": 5.81414063,
2468
+ "us": 1.22067136,
2469
+ "v5": 4.92197334,
2470
+ "v5.2": 4.92197334,
2471
+ "weird": 4.92197334
2472
+ }
2473
+ },
2474
+ {
2475
+ "project_id": "build-small-hackathon/the-pixelforge-klein",
2476
+ "tokens": 16,
2477
+ "unique_terms": 13,
2478
+ "norm": 19.43472405,
2479
+ "weights": {
2480
+ "asset": 4.92197334,
2481
+ "game": 4.0056826,
2482
+ "generator": 4.51650823,
2483
+ "gradio": 1.12648415,
2484
+ "klein": 9.84394667,
2485
+ "pixel-art": 4.92197334,
2486
+ "pixelforge": 9.84394667,
2487
+ "region": 1.22067136,
2488
+ "retro": 4.92197334,
2489
+ "the": 5.81414063,
2490
+ "tiny": 3.53567898,
2491
+ "tool": 4.92197334,
2492
+ "us": 1.22067136
2493
+ }
2494
+ },
2495
+ {
2496
+ "project_id": "build-small-hackathon/The-Shrine",
2497
+ "tokens": 7,
2498
+ "unique_terms": 5,
2499
+ "norm": 11.61708057,
2500
+ "weights": {
2501
+ "gradio": 1.12648415,
2502
+ "region": 1.22067136,
2503
+ "shrine": 9.84394667,
2504
+ "the": 5.81414063,
2505
+ "us": 1.22067136
2506
+ }
2507
+ },
2508
+ {
2509
+ "project_id": "build-small-hackathon/thousand-token-wood",
2510
+ "tokens": 9,
2511
+ "unique_terms": 6,
2512
+ "norm": 15.45870949,
2513
+ "weights": {
2514
+ "gradio": 1.12648415,
2515
+ "region": 1.22067136,
2516
+ "thousand": 9.03301646,
2517
+ "token": 8.45765231,
2518
+ "us": 1.22067136,
2519
+ "wood": 9.03301646
2520
+ }
2521
+ },
2522
+ {
2523
+ "project_id": "build-small-hackathon/thousand-token-wood-sim",
2524
+ "tokens": 28,
2525
+ "unique_terms": 22,
2526
+ "norm": 23.95344821,
2527
+ "weights": {
2528
+ "admiraltaco": 4.92197334,
2529
+ "build-small-hackathon": 2.97606319,
2530
+ "gpt-oss-20b": 3.53567898,
2531
+ "gradio": 1.12648415,
2532
+ "minicpm3-4b": 4.92197334,
2533
+ "nemotron-mini-4b-instruct": 4.0056826,
2534
+ "nvidia": 3.21722524,
2535
+ "openai": 3.41789594,
2536
+ "openbmb": 3.13021387,
2537
+ "qwen": 8.85569254,
2538
+ "qwen2.5-0.5b-instruct": 4.22882616,
2539
+ "qwen2.5-1.5b-instruct": 4.0056826,
2540
+ "qwen2.5-3b-instruct": 4.51650823,
2541
+ "qwen2.5-7b-instruct": 3.41789594,
2542
+ "region": 1.22067136,
2543
+ "sim": 4.92197334,
2544
+ "thousand": 9.03301646,
2545
+ "thousand-token-wood-traces": 4.92197334,
2546
+ "token": 8.45765231,
2547
+ "ttw-trader-0.5b": 4.92197334,
2548
+ "us": 1.22067136,
2549
+ "wood": 9.03301646
2550
+ }
2551
+ },
2552
+ {
2553
+ "project_id": "build-small-hackathon/tiny-army",
2554
+ "tokens": 33,
2555
+ "unique_terms": 24,
2556
+ "norm": 31.81880483,
2557
+ "weights": {
2558
+ "army": 14.76592001,
2559
+ "black-forest-labs": 12.01704781,
2560
+ "bonsai-image-binary-4b-mlx-1bit": 4.92197334,
2561
+ "bonsai-image-ternary-4b-mlx-2bit": 4.92197334,
2562
+ "docker": 4.0056826,
2563
+ "fighters": 4.92197334,
2564
+ "flux.1-dev": 4.92197334,
2565
+ "flux.1-schnell": 4.51650823,
2566
+ "flux.2-klein-4b": 4.22882616,
2567
+ "legends": 4.92197334,
2568
+ "own": 4.92197334,
2569
+ "prism-ml": 9.84394667,
2570
+ "qwen": 6.64176941,
2571
+ "qwen2.5-0.5b-instruct-gguf": 4.92197334,
2572
+ "qwen3-tts-12hz-1.7b-base": 4.92197334,
2573
+ "qwen3-tts-12hz-1.7b-voicedesign": 4.92197334,
2574
+ "region": 1.22067136,
2575
+ "their": 4.92197334,
2576
+ "tiny": 10.60703693,
2577
+ "tongyi-mai": 4.92197334,
2578
+ "true": 4.92197334,
2579
+ "us": 1.22067136,
2580
+ "write": 4.92197334,
2581
+ "z-image-turbo": 4.92197334
2582
+ }
2583
+ },
2584
+ {
2585
+ "project_id": "build-small-hackathon/tiny-dispatch-coach",
2586
+ "tokens": 14,
2587
+ "unique_terms": 10,
2588
+ "norm": 21.36012346,
2589
+ "weights": {
2590
+ "coach": 13.54952468,
2591
+ "dispatch": 9.84394667,
2592
+ "gradio": 1.12648415,
2593
+ "hackathon": 4.22882616,
2594
+ "logistics": 4.92197334,
2595
+ "operations-research": 4.92197334,
2596
+ "route": 4.92197334,
2597
+ "small-model": 4.22882616,
2598
+ "small-models": 4.0056826,
2599
+ "tiny": 7.07135795
2600
+ }
2601
+ },
2602
+ {
2603
+ "project_id": "build-small-hackathon/tricket",
2604
+ "tokens": 7,
2605
+ "unique_terms": 6,
2606
+ "norm": 11.19532796,
2607
+ "weights": {
2608
+ "gpt-oss-20b": 3.53567898,
2609
+ "gradio": 1.12648415,
2610
+ "openai": 3.41789594,
2611
+ "region": 1.22067136,
2612
+ "tricket": 9.84394667,
2613
+ "us": 1.22067136
2614
+ }
2615
+ },
2616
+ {
2617
+ "project_id": "build-small-hackathon/Trollsona",
2618
+ "tokens": 9,
2619
+ "unique_terms": 8,
2620
+ "norm": 13.12967628,
2621
+ "weights": {
2622
+ "gradio": 1.12648415,
2623
+ "nano_compact_3b_qkvfp16": 4.92197334,
2624
+ "qwen": 2.21392314,
2625
+ "qwen2.5-0.5b-instruct": 4.22882616,
2626
+ "region": 1.22067136,
2627
+ "rthitalia": 4.92197334,
2628
+ "trollsona": 9.84394667,
2629
+ "us": 1.22067136
2630
+ }
2631
+ },
2632
+ {
2633
+ "project_id": "build-small-hackathon/ux-crime-scene",
2634
+ "tokens": 17,
2635
+ "unique_terms": 12,
2636
+ "norm": 25.72285299,
2637
+ "weights": {
2638
+ "as": 4.51650823,
2639
+ "crime": 14.76592001,
2640
+ "detective": 4.51650823,
2641
+ "gradio": 1.12648415,
2642
+ "investigates": 4.92197334,
2643
+ "noir": 4.92197334,
2644
+ "region": 1.22067136,
2645
+ "scene": 14.76592001,
2646
+ "ui": 4.92197334,
2647
+ "us": 1.22067136,
2648
+ "ux": 9.84394667,
2649
+ "your": 3.31253542
2650
+ }
2651
+ },
2652
+ {
2653
+ "project_id": "build-small-hackathon/voice-sales-logger",
2654
+ "tokens": 13,
2655
+ "unique_terms": 10,
2656
+ "norm": 18.3077664,
2657
+ "weights": {
2658
+ "gradio": 1.12648415,
2659
+ "logger": 9.84394667,
2660
+ "nemotron-3.5-asr-streaming-0.6b": 4.92197334,
2661
+ "nvidia": 3.21722524,
2662
+ "qwen": 2.21392314,
2663
+ "qwen2.5-1.5b-instruct": 4.0056826,
2664
+ "region": 1.22067136,
2665
+ "sales": 9.84394667,
2666
+ "us": 1.22067136,
2667
+ "voice": 9.03301646
2668
+ }
2669
+ },
2670
+ {
2671
+ "project_id": "build-small-hackathon/VoiceGate",
2672
+ "tokens": 19,
2673
+ "unique_terms": 17,
2674
+ "norm": 19.06802923,
2675
+ "weights": {
2676
+ "ambience": 4.92197334,
2677
+ "and": 3.41789594,
2678
+ "dubbing": 4.51650823,
2679
+ "gradio": 1.12648415,
2680
+ "kijai": 4.92197334,
2681
+ "melbandroformer_comfy": 4.92197334,
2682
+ "multilingual": 4.92197334,
2683
+ "openbmb": 3.13021387,
2684
+ "qwen": 4.42784627,
2685
+ "qwen3-asr-1.7b": 4.92197334,
2686
+ "qwen3-forcedaligner-0.6b": 4.92197334,
2687
+ "region": 1.22067136,
2688
+ "subtitles": 4.92197334,
2689
+ "us": 1.22067136,
2690
+ "voicegate": 9.84394667,
2691
+ "voxcpm2": 4.51650823,
2692
+ "with": 3.31253542
2693
+ }
2694
+ },
2695
+ {
2696
+ "project_id": "build-small-hackathon/wan2-2-fp8da-aoti-14B-fast",
2697
+ "tokens": 29,
2698
+ "unique_terms": 27,
2699
+ "norm": 26.2901838,
2700
+ "weights": {
2701
+ "14b": 9.84394667,
2702
+ "an": 4.0056826,
2703
+ "aoti": 4.92197334,
2704
+ "cbensimon": 4.92197334,
2705
+ "fast": 9.84394667,
2706
+ "fp8da": 4.92197334,
2707
+ "from": 3.66921037,
2708
+ "generate": 4.92197334,
2709
+ "gradio": 1.12648415,
2710
+ "image": 4.92197334,
2711
+ "mcp-server": 4.51650823,
2712
+ "preview": 4.92197334,
2713
+ "prompt": 4.92197334,
2714
+ "r3gm": 4.92197334,
2715
+ "region": 1.22067136,
2716
+ "rife": 4.92197334,
2717
+ "testorganizationpleaseignore": 4.92197334,
2718
+ "text": 4.51650823,
2719
+ "us": 1.22067136,
2720
+ "video": 4.92197334,
2721
+ "wamu-tools": 4.92197334,
2722
+ "wan-ai": 4.92197334,
2723
+ "wan2": 4.92197334,
2724
+ "wan2.2": 4.92197334,
2725
+ "wan2.2-i2v-a14b-diffusers": 4.92197334,
2726
+ "wantransformer3dmodel-sm120-cu130-raa": 4.92197334,
2727
+ "with": 3.31253542
2728
+ }
2729
+ },
2730
+ {
2731
+ "project_id": "build-small-hackathon/WitGym",
2732
+ "tokens": 13,
2733
+ "unique_terms": 12,
2734
+ "norm": 16.35402727,
2735
+ "weights": {
2736
+ "baai": 4.92197334,
2737
+ "bge-small-en-v1.5": 4.92197334,
2738
+ "cross-encoder": 4.92197334,
2739
+ "ettin-reranker-32m-v1": 4.92197334,
2740
+ "gradio": 1.12648415,
2741
+ "jxm": 4.92197334,
2742
+ "qwen": 2.21392314,
2743
+ "qwen3.5-9b": 4.0056826,
2744
+ "region": 1.22067136,
2745
+ "the_office_lines": 4.92197334,
2746
+ "us": 1.22067136,
2747
+ "witgym": 9.84394667
2748
+ }
2749
+ },
2750
+ {
2751
+ "project_id": "build-small-hackathon/wonderland",
2752
+ "tokens": 21,
2753
+ "unique_terms": 17,
2754
+ "norm": 22.80463206,
2755
+ "weights": {
2756
+ "1000": 4.92197334,
2757
+ "adventure": 4.92197334,
2758
+ "gradio": 1.12648415,
2759
+ "guiding": 4.92197334,
2760
+ "model": 4.51650823,
2761
+ "nvidia": 12.86890098,
2762
+ "nvidia-nemotron-3-nano-30b-a3b-bf16": 4.51650823,
2763
+ "nvidia-nemotron-3-nano-4b-bf16": 4.92197334,
2764
+ "nvidia-nemotron-3-nano-4b-fp8": 4.92197334,
2765
+ "nvidia-nemotron-3-nano-4b-gguf": 4.92197334,
2766
+ "region": 1.22067136,
2767
+ "text": 4.51650823,
2768
+ "token": 4.22882616,
2769
+ "us": 1.22067136,
2770
+ "with": 3.31253542,
2771
+ "wonderland": 9.84394667,
2772
+ "you": 4.22882616
2773
+ }
2774
+ },
2775
+ {
2776
+ "project_id": "build-small-hackathon/wpl-discovery",
2777
+ "tokens": 13,
2778
+ "unique_terms": 11,
2779
+ "norm": 17.85151785,
2780
+ "weights": {
2781
+ "actually": 4.51650823,
2782
+ "discover": 4.51650823,
2783
+ "discovery": 9.84394667,
2784
+ "gradio": 1.12648415,
2785
+ "library": 4.92197334,
2786
+ "offers": 4.92197334,
2787
+ "region": 1.22067136,
2788
+ "us": 1.22067136,
2789
+ "what": 4.51650823,
2790
+ "wpl": 9.84394667,
2791
+ "your": 3.31253542
2792
+ }
2793
+ },
2794
+ {
2795
+ "project_id": "build-small-hackathon/Yui-Home-Assisstant",
2796
+ "tokens": 18,
2797
+ "unique_terms": 14,
2798
+ "norm": 23.39229749,
2799
+ "weights": {
2800
+ "assisstant": 9.84394667,
2801
+ "assistant": 3.41789594,
2802
+ "asssitant": 4.92197334,
2803
+ "configured": 4.92197334,
2804
+ "for": 3.21722524,
2805
+ "gpt-oss-20b": 3.53567898,
2806
+ "gradio": 1.12648415,
2807
+ "home": 14.76592001,
2808
+ "local": 4.0056826,
2809
+ "openai": 3.41789594,
2810
+ "region": 1.22067136,
2811
+ "us": 1.22067136,
2812
+ "voice": 4.51650823,
2813
+ "yui": 9.84394667
2814
+ }
2815
+ }
2816
+ ]
2817
+ }
hackathon_advisor/data.py CHANGED
@@ -2,6 +2,8 @@ from __future__ import annotations
2
 
3
  from collections import Counter
4
  from dataclasses import dataclass
 
 
5
  import json
6
  import math
7
  from pathlib import Path
@@ -151,20 +153,34 @@ WHITESPACE_SEEDS: tuple[WhitespaceSeed, ...] = (
151
  )
152
 
153
 
 
 
 
154
  class ProjectIndex:
155
- def __init__(self, projects: list[Project], generated_at: str, source: str) -> None:
 
 
 
 
 
 
156
  if not projects:
157
  raise ValueError("project index requires at least one project")
158
  self.projects = projects
159
  self.generated_at = generated_at
160
  self.source = source
161
- self._documents = [Counter(tokenize(project.searchable_text)) for project in projects]
162
- self._df = Counter(term for doc in self._documents for term in doc)
163
- self._idf = {
164
- term: math.log((1 + len(self._documents)) / (1 + freq)) + 1.0
165
- for term, freq in self._df.items()
166
- }
167
- self._norms = [self._norm(doc) for doc in self._documents]
 
 
 
 
 
168
 
169
  @classmethod
170
  def from_file(cls, path: Path) -> "ProjectIndex":
@@ -176,6 +192,18 @@ class ProjectIndex:
176
  source=str(data.get("source") or ""),
177
  )
178
 
 
 
 
 
 
 
 
 
 
 
 
 
179
  def top_projects(self, limit: int = 8) -> list[Project]:
180
  return sorted(
181
  self.projects,
@@ -198,7 +226,7 @@ class ProjectIndex:
198
  for term, count in query_doc.items():
199
  if term not in doc:
200
  continue
201
- raw += count * doc[term] * self._idf.get(term, 1.0) ** 2
202
  matched.append(term)
203
  if not matched:
204
  continue
@@ -243,3 +271,79 @@ class ProjectIndex:
243
 
244
  def tokenize(text: str) -> list[str]:
245
  return [token.lower().strip("._-+") for token in TOKEN_RE.findall(text) if len(token.strip("._-+")) > 1]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
  from collections import Counter
4
  from dataclasses import dataclass
5
+ from datetime import datetime, timezone
6
+ from hashlib import sha256
7
  import json
8
  import math
9
  from pathlib import Path
 
153
  )
154
 
155
 
156
+ INDEX_ALGORITHM = "tfidf-sparse-v1"
157
+
158
+
159
  class ProjectIndex:
160
+ def __init__(
161
+ self,
162
+ projects: list[Project],
163
+ generated_at: str,
164
+ source: str,
165
+ index_payload: dict | None = None,
166
+ ) -> None:
167
  if not projects:
168
  raise ValueError("project index requires at least one project")
169
  self.projects = projects
170
  self.generated_at = generated_at
171
  self.source = source
172
+ if index_payload is None:
173
+ index_payload = build_index_payload(projects, generated_at, source)
174
+ validate_index_payload(index_payload, projects, generated_at, source)
175
+ self.index_generated_at = str(index_payload["generated_at"])
176
+ self.index_algorithm = str(index_payload["algorithm"])
177
+ self.snapshot_digest = str(index_payload["snapshot_digest"])
178
+ self._idf = {str(term): float(value) for term, value in index_payload["idf"].items()}
179
+ self._documents = [
180
+ Counter({str(term): float(value) for term, value in document["weights"].items()})
181
+ for document in index_payload["documents"]
182
+ ]
183
+ self._norms = [float(document["norm"]) for document in index_payload["documents"]]
184
 
185
  @classmethod
186
  def from_file(cls, path: Path) -> "ProjectIndex":
 
192
  source=str(data.get("source") or ""),
193
  )
194
 
195
+ @classmethod
196
+ def from_files(cls, project_path: Path, index_path: Path) -> "ProjectIndex":
197
+ data = json.loads(project_path.read_text(encoding="utf-8"))
198
+ index_payload = json.loads(index_path.read_text(encoding="utf-8"))
199
+ projects = [Project.from_dict(item) for item in data["projects"]]
200
+ return cls(
201
+ projects=projects,
202
+ generated_at=str(data.get("generated_at") or ""),
203
+ source=str(data.get("source") or ""),
204
+ index_payload=index_payload,
205
+ )
206
+
207
  def top_projects(self, limit: int = 8) -> list[Project]:
208
  return sorted(
209
  self.projects,
 
226
  for term, count in query_doc.items():
227
  if term not in doc:
228
  continue
229
+ raw += (count * self._idf.get(term, 1.0)) * doc[term]
230
  matched.append(term)
231
  if not matched:
232
  continue
 
271
 
272
  def tokenize(text: str) -> list[str]:
273
  return [token.lower().strip("._-+") for token in TOKEN_RE.findall(text) if len(token.strip("._-+")) > 1]
274
+
275
+
276
+ def build_index_payload(projects: list[Project], snapshot_generated_at: str, source: str) -> dict:
277
+ documents = [Counter(tokenize(project.searchable_text)) for project in projects]
278
+ df = Counter(term for document in documents for term in document)
279
+ idf = {
280
+ term: math.log((1 + len(documents)) / (1 + freq)) + 1.0
281
+ for term, freq in sorted(df.items())
282
+ }
283
+ indexed_documents = []
284
+ for project, document in zip(projects, documents, strict=True):
285
+ weights = {
286
+ term: round(count * idf.get(term, 1.0), 8)
287
+ for term, count in sorted(document.items())
288
+ }
289
+ norm = math.sqrt(sum(value * value for value in weights.values()))
290
+ indexed_documents.append(
291
+ {
292
+ "project_id": project.id,
293
+ "tokens": sum(document.values()),
294
+ "unique_terms": len(document),
295
+ "norm": round(norm, 8),
296
+ "weights": weights,
297
+ }
298
+ )
299
+ return {
300
+ "schema_version": 1,
301
+ "algorithm": INDEX_ALGORITHM,
302
+ "generated_at": datetime.now(timezone.utc).isoformat(timespec="seconds"),
303
+ "snapshot_generated_at": snapshot_generated_at,
304
+ "snapshot_source": source,
305
+ "snapshot_digest": project_snapshot_digest(projects, snapshot_generated_at, source),
306
+ "document_count": len(projects),
307
+ "vocabulary_size": len(idf),
308
+ "idf": {term: round(value, 8) for term, value in idf.items()},
309
+ "documents": indexed_documents,
310
+ }
311
+
312
+
313
+ def validate_index_payload(
314
+ payload: dict,
315
+ projects: list[Project],
316
+ snapshot_generated_at: str,
317
+ snapshot_source: str,
318
+ ) -> None:
319
+ if payload.get("schema_version") != 1:
320
+ raise ValueError("unsupported project index schema version")
321
+ if payload.get("algorithm") != INDEX_ALGORITHM:
322
+ raise ValueError(f"unsupported project index algorithm: {payload.get('algorithm')}")
323
+ if payload.get("snapshot_generated_at") != snapshot_generated_at:
324
+ raise ValueError("project index was built from a different snapshot timestamp")
325
+ if payload.get("snapshot_source") != snapshot_source:
326
+ raise ValueError("project index was built from a different snapshot source")
327
+ if payload.get("snapshot_digest") != project_snapshot_digest(
328
+ projects,
329
+ snapshot_generated_at,
330
+ snapshot_source,
331
+ ):
332
+ raise ValueError("project index digest does not match projects snapshot")
333
+ documents = payload.get("documents")
334
+ if not isinstance(documents, list) or len(documents) != len(projects):
335
+ raise ValueError("project index document count does not match projects snapshot")
336
+ project_ids = [project.id for project in projects]
337
+ indexed_ids = [document.get("project_id") for document in documents]
338
+ if indexed_ids != project_ids:
339
+ raise ValueError("project index project order does not match projects snapshot")
340
+
341
+
342
+ def project_snapshot_digest(projects: list[Project], generated_at: str, source: str) -> str:
343
+ payload = {
344
+ "generated_at": generated_at,
345
+ "source": source,
346
+ "projects": [project.to_public_dict() for project in projects],
347
+ }
348
+ encoded = json.dumps(payload, sort_keys=True, separators=(",", ":"), ensure_ascii=False).encode("utf-8")
349
+ return sha256(encoded).hexdigest()
scripts/build_project_index.py ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+ from __future__ import annotations
3
+
4
+ import argparse
5
+ import json
6
+ from pathlib import Path
7
+ import sys
8
+
9
+ ROOT = Path(__file__).resolve().parents[1]
10
+ sys.path.insert(0, str(ROOT))
11
+ from hackathon_advisor.data import Project, build_index_payload
12
+
13
+
14
+ def main() -> None:
15
+ parser = argparse.ArgumentParser(description="Build the offline project retrieval index.")
16
+ parser.add_argument("--projects", default="data/projects.json")
17
+ parser.add_argument("--out", default="data/project_index.json")
18
+ args = parser.parse_args()
19
+
20
+ project_path = Path(args.projects)
21
+ data = json.loads(project_path.read_text(encoding="utf-8"))
22
+ projects = [Project.from_dict(item) for item in data["projects"]]
23
+ payload = build_index_payload(
24
+ projects=projects,
25
+ snapshot_generated_at=str(data.get("generated_at") or ""),
26
+ source=str(data.get("source") or ""),
27
+ )
28
+ output = Path(args.out)
29
+ output.parent.mkdir(parents=True, exist_ok=True)
30
+ output.write_text(json.dumps(payload, indent=2, ensure_ascii=False) + "\n", encoding="utf-8")
31
+ print(
32
+ "wrote "
33
+ f"{payload['document_count']} docs, {payload['vocabulary_size']} terms "
34
+ f"to {output}"
35
+ )
36
+
37
+
38
+ if __name__ == "__main__":
39
+ main()
static/app.js CHANGED
@@ -11,6 +11,7 @@ const ideasEl = document.querySelector("#ideas");
11
  const scoreEl = document.querySelector("#score");
12
  const planEl = document.querySelector("#plan");
13
  const traceEl = document.querySelector("#trace");
 
14
  const verdictEl = document.querySelector("#verdict");
15
  const overallEl = document.querySelector("#overall");
16
  const exportButton = document.querySelector("#export-artifact");
@@ -75,6 +76,7 @@ async function runTurn(message) {
75
  async function bootstrap() {
76
  const response = await fetch("/api/bootstrap");
77
  const data = await response.json();
 
78
  renderProjects(data.top_projects || []);
79
  renderWhitespace(data.whitespace || []);
80
  renderIdeas([]);
@@ -83,6 +85,13 @@ async function bootstrap() {
83
  renderTrace([]);
84
  }
85
 
 
 
 
 
 
 
 
86
  function handleEvent(event) {
87
  if (event.type === "start") {
88
  if (event.corrections?.length) {
@@ -341,3 +350,8 @@ function escapeHtml(value) {
341
  .replaceAll('"', "&quot;")
342
  .replaceAll("'", "&#039;");
343
  }
 
 
 
 
 
 
11
  const scoreEl = document.querySelector("#score");
12
  const planEl = document.querySelector("#plan");
13
  const traceEl = document.querySelector("#trace");
14
+ const provenanceEl = document.querySelector("#provenance");
15
  const verdictEl = document.querySelector("#verdict");
16
  const overallEl = document.querySelector("#overall");
17
  const exportButton = document.querySelector("#export-artifact");
 
76
  async function bootstrap() {
77
  const response = await fetch("/api/bootstrap");
78
  const data = await response.json();
79
+ renderProvenance(data);
80
  renderProjects(data.top_projects || []);
81
  renderWhitespace(data.whitespace || []);
82
  renderIdeas([]);
 
85
  renderTrace([]);
86
  }
87
 
88
+ function renderProvenance(data) {
89
+ const snapshot = shortDate(data.snapshot_generated_at);
90
+ const index = shortDate(data.index_generated_at);
91
+ const digest = String(data.snapshot_digest || "").slice(0, 10);
92
+ provenanceEl.textContent = `${data.index_algorithm || "index"} · snapshot ${snapshot} · index ${index} · ${digest}`;
93
+ }
94
+
95
  function handleEvent(event) {
96
  if (event.type === "start") {
97
  if (event.corrections?.length) {
 
350
  .replaceAll('"', "&quot;")
351
  .replaceAll("'", "&#039;");
352
  }
353
+
354
+ function shortDate(value) {
355
+ if (!value) return "unknown";
356
+ return String(value).replace("T", " ").replace(/\+00:00$/, "Z").slice(0, 16);
357
+ }
static/index.html CHANGED
@@ -42,6 +42,7 @@
42
  <span id="verdict">UNWRITTEN</span>
43
  <strong id="overall">0.0</strong>
44
  </div>
 
45
  <div id="score" class="score-grid" aria-label="Seal quadrants"></div>
46
  <div class="panels">
47
  <article>
 
42
  <span id="verdict">UNWRITTEN</span>
43
  <strong id="overall">0.0</strong>
44
  </div>
45
+ <div id="provenance" class="provenance"></div>
46
  <div id="score" class="score-grid" aria-label="Seal quadrants"></div>
47
  <div class="panels">
48
  <article>
static/styles.css CHANGED
@@ -228,6 +228,15 @@ button:disabled {
228
  line-height: 1;
229
  }
230
 
 
 
 
 
 
 
 
 
 
231
  .score-grid {
232
  display: grid;
233
  gap: 7px;
 
228
  line-height: 1;
229
  }
230
 
231
+ .provenance {
232
+ margin: -10px 0 18px;
233
+ color: var(--muted-ink);
234
+ text-align: center;
235
+ font-size: 0.72rem;
236
+ font-weight: 800;
237
+ line-height: 1.3;
238
+ }
239
+
240
  .score-grid {
241
  display: grid;
242
  gap: 7px;
tests/test_agent.py CHANGED
@@ -5,7 +5,7 @@ from hackathon_advisor.data import ProjectIndex
5
 
6
 
7
  def test_agent_scores_and_persists_idea() -> None:
8
- index = ProjectIndex.from_file(Path("data/projects.json"))
9
  engine = AdvisorEngine(index)
10
 
11
  result = engine.turn("A local-first archive cartographer for family photos", {})
@@ -19,7 +19,7 @@ def test_agent_scores_and_persists_idea() -> None:
19
 
20
 
21
  def test_agent_finds_whitespace() -> None:
22
- index = ProjectIndex.from_file(Path("data/projects.json"))
23
  engine = AdvisorEngine(index)
24
 
25
  result = engine.turn("write bolder and find whitespace", {})
@@ -30,7 +30,7 @@ def test_agent_finds_whitespace() -> None:
30
 
31
 
32
  def test_agent_preserves_canonical_jargon_case() -> None:
33
- index = ProjectIndex.from_file(Path("data/projects.json"))
34
  engine = AdvisorEngine(index)
35
 
36
  result = engine.turn("use neutron and mini cpm on zero gpu", {})
@@ -40,7 +40,7 @@ def test_agent_preserves_canonical_jargon_case() -> None:
40
 
41
 
42
  def test_plan_command_uses_current_idea() -> None:
43
- index = ProjectIndex.from_file(Path("data/projects.json"))
44
  engine = AdvisorEngine(index)
45
 
46
  first = engine.turn("A local-first archive cartographer for family photos", {})
 
5
 
6
 
7
  def test_agent_scores_and_persists_idea() -> None:
8
+ index = ProjectIndex.from_files(Path("data/projects.json"), Path("data/project_index.json"))
9
  engine = AdvisorEngine(index)
10
 
11
  result = engine.turn("A local-first archive cartographer for family photos", {})
 
19
 
20
 
21
  def test_agent_finds_whitespace() -> None:
22
+ index = ProjectIndex.from_files(Path("data/projects.json"), Path("data/project_index.json"))
23
  engine = AdvisorEngine(index)
24
 
25
  result = engine.turn("write bolder and find whitespace", {})
 
30
 
31
 
32
  def test_agent_preserves_canonical_jargon_case() -> None:
33
+ index = ProjectIndex.from_files(Path("data/projects.json"), Path("data/project_index.json"))
34
  engine = AdvisorEngine(index)
35
 
36
  result = engine.turn("use neutron and mini cpm on zero gpu", {})
 
40
 
41
 
42
  def test_plan_command_uses_current_idea() -> None:
43
+ index = ProjectIndex.from_files(Path("data/projects.json"), Path("data/project_index.json"))
44
  engine = AdvisorEngine(index)
45
 
46
  first = engine.turn("A local-first archive cartographer for family photos", {})
tests/test_app.py ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from app import bootstrap, health, index
2
+
3
+
4
+ def test_health_exposes_index_metadata() -> None:
5
+ payload = health()
6
+
7
+ assert payload["ok"] is True
8
+ assert payload["projects"] == len(index.projects)
9
+ assert payload["index_algorithm"] == "tfidf-sparse-v1"
10
+ assert len(payload["snapshot_digest"]) == 64
11
+
12
+
13
+ def test_bootstrap_exposes_index_metadata() -> None:
14
+ payload = bootstrap()
15
+
16
+ assert payload["index_algorithm"] == "tfidf-sparse-v1"
17
+ assert payload["index_generated_at"]
18
+ assert payload["snapshot_digest"]
19
+ assert payload["top_projects"]
tests/test_data.py CHANGED
@@ -1,21 +1,37 @@
1
  from pathlib import Path
 
2
 
3
  from hackathon_advisor.data import ProjectIndex
4
 
5
 
6
  def test_project_index_searches_snapshot() -> None:
7
- index = ProjectIndex.from_file(Path("data/projects.json"))
8
 
9
  hits = index.search("lullaby children audio", limit=3)
10
 
11
  assert hits
12
  assert hits[0].project.id.startswith("build-small-hackathon/")
 
13
 
14
 
15
  def test_project_index_whitespace() -> None:
16
- index = ProjectIndex.from_file(Path("data/projects.json"))
17
 
18
  items = index.find_whitespace(limit=3)
19
 
20
  assert len(items) == 3
21
  assert all(item.label for item in items)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  from pathlib import Path
2
+ import json
3
 
4
  from hackathon_advisor.data import ProjectIndex
5
 
6
 
7
  def test_project_index_searches_snapshot() -> None:
8
+ index = ProjectIndex.from_files(Path("data/projects.json"), Path("data/project_index.json"))
9
 
10
  hits = index.search("lullaby children audio", limit=3)
11
 
12
  assert hits
13
  assert hits[0].project.id.startswith("build-small-hackathon/")
14
+ assert index.index_algorithm == "tfidf-sparse-v1"
15
 
16
 
17
  def test_project_index_whitespace() -> None:
18
+ index = ProjectIndex.from_files(Path("data/projects.json"), Path("data/project_index.json"))
19
 
20
  items = index.find_whitespace(limit=3)
21
 
22
  assert len(items) == 3
23
  assert all(item.label for item in items)
24
+
25
+
26
+ def test_project_index_rejects_mismatched_snapshot(tmp_path: Path) -> None:
27
+ payload = json.loads(Path("data/project_index.json").read_text(encoding="utf-8"))
28
+ payload["snapshot_generated_at"] = "2000-01-01T00:00:00+00:00"
29
+ bad_index = tmp_path / "project_index.json"
30
+ bad_index.write_text(json.dumps(payload), encoding="utf-8")
31
+
32
+ try:
33
+ ProjectIndex.from_files(Path("data/projects.json"), bad_index)
34
+ except ValueError as error:
35
+ assert "different snapshot timestamp" in str(error)
36
+ else:
37
+ raise AssertionError("mismatched index should be rejected")