diff --git a/astro.config.ts b/astro.config.ts
index 36e10ff..7cafb10 100644
--- a/astro.config.ts
+++ b/astro.config.ts
@@ -1,11 +1,17 @@
-import { defineConfig } from 'astro/config';
-import mdx from '@astrojs/mdx';
-import sitemap from '@astrojs/sitemap';
+import mdx from "@astrojs/mdx";
+import react from "@astrojs/react";
+import sitemap from "@astrojs/sitemap";
+import { defineConfig } from "astro/config";
import tailwind from "@astrojs/tailwind";
// https://astro.build/config
export default defineConfig({
- site: 'https://example.com',
- integrations: [mdx(), sitemap(), tailwind()]
+ site: "https://example.com",
+ integrations: [
+ mdx(),
+ sitemap(),
+ tailwind(),
+ react(),
+ ],
});
diff --git a/bun.lockb b/bun.lockb
index 526bced..0e606d8 100755
Binary files a/bun.lockb and b/bun.lockb differ
diff --git a/package.json b/package.json
index 9b4a099..849591b 100644
--- a/package.json
+++ b/package.json
@@ -12,13 +12,18 @@
"dependencies": {
"@astrojs/check": "^0.9.2",
"@astrojs/mdx": "^3.1.3",
+ "@astrojs/react": "^3.6.2",
"@astrojs/rss": "^4.0.7",
"@astrojs/sitemap": "^3.1.6",
"@astrojs/tailwind": "^5.1.0",
"@biomejs/biome": "^1.8.3",
"@fontsource-variable/jetbrains-mono": "^5.0.21",
+ "@types/react": "^18.3.3",
+ "@types/react-dom": "^18.3.0",
"astro": "^4.13.1",
"pagefind": "^1.1.0",
+ "react": "^18.3.1",
+ "react-dom": "^18.3.1",
"tailwindcss": "^3.4.7",
"typescript": "^5.5.4"
}
diff --git a/src/components/Navigation/Navigation.tsx b/src/components/Navigation/Navigation.tsx
new file mode 100644
index 0000000..dc85147
--- /dev/null
+++ b/src/components/Navigation/Navigation.tsx
@@ -0,0 +1,122 @@
+import { useState } from "react";
+
+export default function Navigation() {
+ const [active, setActive] = useState(false);
+ const links = [
+ { href: "/", label: "Home" },
+ { href: "/blog", label: "Blog" },
+ { href: "/about", label: "About" },
+ ];
+
+ return (
+
+ setActive((prev) => !prev)}
+ >
+
+ Menu
+
+
+
+
+
+
+
+ Deco
+
+
+
+
setActive((prev) => !prev)}
+ >
+
+ Menu
+
+
+
+
+
+
+
+
+
+ );
+}
diff --git a/src/content/config.ts b/src/content/config.ts
index 7eb08a9..fad6c2e 100644
--- a/src/content/config.ts
+++ b/src/content/config.ts
@@ -2,7 +2,6 @@ import { defineCollection, z } from "astro:content";
const blog = defineCollection({
type: "content",
- // Type-check frontmatter using a schema
schema: z.object({
title: z.string(),
description: z.string(),
diff --git a/src/pages/index.astro b/src/pages/index.astro
index 35fdd46..20235d7 100644
--- a/src/pages/index.astro
+++ b/src/pages/index.astro
@@ -1,51 +1,9 @@
---
-import "tailwindcss/lib/css/preflight.css";
-import BaseHead from '../components/BaseHead.astro';
-import Header from '../components/Header.astro';
-import Footer from '../components/Footer.astro';
-import { SITE_TITLE, SITE_DESCRIPTION } from '../consts';
+import Navigation from "../components/Navigation/Navigation"
+import Layout from "../layouts/Layout.astro"
---
-
-
-
-
-
-
-
-
- 🧑🚀 Hello, Astronaut!
-
- Welcome to the official Astro blog starter template. This
- template serves as a lightweight, minimally-styled starting point for anyone looking to build
- a personal website, blog, or portfolio with Astro.
-
-
- This template comes with a few integrations already configured in your
- astro.config.mjs
file. You can customize your setup with
- Astro Integrations to add tools like Tailwind,
- React, or Vue to your project.
-
- Here are a few ideas on how to get started with the template:
-
- Edit this page in src/pages/index.astro
- Edit the site header items in src/components/Header.astro
- Add your name to the footer in src/components/Footer.astro
- Check out the included blog posts in src/content/blog/
- Customize the blog post page layout in src/layouts/BlogPost.astro
-
-
- Have fun! If you get stuck, remember to read the docs
- or join us on Discord to ask questions.
-
-
- Looking for a blog template with a bit more personality? Check out astro-blog-template
- by Maxi Ferreira .
-
-
-
-
-
+
+
+
+
diff --git a/src/styles/global.css b/src/styles/global.css
index b5c61c9..0d814ee 100644
--- a/src/styles/global.css
+++ b/src/styles/global.css
@@ -1,3 +1,4 @@
+@import url("https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700&display=swap");
@tailwind base;
@tailwind components;
@tailwind utilities;
diff --git a/tailwind.config.mjs b/tailwind.config.mjs
index 19f0614..c325ef8 100644
--- a/tailwind.config.mjs
+++ b/tailwind.config.mjs
@@ -1,8 +1,12 @@
/** @type {import('tailwindcss').Config} */
export default {
- content: ['./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}'],
- theme: {
- extend: {},
- },
- plugins: [],
-}
+ content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
+ theme: {
+ extend: {},
+ fontFamily: {
+ sans: ["Hiragino Kaku Gothic ProN", "sans-serif"],
+ orbitron: ["Orbitron", "sans-serif"],
+ },
+ },
+ plugins: [],
+};