diff --git a/public/images/EXPO/GameDev logos/DELUSIONAL_logo.svg b/public/images/EXPO/GameDev logos/DELUSIONAL_logo.svg
new file mode 100644
index 0000000..5a010cb
--- /dev/null
+++ b/public/images/EXPO/GameDev logos/DELUSIONAL_logo.svg
@@ -0,0 +1,50 @@
+
+
\ No newline at end of file
diff --git a/public/images/EXPO/GameDev logos/broken_alliance.png b/public/images/EXPO/GameDev logos/broken_alliance.png
new file mode 100644
index 0000000..2153b2e
Binary files /dev/null and b/public/images/EXPO/GameDev logos/broken_alliance.png differ
diff --git a/public/images/EXPO/GameDev logos/craftcat_sim.png b/public/images/EXPO/GameDev logos/craftcat_sim.png
new file mode 100644
index 0000000..a34df33
Binary files /dev/null and b/public/images/EXPO/GameDev logos/craftcat_sim.png differ
diff --git a/public/images/EXPO/GameDev logos/death_and_taxes.png b/public/images/EXPO/GameDev logos/death_and_taxes.png
new file mode 100644
index 0000000..5fa72ee
Binary files /dev/null and b/public/images/EXPO/GameDev logos/death_and_taxes.png differ
diff --git a/public/images/EXPO/GameDev logos/deep_pixel_melancholy.svg b/public/images/EXPO/GameDev logos/deep_pixel_melancholy.svg
new file mode 100644
index 0000000..54a1cb3
--- /dev/null
+++ b/public/images/EXPO/GameDev logos/deep_pixel_melancholy.svg
@@ -0,0 +1,103 @@
+
+
+
+
diff --git a/public/images/EXPO/GameDev logos/Realm_Hearts.png b/public/images/EXPO/GameDev logos/realm_hearts.png
similarity index 100%
rename from public/images/EXPO/GameDev logos/Realm_Hearts.png
rename to public/images/EXPO/GameDev logos/realm_hearts.png
diff --git a/public/images/EXPO/ylikoolid/a_bottles_journey.png b/public/images/EXPO/ylikoolid/a_bottles_journey.png
new file mode 100644
index 0000000..e2c2559
Binary files /dev/null and b/public/images/EXPO/ylikoolid/a_bottles_journey.png differ
diff --git a/public/images/EXPO/ylikoolid/blastronaut.png b/public/images/EXPO/ylikoolid/blastronaut.png
new file mode 100644
index 0000000..6ce4f95
Binary files /dev/null and b/public/images/EXPO/ylikoolid/blastronaut.png differ
diff --git a/public/images/EXPO/ylikoolid/deltavr.png b/public/images/EXPO/ylikoolid/deltavr.png
new file mode 100644
index 0000000..2ab9d1a
Binary files /dev/null and b/public/images/EXPO/ylikoolid/deltavr.png differ
diff --git a/public/images/EXPO/ylikoolid/dwarf_escape.png b/public/images/EXPO/ylikoolid/dwarf_escape.png
new file mode 100644
index 0000000..0c60f4e
Binary files /dev/null and b/public/images/EXPO/ylikoolid/dwarf_escape.png differ
diff --git a/public/images/EXPO/ylikoolid/magic_mineral.png b/public/images/EXPO/ylikoolid/magic_mineral.png
new file mode 100644
index 0000000..0b1a5da
Binary files /dev/null and b/public/images/EXPO/ylikoolid/magic_mineral.png differ
diff --git a/public/images/EXPO/ylikoolid/oh_crap.png b/public/images/EXPO/ylikoolid/oh_crap.png
new file mode 100644
index 0000000..9b07e9b
Binary files /dev/null and b/public/images/EXPO/ylikoolid/oh_crap.png differ
diff --git a/public/images/EXPO/ylikoolid/packet_tracers.png b/public/images/EXPO/ylikoolid/packet_tracers.png
new file mode 100644
index 0000000..4395be2
Binary files /dev/null and b/public/images/EXPO/ylikoolid/packet_tracers.png differ
diff --git a/public/images/EXPO/ylikoolid/psyrreal.png b/public/images/EXPO/ylikoolid/psyrreal.png
new file mode 100644
index 0000000..a091743
Binary files /dev/null and b/public/images/EXPO/ylikoolid/psyrreal.png differ
diff --git a/public/images/EXPO/ylikoolid/the_return.png b/public/images/EXPO/ylikoolid/the_return.png
new file mode 100644
index 0000000..b5b0eab
Binary files /dev/null and b/public/images/EXPO/ylikoolid/the_return.png differ
diff --git a/public/images/EXPO/ylikoolid/tiksu-toksu.jpg b/public/images/EXPO/ylikoolid/tiksu-toksu.jpg
new file mode 100644
index 0000000..8ffc61c
Binary files /dev/null and b/public/images/EXPO/ylikoolid/tiksu-toksu.jpg differ
diff --git a/public/images/EXPO/ylikoolid/type_n_magic.png b/public/images/EXPO/ylikoolid/type_n_magic.png
new file mode 100644
index 0000000..e57eaf4
Binary files /dev/null and b/public/images/EXPO/ylikoolid/type_n_magic.png differ
diff --git a/public/images/EXPO/ylikoolid/void_of_hermes.png b/public/images/EXPO/ylikoolid/void_of_hermes.png
new file mode 100644
index 0000000..26ce709
Binary files /dev/null and b/public/images/EXPO/ylikoolid/void_of_hermes.png differ
diff --git a/public/images/EXPO/ylikoolid/wildings.png b/public/images/EXPO/ylikoolid/wildings.png
new file mode 100644
index 0000000..e4b7d05
Binary files /dev/null and b/public/images/EXPO/ylikoolid/wildings.png differ
diff --git a/src/app/[locale]/messiala/page.tsx b/src/app/[locale]/messiala/page.tsx
index 82bd86d..7fe95e5 100644
--- a/src/app/[locale]/messiala/page.tsx
+++ b/src/app/[locale]/messiala/page.tsx
@@ -7,6 +7,7 @@ import { useEffect, useRef, useState, useMemo } from "react";
import { EyeClosed, Eye } from "lucide-react";
import SectionDivider from "@/components/SectionDivider";
import { useTranslations } from "next-intl";
+import gamedevData from "@/data/gamedev.json";
// Define interface for the ref with toggle function
interface MountRefCurrent extends HTMLDivElement {
@@ -1098,206 +1099,79 @@ export default function Expo() {
-
-

+ {/* ÜLIKOOLID Section */}
+
+
+ Ülikoolid
+
+
+ {/* First 12 games in 3x4 grid */}
+
+ {gamedevData.universities?.slice(0, 12).map((university) => (
+
+
+

+
+
+ {university.name}
+
+
+ {university.university}
+
-
Planet Hoarders
-
+ ))}
+
- {/* Row 5 - 3 items (last row) */}
-
-
-

-
-
Realm Hearts
-
-
-
-

-
-
Season of Solitude
-
-
-
-

-
-
War-thorn
+ {/* Remaining games in new grid */}
+ {gamedevData.universities && gamedevData.universities.length > 12 && (
+
+ {gamedevData.universities.slice(12).map((university) => (
+
+
+

+
+
+ {university.name}
+
+
+ {university.university}
+
+
+ ))}
-
+ )}
diff --git a/src/data/gamedev.json b/src/data/gamedev.json
new file mode 100644
index 0000000..f25075f
--- /dev/null
+++ b/src/data/gamedev.json
@@ -0,0 +1,230 @@
+{
+ "games": [
+ {
+ "id": "broken-alliance",
+ "name": "Broken Alliance",
+ "logo": "/images/EXPO/GameDev logos/broken_alliance.png",
+ "developer": "Placeholder Gameworks",
+ "description": ""
+ },
+ {
+ "id": "buckshot-tournament",
+ "name": "Buckshot Tournament",
+ "logo": "/images/miniturniirid/buckshot_tournament.png",
+ "developer": "Mike Klubnika",
+ "description": ""
+ },
+ {
+ "id": "eleball",
+ "name": "Eleball",
+ "logo": "/images/EXPO/GameDev logos/Eleball.png",
+ "developer": "Pulsar Twin",
+ "description": ""
+ },
+ {
+ "id": "craftcraft-simulator",
+ "name": "CraftCraft Simulator",
+ "logo": "/images/EXPO/GameDev logos/craftcat_sim.png",
+ "developer": "Placeholder Gameworks",
+ "description": ""
+ },
+ {
+ "id": "cyber-dog-rescue",
+ "name": "Cyber Dog Rescue",
+ "logo": "/images/EXPO/GameDev logos/Cyber_Doc_Rogue.png",
+ "developer": "HRA Interactive",
+ "description": ""
+ },
+ {
+ "id": "death-and-taxes",
+ "name": "Death and Taxes",
+ "logo": "/images/EXPO/GameDev logos/death_and_taxes.png",
+ "developer": "Placeholder Gameworks",
+ "description": ""
+ },
+ {
+ "id": "deep-pixel-melancholy",
+ "name": "Deep Pixel Melancholy",
+ "logo": "/images/EXPO/GameDev logos/deep_pixel_melancholy.svg",
+ "developer": "ok/no",
+ "description": ""
+ },
+ {
+ "id": "delusional",
+ "name": "Delusional",
+ "logo": "/images/EXPO/GameDev logos/DELUSIONAL_logo.svg",
+ "developer": "Cyber Doc Rogue",
+ "description": ""
+ },
+ {
+ "id": "hardwired",
+ "name": "Hardwired",
+ "logo": "/images/EXPO/GameDev logos/Hardwired.png",
+ "developer": "Hardwired Studios",
+ "description": ""
+ },
+ {
+ "id": "hexwave",
+ "name": "HexWave",
+ "logo": "/images/EXPO/GameDev logos/Hexwave.png",
+ "developer": "HexWave Studios",
+ "description": ""
+ },
+ {
+ "id": "immortal",
+ "name": "IMMORTAL: And the death that follows",
+ "logo": "/images/EXPO/GameDev logos/Immortal.png",
+ "developer": "IMMORTAL Studios",
+ "description": ""
+ },
+ {
+ "id": "kalawindow",
+ "name": "Kalawindow",
+ "logo": "/images/EXPO/GameDev logos/Kalawindow.png",
+ "developer": "Kalawindow Studios",
+ "description": ""
+ },
+ {
+ "id": "kortel-1996",
+ "name": "Kortel 1996",
+ "logo": "/images/EXPO/GameDev logos/Korter1996.png",
+ "developer": "Kortel Studios",
+ "description": ""
+ },
+ {
+ "id": "midnight-souveneirs",
+ "name": "Midnight Souveneirs",
+ "logo": "/images/EXPO/GameDev logos/Midnight_Souveneirs.png",
+ "developer": "Midnight Studios",
+ "description": ""
+ },
+ {
+ "id": "nullis",
+ "name": "Nullis",
+ "logo": "/images/EXPO/GameDev logos/Nullis.png",
+ "developer": "Nullis Studios",
+ "description": ""
+ },
+ {
+ "id": "planet-hoarders",
+ "name": "Planet Hoarders",
+ "logo": "/images/EXPO/GameDev logos/Planet_hoarders.png",
+ "developer": "Planet Hoarders Studios",
+ "description": ""
+ },
+ {
+ "id": "realm-hearts",
+ "name": "Realm Hearts",
+ "logo": "/images/EXPO/GameDev logos/realm_hearts.png",
+ "developer": "Dreamaster",
+ "description": ""
+ },
+ {
+ "id": "season-of-solitude",
+ "name": "Season of Solitude",
+ "logo": "/images/EXPO/GameDev logos/Seasons_of_Solitude.png",
+ "developer": "Solitude Studios",
+ "description": ""
+ },
+ {
+ "id": "war-thorn",
+ "name": "War-thorn",
+ "logo": "/images/EXPO/GameDev logos/War_torn.png",
+ "developer": "War-thorn Studios",
+ "description": ""
+ }
+ ],
+ "universities": [
+ {
+ "id": "deltavr",
+ "name": "DeltaVR",
+ "logo": "/images/EXPO/ylikoolid/deltavr.png",
+ "university": "Tallinna Tehnikaülikool",
+ "description": ""
+ },
+ {
+ "id": "a-bottles-journey",
+ "name": "A Bottle's Journey",
+ "logo": "/images/EXPO/ylikoolid/a_bottles_journey.png",
+ "university": "Tallinna Tehnikaülikool",
+ "description": ""
+ },
+ {
+ "id": "magic-mineral",
+ "name": "Magic Mineral",
+ "logo": "/images/EXPO/ylikoolid/magic_mineral.png",
+ "university": "Tallinna Tehnikaülikool",
+ "description": ""
+ },
+ {
+ "id": "tiksu-toksu",
+ "name": "Tiksu-Toksu",
+ "logo": "/images/EXPO/ylikoolid/tiksu-toksu.jpg",
+ "university": "Tallinna Tehnikaülikool",
+ "description": ""
+ },
+ {
+ "id": "the-return",
+ "name": "The Return",
+ "logo": "/images/EXPO/ylikoolid/the_return.png",
+ "university": "Tartu Ülikool",
+ "description": ""
+ },
+ {
+ "id": "blastronaut",
+ "name": "Blastronaut",
+ "logo": "/images/EXPO/ylikoolid/blastronaut.png",
+ "university": "Tartu Ülikool",
+ "description": ""
+ },
+ {
+ "id": "oh-crap",
+ "name": "Oh Crap!",
+ "logo": "/images/EXPO/ylikoolid/oh_crap.png",
+ "university": "Tartu Ülikool",
+ "description": ""
+ },
+ {
+ "id": "psyrreal",
+ "name": "Psyrreal",
+ "logo": "/images/EXPO/ylikoolid/psyrreal.png",
+ "university": "Tartu Ülikool",
+ "description": ""
+ },
+ {
+ "id": "void-of-hermes",
+ "name": "Void of Hermes",
+ "logo": "/images/EXPO/ylikoolid/void_of_hermes.png",
+ "university": "Tallinna Ülikool",
+ "description": ""
+ },
+ {
+ "id": "type-n-magic",
+ "name": "Type 'n Magic",
+ "logo": "/images/EXPO/ylikoolid/type_n_magic.png",
+ "university": "Tallinna Ülikool",
+ "description": ""
+ },
+ {
+ "id": "packet-tracers",
+ "name": "Packet Tracers",
+ "logo": "/images/EXPO/ylikoolid/packet_tracers.png",
+ "university": "Tallinna Ülikool",
+ "description": ""
+ },
+ {
+ "id": "dwarf-escape",
+ "name": "Dwarf Escape",
+ "logo": "/images/EXPO/ylikoolid/dwarf_escape.png",
+ "university": "Tallinna Ülikool",
+ "description": ""
+ },
+ {
+ "id": "wildings",
+ "name": "Wildings",
+ "logo": "/images/EXPO/ylikoolid/wildings.png",
+ "university": "Eesti Ettevõtluskõrgkool",
+ "description": ""
+ }
+ ]
+}