Skip to content

Commit 7c5d1ae

Browse files
committed
Hamburger button for nav menu in small screens
1 parent cb68122 commit 7c5d1ae

File tree

2 files changed

+71
-22
lines changed

2 files changed

+71
-22
lines changed

.astro/content-modules.mjs

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,62 @@
11

22
export default new Map([
3-
["src/content/post/annealed-importance-sampling.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fannealed-importance-sampling.mdx&astroContentModuleFlag=true")],
4-
["src/content/post/bayesian-regression.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fbayesian-regression.mdx&astroContentModuleFlag=true")],
5-
["src/content/post/batchnorm.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fbatchnorm.mdx&astroContentModuleFlag=true")],
63
["src/content/post/autoencoders.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fautoencoders.mdx&astroContentModuleFlag=true")],
7-
["src/content/post/chentsov-theorem.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fchentsov-theorem.mdx&astroContentModuleFlag=true")],
4+
["src/content/post/batchnorm.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fbatchnorm.mdx&astroContentModuleFlag=true")],
5+
["src/content/post/bayesian-regression.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fbayesian-regression.mdx&astroContentModuleFlag=true")],
86
["src/content/post/boundary-seeking-gan.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fboundary-seeking-gan.mdx&astroContentModuleFlag=true")],
7+
["src/content/post/brouwers-fixed-point.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fbrouwers-fixed-point.mdx&astroContentModuleFlag=true")],
8+
["src/content/post/chentsov-theorem.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fchentsov-theorem.mdx&astroContentModuleFlag=true")],
99
["src/content/post/conditional-gan-tensorflow.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fconditional-gan-tensorflow.mdx&astroContentModuleFlag=true")],
1010
["src/content/post/conditional-vae.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fconditional-vae.mdx&astroContentModuleFlag=true")],
11+
["src/content/post/annealed-importance-sampling.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fannealed-importance-sampling.mdx&astroContentModuleFlag=true")],
1112
["src/content/post/contractive-autoencoder.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fcontractive-autoencoder.mdx&astroContentModuleFlag=true")],
12-
["src/content/post/brouwers-fixed-point.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fbrouwers-fixed-point.mdx&astroContentModuleFlag=true")],
13+
["src/content/post/convnet-maxpool-layer.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fconvnet-maxpool-layer.mdx&astroContentModuleFlag=true")],
14+
["src/content/post/deploying-wagtail.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fdeploying-wagtail.mdx&astroContentModuleFlag=true")],
1315
["src/content/post/conv-probit.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fconv-probit.mdx&astroContentModuleFlag=true")],
1416
["src/content/post/convnet-conv-layer.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fconvnet-conv-layer.mdx&astroContentModuleFlag=true")],
1517
["src/content/post/coupled-gan.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fcoupled-gan.mdx&astroContentModuleFlag=true")],
16-
["src/content/post/deploying-wagtail.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fdeploying-wagtail.mdx&astroContentModuleFlag=true")],
17-
["src/content/post/convnet-maxpool-layer.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fconvnet-maxpool-layer.mdx&astroContentModuleFlag=true")],
18-
["src/content/post/developing-wagtail.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fdeveloping-wagtail.mdx&astroContentModuleFlag=true")],
1918
["src/content/post/dropout.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fdropout.mdx&astroContentModuleFlag=true")],
20-
["src/content/post/fisher-information.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Ffisher-information.mdx&astroContentModuleFlag=true")],
2119
["src/content/post/forward-reverse-kl.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fforward-reverse-kl.mdx&astroContentModuleFlag=true")],
20+
["src/content/post/developing-wagtail.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fdeveloping-wagtail.mdx&astroContentModuleFlag=true")],
21+
["src/content/post/fisher-information.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Ffisher-information.mdx&astroContentModuleFlag=true")],
2222
["src/content/post/gan-pytorch.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fgan-pytorch.mdx&astroContentModuleFlag=true")],
23+
["src/content/post/gan-tensorflow.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fgan-tensorflow.mdx&astroContentModuleFlag=true")],
2324
["src/content/post/gaussian-anomaly-detection.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fgaussian-anomaly-detection.mdx&astroContentModuleFlag=true")],
2425
["src/content/post/gibbs-sampling.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fgibbs-sampling.mdx&astroContentModuleFlag=true")],
25-
["src/content/post/gan-tensorflow.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fgan-tensorflow.mdx&astroContentModuleFlag=true")],
2626
["src/content/post/gleam-use.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fgleam-use.mdx&astroContentModuleFlag=true")],
2727
["src/content/post/infogan.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Finfogan.mdx&astroContentModuleFlag=true")],
2828
["src/content/post/gleam-aoc-2024.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fgleam-aoc-2024.mdx&astroContentModuleFlag=true")],
2929
["src/content/post/hessian-invariance.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fhessian-invariance.mdx&astroContentModuleFlag=true")],
3030
["src/content/post/hessian-curvatures.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fhessian-curvatures.mdx&astroContentModuleFlag=true")],
31+
["src/content/post/kl-mle.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fkl-mle.mdx&astroContentModuleFlag=true")],
3132
["src/content/post/laplace.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Flaplace.mdx&astroContentModuleFlag=true")],
33+
["src/content/post/jekyll-fb-share.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fjekyll-fb-share.mdx&astroContentModuleFlag=true")],
3234
["src/content/post/lda-gibbs.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Flda-gibbs.mdx&astroContentModuleFlag=true")],
3335
["src/content/post/least-squares-gan.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fleast-squares-gan.mdx&astroContentModuleFlag=true")],
3436
["src/content/post/levelset-method.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Flevelset-method.mdx&astroContentModuleFlag=true")],
3537
["src/content/post/lstm-backprop.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Flstm-backprop.mdx&astroContentModuleFlag=true")],
3638
["src/content/post/manifold-gaussians.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fmanifold-gaussians.mdx&astroContentModuleFlag=true")],
37-
["src/content/post/kl-mle.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fkl-mle.mdx&astroContentModuleFlag=true")],
3839
["src/content/post/levelset-segmentation.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Flevelset-segmentation.mdx&astroContentModuleFlag=true")],
3940
["src/content/post/metropolis-hastings.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fmetropolis-hastings.mdx&astroContentModuleFlag=true")],
4041
["src/content/post/minkowski-dirichlet.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fminkowski-dirichlet.mdx&astroContentModuleFlag=true")],
4142
["src/content/post/mayer-vietoris-sphere.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fmayer-vietoris-sphere.mdx&astroContentModuleFlag=true")],
42-
["src/content/post/jekyll-fb-share.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fjekyll-fb-share.mdx&astroContentModuleFlag=true")],
43-
["src/content/post/natural-gradient.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fnatural-gradient.mdx&astroContentModuleFlag=true")],
44-
["src/content/post/optimization-riemannian-manifolds.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Foptimization-riemannian-manifolds.mdx&astroContentModuleFlag=true")],
45-
["src/content/post/nn-optimization.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fnn-optimization.mdx&astroContentModuleFlag=true")],
4643
["src/content/post/mle-vs-map.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fmle-vs-map.mdx&astroContentModuleFlag=true")],
44+
["src/content/post/optimization-riemannian-manifolds.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Foptimization-riemannian-manifolds.mdx&astroContentModuleFlag=true")],
4745
["src/content/post/parallel-monte-carlo.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fparallel-monte-carlo.mdx&astroContentModuleFlag=true")],
46+
["src/content/post/natural-gradient.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fnatural-gradient.mdx&astroContentModuleFlag=true")],
47+
["src/content/post/nn-optimization.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fnn-optimization.mdx&astroContentModuleFlag=true")],
48+
["src/content/post/nn-sgd.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fnn-sgd.mdx&astroContentModuleFlag=true")],
4849
["src/content/post/rejection-sampling.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Frejection-sampling.mdx&astroContentModuleFlag=true")],
49-
["src/content/post/plotting.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fplotting.mdx&astroContentModuleFlag=true")],
5050
["src/content/post/residual-net.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fresidual-net.mdx&astroContentModuleFlag=true")],
51-
["src/content/post/nn-sgd.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fnn-sgd.mdx&astroContentModuleFlag=true")],
5251
["src/content/post/scrapy-long-running.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fscrapy-long-running.mdx&astroContentModuleFlag=true")],
53-
["src/content/post/slice-sampling.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fslice-sampling.mdx&astroContentModuleFlag=true")],
52+
["src/content/post/plotting.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fplotting.mdx&astroContentModuleFlag=true")],
5453
["src/content/post/theano-pde.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Ftheano-pde.mdx&astroContentModuleFlag=true")],
54+
["src/content/post/slice-sampling.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fslice-sampling.mdx&astroContentModuleFlag=true")],
5555
["src/content/post/twitter-auth-flask.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Ftwitter-auth-flask.mdx&astroContentModuleFlag=true")],
5656
["src/content/post/vae-pytorch.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fvae-pytorch.mdx&astroContentModuleFlag=true")],
5757
["src/content/post/variational-autoencoder.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fvariational-autoencoder.mdx&astroContentModuleFlag=true")],
58-
["src/content/post/wagtail-dev-env.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fwagtail-dev-env.mdx&astroContentModuleFlag=true")],
5958
["src/content/post/volume-form.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fvolume-form.mdx&astroContentModuleFlag=true")],
59+
["src/content/post/wagtail-dev-env.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fwagtail-dev-env.mdx&astroContentModuleFlag=true")],
6060
["src/content/post/wasserstein-gan.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fwasserstein-gan.mdx&astroContentModuleFlag=true")],
6161
["src/content/post/writing-advice.mdx", () => import("astro:content-layer-deferred-module?astro%3Acontent-layer-deferred-module=&fileName=src%2Fcontent%2Fpost%2Fwriting-advice.mdx&astroContentModuleFlag=true")]]);
6262

