This commit is contained in:
Akira Tempaku 2024-11-16 20:37:45 +09:00
parent 5a0e0016e9
commit 0602391977
4 changed files with 17 additions and 8 deletions

View file

@ -8,7 +8,7 @@
(:export #:*app*))
(in-package #:hp/app)
(defparameter *app* (jg:make-app :address "localhost"
(defparameter *app* (jg:make-app :address env:*address*
:port env:*port*))
(fbr:assign-routes *app* :system "hp" :directory "src/routes")

View file

@ -2,7 +2,8 @@
(:use #:cl)
(:export #:dev-mode-p
#:prod-mode-p
#:*port*))
#:*port*
#:*address*))
(in-package #:hp/env)
(defmacro defenv (name env &key default parser)
@ -14,6 +15,7 @@
,default)))))
(defenv *env* "HP_ENV" :default "dev")
(defenv *address* "HP_ADDRESS" :default "localhost")
(defenv *port* "HP_PORT" :default 3000 :parser #'parse-integer)
(defun dev-mode-p ()

View file

@ -7,16 +7,19 @@
#:*app*)
(:export #:start
#:stop
#:update))
#:reload))
(in-package #:hp)
(defun start ()
(jg:start *app*))
(jg:start *app*)
(when (env:dev-mode-p)
(uiop:run-program (format nil "open http://~a:~a"
env:*address* env:*port*))))
(defun stop ()
(jg:stop *app*))
(defun update ()
(defun reload ()
(stop)
(ql:quickload :hp/app)
(start))

View file

@ -7,12 +7,16 @@
(defparameter *metadata*
'(:title "404 Not Found"
:description "お探しのページは見つかりませんでした。"))
:description "お探しのページは削除されたか、URLが間違っている可能性があります。"))
(defcomp page ()
(hsx
(h1 :class "text-red-600"
"404 Not Found")))
(div :class "flex flex-col justify-center items-center h-full gap-4"
(h1 :class "text-2xl text-red-600"
"404 Not Found")
(p (getf *metadata* :description))
(a :href "/" :class "text-pink-600"
"トップページに戻る"))))
(defun handle-not-found ()
(jg:set-response-status :not-found)