diff --git a/public/fv.jpg b/public/fv.jpg index e3b1335..ca68e44 100644 Binary files a/public/fv.jpg and b/public/fv.jpg differ diff --git a/src/components/footer.lisp b/src/components/footer.lisp new file mode 100644 index 0000000..7edaf37 --- /dev/null +++ b/src/components/footer.lisp @@ -0,0 +1,11 @@ +(defpackage #:hp/components/footer + (:use #:cl + #:hsx) + (:export #:page-footer)) +(in-package #:hp/components/footer) + +(defcomp page-footer () + (hsx + (footer :class "fixed bottom-0 w-full" + (div :class "container py-6 flex justify-end" + (p "© 2025 skyizwhite"))))) diff --git a/src/components/header.lisp b/src/components/header.lisp index 983be66..b002b16 100644 --- a/src/components/header.lisp +++ b/src/components/header.lisp @@ -8,7 +8,7 @@ (let ((links '(("Home" "/") ("About" "/about") ("Work" "/work") - ("Blog" "/blog") + ("Article" "/article") ("Contact" "/contact")))) (hsx (header :class "fixed top-0 w-full" @@ -22,5 +22,5 @@ (loop :for (content href) :in links :collect (li :class "flex items-center" - (a :href href :class "text-xl font-bold pl-6 hover:text-orange-600" + (a :href href :class "text-lg hover:text-orange-600" content))))))))) diff --git a/src/env.lisp b/src/env.lisp index da55c39..b32c3f4 100644 --- a/src/env.lisp +++ b/src/env.lisp @@ -7,7 +7,7 @@ (in-package #:hp/env) (defmacro defenv (name env &key default parser) - (let ((env-val (gensym "val"))) + (let ((env-val (gensym "env-val"))) `(defparameter ,name (let ((,env-val (uiop:getenv ,env))) (if ,env-val diff --git a/src/renderer.lisp b/src/renderer.lisp index 7c84e16..94802a5 100644 --- a/src/renderer.lisp +++ b/src/renderer.lisp @@ -7,8 +7,7 @@ (:import-from #:hsx/element #:element) (:local-nicknames (#:env #:hp/env)) - (:import-from #:hp/components/header - #:page-header)) + (:local-nicknames (#:cmp #:hp/components/*))) (in-package #:hp/renderer) (defun bust-cache (url) @@ -43,9 +42,10 @@ :hx-ext "head-support, response-targets" :hx-boost "true" :hx-target-404 "body" :hx-target-5* "body" :class "h-[100svh] flex flex-col" - (page-header) + (cmp:page-header) (main :class "flex-1 h-full" - children))))) + children) + (cmp:page-footer))))) (defmethod jg:process-response ((app jg:app) result) (jg:set-response-header :content-type "text/html; charset=utf-8") diff --git a/src/routes/index.lisp b/src/routes/index.lisp index 0d6fbe6..70aac37 100644 --- a/src/routes/index.lisp +++ b/src/routes/index.lisp @@ -6,14 +6,15 @@ (defcomp page () (hsx - (section :class "h-[100svh] bg-[url('/fv.jpg')] bg-cover bg-center flex items-end pb-12" - (div :class "container flex justify-between items-end" - (h1 :class "flex flex-col text-6xl font-bold italic leading-normal" - (span :class "block" - "Bridging Minds,") - (span :class "block" - "Building Futures.")) - (p "© 2025 skyizwhite"))))) + (section + ; first view + (div :class "h-[100svh] bg-[url('/fv.jpg')] bg-cover bg-center flex" + (div :class "container flex items-end justify-between" + (h1 :class "flex flex-col text-6xl font-bold italic leading-normal pb-10" + (span :class "block" + "Beyond Differences,") + (span :class "block" + "Shaping Tomorrow"))))))) (defun handle-get (params) (declare (ignore params)) diff --git a/src/routes/not-found.lisp b/src/routes/not-found.lisp index e270525..0de2c11 100644 --- a/src/routes/not-found.lisp +++ b/src/routes/not-found.lisp @@ -11,7 +11,7 @@ (defcomp page () (hsx - (section :class "container flex flex-col justify-center items-center h-full gap-4" + (section :class "container flex flex-col justify-center items-center h-full gap-10" (h1 :class "text-2xl text-red-600" (getf *metadata* :title)) (p (getf *metadata* :description))