diff --git a/.github/workflows/scheduler_daily.yml b/.github/workflows/scheduler_daily.yml index f06fa899..02d26e9c 100644 --- a/.github/workflows/scheduler_daily.yml +++ b/.github/workflows/scheduler_daily.yml @@ -89,8 +89,7 @@ jobs: - name: 🔧 Build & Test run: | - # Convert human-readable Geojson file into computer-friendly one - bundle exec rake compact_geojson + # Jekyll plugin automatically runs upsert_dojos_geojson, compact_geojson, and cache_dojo_logos JEKYLL_ENV=production bundle exec jekyll build JEKYLL_ENV=production bundle exec jekyll doctor SKIP_BUILD=true bundle exec rake test diff --git a/_data/dojo2dojo.json b/_data/dojo2dojo.json index 88eead48..c5b656e7 100644 --- a/_data/dojo2dojo.json +++ b/_data/dojo2dojo.json @@ -111,6 +111,14 @@ "urlSlug": "jp/murayama-yamagata/murayama", "status": "RUNNING_SESSIONS" }, + { + "global_club_id": "1178be6f-f652-4dd1-bf95-3a8b9300b7a3", + "name_japan": "SAGA@駅前中央", + "name_earth": "CoderDojo SAGA@駅前中央", + "countryCode": "JP", + "urlSlug": null, + "status": "RUNNING_SESSIONS" + }, { "global_club_id": "1237536f-44cf-44a7-8fb6-464fb12f3865", "name_japan": "神楽坂", @@ -199,6 +207,14 @@ "urlSlug": "jp/qian1-ye4-xian4/kamagaya-chiba", "status": "RUNNING_SESSIONS" }, + { + "global_club_id": "1a5ece9e-b149-4cd1-b05f-9a3b8b39bb7a", + "name_japan": "八女", + "name_earth": "CoderDojo八女", + "countryCode": "JP", + "urlSlug": null, + "status": "RUNNING_SESSIONS" + }, { "global_club_id": "1c8ab0f9-e1ab-4874-b364-d620a84ea0dc", "name_japan": "立川", @@ -375,6 +391,14 @@ "urlSlug": "jp/maebashi-gunma-prefecture/maebashi-gunma", "status": "RUNNING_SESSIONS" }, + { + "global_club_id": "3a2f68c8-b54a-412b-bf28-915df1563b85", + "name_japan": "鳥羽@竹田住設", + "name_earth": "鳥羽 @ 竹田住設", + "countryCode": "JP", + "urlSlug": null, + "status": "RUNNING_SESSIONS" + }, { "global_club_id": "3d037ab0-1ba5-4c94-97ef-2898a37bdb68", "name_japan": "多摩センター", @@ -471,6 +495,14 @@ "urlSlug": "jp/ri4-ben3-dong1-jing1-du1-li3-dao3-qu1/ikebukuro-tokyo-unique-inet", "status": "RUNNING_SESSIONS" }, + { + "global_club_id": "4e31fc13-205c-4738-9b62-2722d890f6ed", + "name_japan": "砧", + "name_earth": "CoderDojo砧", + "countryCode": "JP", + "urlSlug": null, + "status": "RUNNING_SESSIONS" + }, { "global_club_id": "4f1bc4c3-4bde-47f7-9d84-b8c0038f8c06", "name_japan": "滝沢", @@ -695,6 +727,14 @@ "urlSlug": "jp/japan-aichi/dao4-ze2-zheng4-ming2-si4", "status": "RUNNING_SESSIONS" }, + { + "global_club_id": "7b441779-c5ab-45af-8823-1a87e95e5d6a", + "name_japan": "新大阪", + "name_earth": "CoderDojo新大阪", + "countryCode": "JP", + "urlSlug": null, + "status": "RUNNING_SESSIONS" + }, { "global_club_id": "7c0ca939-b98e-4fa5-aa6c-dcdf2cffd280", "name_japan": "浦和@Urawa Minecraft Club", @@ -767,6 +807,14 @@ "urlSlug": "jp/japan/inagawa-hyogo", "status": "RUNNING_SESSIONS" }, + { + "global_club_id": "84f71084-cbb9-4712-b0fc-1e15cd47f90f", + "name_japan": "赤坂国際", + "name_earth": "Coders International Tokyo", + "countryCode": "JP", + "urlSlug": null, + "status": "RUNNING_SESSIONS" + }, { "global_club_id": "85796abb-f777-4edd-886d-af0345e8fde8", "name_japan": "安城", @@ -1151,6 +1199,14 @@ "urlSlug": "jp/nihonmatsu-fukushima/sent", "status": "RUNNING_SESSIONS" }, + { + "global_club_id": "d600a123-6181-418a-80ee-20a25d9af6e1", + "name_japan": "南会津", + "name_earth": "CoderDojo南会津", + "countryCode": "JP", + "urlSlug": null, + "status": "RUNNING_SESSIONS" + }, { "global_club_id": "d6a7d7e6-6043-4efd-bba4-db5abf0d6372", "name_japan": "嘉手納", diff --git a/_plugins/build_hooks.rb b/_plugins/build_hooks.rb new file mode 100644 index 00000000..cd62fdf7 --- /dev/null +++ b/_plugins/build_hooks.rb @@ -0,0 +1,18 @@ +# Pre-build tasks that run before Jekyll builds the site +Jekyll::Hooks.register :site, :after_init do |site| + puts "🔄 Running pre-build tasks..." + + # Update GeoJSON data + puts " → Updating dojos.geojson..." + system('bundle exec rake upsert_dojos_geojson') + + # Compact GeoJSON for production + puts " → Creating dojos.min.geojson..." + system('bundle exec rake compact_geojson') + + # Cache dojo logos + puts " → Caching dojo logos..." + system('bundle exec rake cache_dojo_logos') + + puts "✅ Pre-build tasks completed" +end diff --git a/dojos.geojson b/dojos.geojson index 6ff0cd59..466e7fac 100644 --- a/dojos.geojson +++ b/dojos.geojson @@ -1246,6 +1246,21 @@ "description": " 村山
村山
村山市で毎月開催
Webサイトを見る" } }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + 130.2969361, + 33.2625159 + ] + }, + "properties": { + "marker-size": "small", + "marker-symbol": "coderdojo", + "description": " SAGA@駅前中央
SAGA@駅前中央
佐賀市で毎月土曜開催
→ 次回: 2月7日
Webサイトを見る" + } + }, { "type": "Feature", "geometry": { @@ -2041,6 +2056,21 @@ "description": "CoderDojo logo
Douala @ Mbcode
連絡先を見る" } }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + 130.58926123030565, + 33.20941641677492 + ] + }, + "properties": { + "marker-size": "small", + "marker-symbol": "coderdojo", + "description": " 八女
八女
八女市で毎月開催
→ 次回: 1月24日
Webサイトを見る" + } + }, { "type": "Feature", "geometry": { @@ -4606,6 +4636,21 @@ "description": "CoderDojo logo
Goes @ Bibliotheek Oosterschelde
連絡先を見る" } }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + 136.84652696727548, + 34.467252707825104 + ] + }, + "properties": { + "marker-size": "small", + "marker-symbol": "coderdojo", + "description": " 鳥羽@竹田住設
鳥羽@竹田住設
鳥羽市で隔週開催
Webサイトを見る" + } + }, { "type": "Feature", "geometry": { @@ -6001,6 +6046,21 @@ "description": "CoderDojo logo
Valbelluna
連絡先を見る" } }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + 139.6005872, + 35.6411816 + ] + }, + "properties": { + "marker-size": "small", + "marker-symbol": "coderdojo", + "description": " 砧