src/components/layout/Header.astro

Lines changed: 52 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,16 @@
66
class='mb-12 flex w-full flex-wrap pb-3 text-sm sm:flex-nowrap sm:justify-start'
77
>
88
<nav
9-
class='items-left relative mx-auto flex w-full flex-col justify-between sm:flex sm:flex-row sm:items-center'
9+
class='relative mx-auto flex w-full items-center justify-between'
1010
aria-label='global'
1111
>
1212
<a class='flex-none text-xl font-semibold' href='/' aria-label='Brand'
1313
>Agustinus Kristiadi</a
1414
>
1515

16+
<!-- Desktop menu -->
1617
<div
17-
class='flex flex-row items-center justify-start gap-x-7 pt-3 sm:justify-center sm:pt-0'
18+
class='absolute left-1/2 hidden -translate-x-1/2 transform items-center justify-center gap-x-10 text-sm md:flex md:text-lg'
1819
>
1920
<a
2021
href='/'
@@ -50,10 +51,13 @@
5051
aria-label='Nav Menu Item'
5152
>Blog
5253
</a>
54+
</div>
5355

56+
<!-- Right side buttons container -->
57+
<div class='flex items-center gap-x-2'>
5458
<button
5559
id='toggleDarkMode'
56-
class='relative rounded-md border border-border p-1.5 transition-all hover:bg-border'
60+
class='relative rounded-md p-1.5 transition-all hover:bg-border'
5761
>
5862
<span class='sr-only'>Dark Theme</span>
5963
<svg
@@ -79,10 +83,55 @@
7983
></path></svg
8084
>
8185
</button>
86+
87+
<!-- Mobile Menu Button -->
88+
<button
89+
id='menu-toggle'
90+
class='rounded-md p-0.5 text-[hsl(var(--foreground))] transition-all hover:bg-border md:hidden'
91+
>
92+
<svg
93+
xmlns='http://www.w3.org/2000/svg'
94+
fill='none'
95+
viewBox='0 0 24 24'
96+
stroke='currentColor'
97+
class='h-6 w-6'
98+
>
99+
<path
100+
stroke-linecap='round'
101+
stroke-linejoin='round'
102+
stroke-width='2'
103+
d='M4 6h16M4 12h16M4 18h16'></path>
104+
</svg>
105+
</button>
106+
</div>
107+
108+
<!-- Mobile Dropdown Menu -->
109+
<div
110+
id='mobile-menu'
111+
class='absolute right-0 top-full z-10 mt-2 hidden w-48 rounded-md bg-background shadow-lg md:hidden'
112+
>
113+
<div class='py-1'>
114+
<a href='/cv' class='block px-4 py-2 font-bold hover:bg-muted'>CV</a>
115+
<a href='/group' class='block px-4 py-2 font-bold hover:bg-muted'>Students</a>
116+
<a href='/publications' class='block px-4 py-2 font-bold hover:bg-muted'
117+
>Publications</a
118+
>
119+
<a href='/blog' class='block px-4 py-2 font-bold hover:bg-muted'>Blog</a>
120+
</div>
82121
</div>
83122
</nav>
84123
</header>
85124

125+
<script>
126+
// Toggle mobile menu
127+
const menuToggle = document.getElementById("menu-toggle");
128+
const mobileMenu = document.getElementById("mobile-menu");
129+
130+
menuToggle?.addEventListener("click", () => {
131+
mobileMenu?.classList.toggle("hidden");
132+
});
133+
</script>
134+
86135
<script>
87136
function getCurrentTheme() {
88137
return localStorage.getItem("theme");

0 commit comments

Comments
 (0)