website/src/routes/index.lisp
2024-06-01 22:21:15 +09:00

65 lines
2 KiB
Common Lisp

(uiop:define-package #:hp/routes/index
(:use #:cl)
(:mix #:parenscript
#:paren6
#:hsx)
(:import-from #:hp/view/*
#:defasset
#:response)
(:export #:handle-get))
(in-package #:hp/routes/index)
(defasset *me-img* :img "me.jpg")
(defcomp page ()
(hsx
(div :class "h-full place-content-center"
(div :class "flex justify-center gap-x-20"
(div :class "flex justify-end"
(img
:src *me-img*
:alt "avatar of paku"
:class "w-full max-w-xs rounded-xl shadow-sm"))
(div :class "flex flex-col justify-center gap-10"
(h1 :class "text-4xl font-bold"
"paku")
(p :class "text-xl"
"Web developer")
(ul
(li
(span "GitHub:")
(a
:target "_blank"
:href "https://github.com/skyizwhite"
:class "text-indigo-500"
"@skyizwhite"))
(li
(span "Email: ")
(a
:x-data (ps (create6
(email (chain (list6 "paku" "skyizwhite.dev")
(join "@")))))
:x-text (ps email)
:|:href| (ps (chain (list6 "mailto:" email) (join "")))
:|:class| "'text-indigo-500'"
"(Please enable Javascript to show.)"))
(li
(span "Fediverse(main): ")
(a
:rel "me"
:target "_blank"
:href "https://post.skyizwhite.dev/@paku"
:class "text-indigo-500"
"@paku@post.skyizwhite.dev"))
(li
(span "Fediverse(sub): ")
(a
:rel "me"
:target "_blank"
:href "https://himagine.club/@skyizwhite"
:class "text-indigo-500"
"@skyizwhite@himagine.club"))))))))
(defun handle-get (params)
(declare (ignore params))
(response (page)))