世田谷区で毎月開催
Webサイトを見る" + } + }, { "type": "Feature", "geometry": { @@ -9496,6 +9556,21 @@ "description": "CoderDojo logo
Hazerswoude-Rijndijk
連絡先を見る" } }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + 135.5036897, + 34.7320639 + ] + }, + "properties": { + "marker-size": "small", + "marker-symbol": "coderdojo", + "description": " 新大阪
新大阪
大阪市東淀川区で
毎月開催
→ 次回: 1月17日
Webサイトを見る" + } + }, { "type": "Feature", "geometry": { @@ -10276,6 +10351,21 @@ "description": "CoderDojo logo
CoderDojo@Najaf
連絡先を見る" } }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + 139.73212228447724, + 35.668044491047944 + ] + }, + "properties": { + "marker-size": "small", + "marker-symbol": "coderdojo", + "description": " 赤坂国際
赤坂国際
港区赤坂で隔週開催
Webサイトを見る" + } + }, { "type": "Feature", "geometry": { @@ -16846,6 +16936,21 @@ "description": "CoderDojo logo
Deventer
連絡先を見る" } }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + 139.7737687, + 37.2004629 + ] + }, + "properties": { + "marker-size": "small", + "marker-symbol": "coderdojo", + "description": " 南会津
南会津
南会津で不定期開催
→ 次回: 1月31日
Webサイトを見る" + } + }, { "type": "Feature", "geometry": {