Skip to content

Commit a391928

Browse files
committed
fix: add new blog post for Oct, change terminal style, fix toc
1 parent 744427c commit a391928

16 files changed

+416
-117
lines changed

astro.config.mjs

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,36 @@
1+
import rehypePrettyCode from "rehype-pretty-code";
12
import { defineConfig } from "astro/config";
23
import partytown from "@astrojs/partytown";
34
import tailwind from "@astrojs/tailwind";
45
import sitemap from "@astrojs/sitemap";
56
import compress from "astro-compress";
7+
import remarkToc from "remark-toc";
68
import mdx from "@astrojs/mdx";
79

10+
const options = {
11+
theme: "one-dark-pro",
12+
onVisitLine(node) {
13+
// Prevent lines from collapsing in `display: grid` mode, and allow empty lines to be copy/pasted
14+
if (node.children.length === 0) {
15+
node.children = [{ type: "text", value: " " }];
16+
}
17+
},
18+
onVisitHighlightedLine(node) {
19+
node.properties.className.push("highlighted");
20+
},
21+
onVisitHighlightedWord(node) {
22+
node.properties.className = ["word"];
23+
},
24+
};
25+
826
// https://astro.build/config
927
export default defineConfig({
1028
site: "https://nir.galons.io",
1129
integrations: [sitemap(), tailwind({ config: { applyBaseStyles: false } }), partytown(), mdx(), compress()],
1230
markdown: {
13-
shikiConfig: {
14-
theme: "dracula-soft",
15-
},
31+
rehypePlugins: [[rehypePrettyCode, options]],
32+
syntaxHighlight: false,
33+
remarkPlugins: [remarkToc],
34+
extendDefaultPlugins: true, // Preserve Astro's default plugins: GitHub-flavored Markdown and Smartypants
1635
},
1736
});

package-lock.json

Lines changed: 160 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
"algoliasearch": "^4.14.2",
2828
"astro": "^1.2.6",
2929
"astro-compress": "^1.0.12",
30+
"rehype-pretty-code": "^0.4.0",
31+
"remark-toc": "^8.0.1",
3032
"tailwindcss": "^3.1.8"
3133
},
3234
"devDependencies": {
Binary file not shown.
Binary file not shown.
Binary file not shown.
20.4 KB
Binary file not shown.

public/terminal-dots.svg

Lines changed: 5 additions & 0 deletions
Loading

src/components/Header.astro

Lines changed: 54 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,44 @@
1-
<div class="flex w-full items-center justify-between p-4">
2-
<a href="/">
3-
<span class="sr-only">Nir Galon</span>
4-
<i class="h-10 w-10 fa-solid fa-user-astronaut"></i>
5-
</a>
6-
<div class="ml-10 space-x-8 lg:block">
7-
<a href="/blog" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300">Blog</a>
1+
<div class="flex flex-col md:flex-row justify-between md:items-center p-4">
2+
<div class="flex justify-between items-center">
3+
<a href="/">
4+
<span class="sr-only">Nir Galon</span>
5+
<i class="h-10 w-10 fa-solid fa-user-astronaut"></i>
6+
</a>
7+
<span id="openMenu" onclick="toggleMenu()" class="md:hidden"><i class="fa-regular fa-bars w-8 h-8"></i></span>
8+
<span id="closeMenu" onclick="toggleMenu()" class="hidden md:hidden"><i class="fa-regular fa-xmark w-8 h-8"></i></span>
9+
</div>
10+
<div
11+
id="menu"
12+
class="text-center space-y-4 py-2 md:py-0 mt-2 md:mt-2 md:space-y-0 md:ml-10 md:space-x-8 hidden md:block border-t-2 md:border-t-0 border-zinc-800"
13+
>
14+
<div class="md:hidden">
15+
<div class="relative mt-1 rounded-md shadow-sm">
16+
<div class="pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3">
17+
<i class="fa-regular fa-magnifying-glass"></i>
18+
</div>
19+
<input
20+
type="text"
21+
name="search"
22+
id="search"
23+
class="w-full rounded-md pl-10 py-2 px-4 bg-zinc-200 dark:bg-zinc-700 border-transparent focus:border-zinc-50 focus:dark:border-zinc-800 focus:ring-zinc-50 focus:dark:ring-zinc-800"
24+
placeholder="Search titles or content"
25+
/>
26+
</div>
27+
</div>
28+
29+
<a href="/blog" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300 block md:inline-block">Blog</a>
830

9-
<a href="/categories" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300">Categories</a>
31+
<a href="/categories" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300 block md:inline-block"
32+
>Categories</a
33+
>
1034

11-
<a href="/about" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300">About</a>
35+
<a href="/about" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300 block md:inline-block">About</a>
1236

13-
<a href="/contact" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300">Contact</a>
37+
<a href="/contact" class="text-base font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 hover:dark:text-zinc-300 block md:inline-block"
38+
>Contact</a
39+
>
1440

15-
<button id="theme-button" onclick="handleClick()" aria-label="change theme color"></button>
41+
<button id="theme-button" onclick="handleClick()" aria-label="change theme color" class="block md:inline-block mx-auto"></button>
1642
</div>
1743

1844
<script is:inline>
@@ -33,5 +59,22 @@
3359
document.getElementById("theme-button").innerHTML = "<i class='fa-solid fa-sun'></<i>";
3460
}
3561
};
62+
63+
const toggleMenu = () => {
64+
const menuElement = document.getElementById("menu");
65+
const openMenu = document.getElementById("openMenu");
66+
const closeMenu = document.getElementById("closeMenu");
67+
if (menuElement.classList.contains("hidden")) {
68+
menuElement.classList.remove("hidden");
69+
70+
openMenu.classList.add("hidden");
71+
closeMenu.classList.remove("hidden");
72+
} else {
73+
menuElement.classList.add("hidden");
74+
75+
openMenu.classList.remove("hidden");
76+
closeMenu.classList.add("hidden");
77+
}
78+
};
3679
</script>
3780
</div>

0 commit comments

Comments
 (0)