diff --git a/superpage/.prettierrc b/superpage/.prettierrc
index e5e24fd..3698dd3 100644
--- a/superpage/.prettierrc
+++ b/superpage/.prettierrc
@@ -1,5 +1,4 @@
{
- "tabWidth": 2,
"useTabs": false,
"semi": false,
"singleQuote": true,
diff --git a/superpage/astro.config.mjs b/superpage/astro.config.mjs
index f765ea7..b6620e2 100644
--- a/superpage/astro.config.mjs
+++ b/superpage/astro.config.mjs
@@ -5,6 +5,7 @@ import react from '@astrojs/react'
import tailwindcss from '@tailwindcss/vite'
import partytown from '@astrojs/partytown'
import sitemap from '@astrojs/sitemap'
+import alpinejs from '@astrojs/alpinejs'
import icon from 'astro-icon'
// https://astro.build/config
@@ -14,6 +15,7 @@ export default defineConfig({
react(),
sitemap(),
icon(),
+ alpinejs(),
partytown({
config: {
forward: ['dataLayer.push', 'fbq'],
diff --git a/superpage/package-lock.json b/superpage/package-lock.json
index 78ed8f8..711e48b 100644
--- a/superpage/package-lock.json
+++ b/superpage/package-lock.json
@@ -8,6 +8,7 @@
"name": "eduseg",
"version": "0.0.1",
"dependencies": {
+ "@astrojs/alpinejs": "^0.4.6",
"@astrojs/partytown": "^2.1.4",
"@astrojs/react": "^4.2.1",
"@astrojs/sitemap": "^3.3.0",
@@ -16,8 +17,10 @@
"@heroicons/react": "^2.2.0",
"@tailwindcss/vite": "^4.0.13",
"@tanstack/react-query": "^5.68.0",
+ "@types/alpinejs": "^3.13.11",
"@types/react": "^19.0.10",
"@types/react-dom": "^19.0.4",
+ "alpinejs": "^3.14.9",
"astro": "^5.7.2",
"astro-icon": "^1.1.5",
"axios": "^1.8.3",
@@ -72,6 +75,16 @@
"url": "https://github.com/sponsors/antfu"
}
},
+ "node_modules/@astrojs/alpinejs": {
+ "version": "0.4.6",
+ "resolved": "https://registry.npmjs.org/@astrojs/alpinejs/-/alpinejs-0.4.6.tgz",
+ "integrity": "sha512-uogG08bVN8ER8ANVAmfipUw3tZMk+SrZICtH5NMHmsDnSIuLSrXNa9+rCbAXHe/pbTfNUvlp5gE9jSxbd0KYFQ==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/alpinejs": "^3.0.0",
+ "alpinejs": "^3.0.0"
+ }
+ },
"node_modules/@astrojs/compiler": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/@astrojs/compiler/-/compiler-2.11.0.tgz",
@@ -2233,6 +2246,12 @@
"node": ">=10.13.0"
}
},
+ "node_modules/@types/alpinejs": {
+ "version": "3.13.11",
+ "resolved": "https://registry.npmjs.org/@types/alpinejs/-/alpinejs-3.13.11.tgz",
+ "integrity": "sha512-3KhGkDixCPiLdL3Z/ok1GxHwLxEWqQOKJccgaQL01wc0EVM2tCTaqlC3NIedmxAXkVzt/V6VTM8qPgnOHKJ1MA==",
+ "license": "MIT"
+ },
"node_modules/@types/babel__core": {
"version": "7.20.5",
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
@@ -2409,6 +2428,21 @@
"vite": "^4.2.0 || ^5.0.0 || ^6.0.0"
}
},
+ "node_modules/@vue/reactivity": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz",
+ "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==",
+ "license": "MIT",
+ "dependencies": {
+ "@vue/shared": "3.1.5"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz",
+ "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==",
+ "license": "MIT"
+ },
"node_modules/acorn": {
"version": "8.14.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz",
@@ -2421,6 +2455,15 @@
"node": ">=0.4.0"
}
},
+ "node_modules/alpinejs": {
+ "version": "3.14.9",
+ "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.14.9.tgz",
+ "integrity": "sha512-gqSOhTEyryU9FhviNqiHBHzgjkvtukq9tevew29fTj+ofZtfsYriw4zPirHHOAy9bw8QoL3WGhyk7QqCh5AYlw==",
+ "license": "MIT",
+ "dependencies": {
+ "@vue/reactivity": "~3.1.1"
+ }
+ },
"node_modules/ansi-align": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz",
diff --git a/superpage/package.json b/superpage/package.json
index dd63837..c6e8806 100644
--- a/superpage/package.json
+++ b/superpage/package.json
@@ -9,6 +9,7 @@
"astro": "astro"
},
"dependencies": {
+ "@astrojs/alpinejs": "^0.4.6",
"@astrojs/partytown": "^2.1.4",
"@astrojs/react": "^4.2.1",
"@astrojs/sitemap": "^3.3.0",
@@ -17,8 +18,10 @@
"@heroicons/react": "^2.2.0",
"@tailwindcss/vite": "^4.0.13",
"@tanstack/react-query": "^5.68.0",
+ "@types/alpinejs": "^3.13.11",
"@types/react": "^19.0.10",
"@types/react-dom": "^19.0.4",
+ "alpinejs": "^3.14.9",
"astro": "^5.7.2",
"astro-icon": "^1.1.5",
"axios": "^1.8.3",
diff --git a/superpage/src/components/Accordion.astro b/superpage/src/components/Accordion.astro
index e69de29..e82ba17 100644
--- a/superpage/src/components/Accordion.astro
+++ b/superpage/src/components/Accordion.astro
@@ -0,0 +1,6 @@
+
+ Why do they call it Ovaltine?
+
+
The mug is round. The jar is round. They should call it Roundtine.
+
+
diff --git a/superpage/src/components/Carousel.astro b/superpage/src/components/Carousel.astro
index 5726a80..569bd48 100644
--- a/superpage/src/components/Carousel.astro
+++ b/superpage/src/components/Carousel.astro
@@ -5,48 +5,48 @@ const { items = [] } = Astro.props
---
-
+
-
+
-
+
diff --git a/superpage/src/components/HeaderNav.astro b/superpage/src/components/HeaderNav.astro
index 3e0d5e9..52f424a 100644
--- a/superpage/src/components/HeaderNav.astro
+++ b/superpage/src/components/HeaderNav.astro
@@ -1,15 +1,57 @@
---
+import { Icon } from 'astro-icon/components'
import Container from './Container.astro'
---
-