Rename hp to website

This commit is contained in:
Akira Tempaku 2025-05-02 09:39:55 +09:00
parent 33e23d9f95
commit e1905255d7
Signed by: paku
GPG key ID: 5B4E8402BCC50607
21 changed files with 77 additions and 70 deletions

View file

@ -1,5 +1,5 @@
HP_ENV=
HP_URL=
WEBSITE_ENV=
WEBSITE_URL=
MICROCMS_SERVICE_DOMAIN=
MICROCMS_API_KEY=
CLOUDFLARE_ZONE_ID=

View file

@ -51,7 +51,7 @@ lem: ## Open Lem with TailwindCSS server
kill $$WATCH_PID
docker-build: ## Build docker image
docker build -t hp .
docker build -t website .
docker-run: ## Run docker container
docker run -p 3000:3000 hp
docker run -p 3000:3000 website

View file

@ -1 +1 @@
# hp
# website

View file

@ -2,7 +2,7 @@
set -e
echo "Starting server..."
.qlot/bin/clackup --system hp --server woo --address 0.0.0.0 --port 3000 src/app.lisp &
.qlot/bin/clackup --system website --server woo --address 0.0.0.0 --port 3000 src/app.lisp &
SERVER_PID=$!

View file

@ -1,4 +1,4 @@
(defpackage #:hp/app
(defpackage #:website/app
(:use #:cl)
(:import-from #:jingle
#:make-app
@ -11,19 +11,19 @@
#:*trim-trailing-slash*)
(:import-from #:clack-errors
#:*clack-error-middleware*)
(:import-from #:hp/lib/env
#:hp-env)
(:import-from #:hp/renderer)
(:import-from #:website/lib/env
#:website-env)
(:import-from #:website/renderer)
(:export #:*app*))
(in-package #:hp/app)
(in-package #:website/app)
(defparameter *app*
(let ((app (make-app)))
(set-routes app :system :hp :target-dir-path "routes")
(set-routes app :system :website :target-dir-path "routes")
(install-middleware app (lambda (app)
(funcall *clack-error-middleware*
app
:debug (string= (hp-env) "dev"))))
:debug (string= (website-env) "dev"))))
(install-middleware app *trim-trailing-slash*)
(static-path app "/img/" "static/img/")
(static-path app "/style/" "static/style/")

View file

@ -1,10 +1,10 @@
(defpackage #:hp/components/header
(defpackage #:website/components/header
(:use #:cl
#:hsx)
(:import-from #:jingle
#:request-uri)
(:export #:~header))
(in-package #:hp/components/header)
(in-package #:website/components/header)
(defparameter *nav-menu*
'(("/bio" "bio")

View file

@ -1,12 +1,12 @@
(defpackage #:hp/components/layout
(defpackage #:website/components/layout
(:use #:cl
#:hsx)
(:import-from #:hp/components/metadata
(:import-from #:website/components/metadata
#:~metadata)
(:import-from #:hp/components/header
(:import-from #:website/components/header
#:~header)
(:export #:~layout))
(in-package #:hp/components/layout)
(in-package #:website/components/layout)
(defun bust-cache (url)
(format nil "~a?v=~a" url #.(get-universal-time)))

View file

@ -1,10 +1,10 @@
(defpackage #:hp/components/metadata
(defpackage #:website/components/metadata
(:use #:cl
#:hsx)
(:import-from #:hp/lib/env
#:hp-url)
(:import-from #:website/lib/env
#:website-url)
(:export #:~metadata))
(in-package #:hp/components/metadata)
(in-package #:website/components/metadata)
(defun create-metadata (&key title
description
@ -27,7 +27,7 @@
(defun path->url (path)
(concatenate 'string
(hp-url)
(website-url)
(and (not (string= path "/")) path)))
(defparameter *metadata-template*

View file

@ -1,16 +1,16 @@
(defpackage #:hp/lib/cms
(defpackage #:website/lib/cms
(:use #:cl)
(:import-from #:microcms
#:define-list-client
#:define-object-client)
(:import-from #:hp/lib/env
(:import-from #:website/lib/env
#:microcms-service-domain
#:microcms-api-key)
(:export #:get-blog-list
#:get-blog-detail
#:get-bio
#:get-work))
(in-package :hp/lib/cms)
(in-package :website/lib/cms)
(setf microcms:*service-domain* (microcms-service-domain))
(setf microcms:*api-key* (microcms-api-key))

View file

@ -1,12 +1,12 @@
(defpackage #:hp/lib/env
(defpackage #:website/lib/env
(:use #:cl)
(:import-from #:cl-dotenv
#:load-env)
(:export #:hp-env
#:hp-url
(:export #:website-env
#:website-url
#:microcms-service-domain
#:microcms-api-key))
(in-package #:hp/lib/env)
(in-package #:website/lib/env)
(load-env (merge-pathnames "./.env"))
@ -14,7 +14,7 @@
`(defun ,name ()
(or (uiop:getenv ,var) "")))
(env-var hp-env "HP_ENV")
(env-var hp-url "HP_URL")
(env-var website-env "WEBSITE_ENV")
(env-var website-url "WEBSITE_URL")
(env-var microcms-service-domain "MICROCMS_SERVICE_DOMAIN")
(env-var microcms-api-key "MICROCMS_API_KEY")

View file

@ -1,4 +1,4 @@
(defpackage #:hp/lib/time
(defpackage #:website/lib/time
(:use #:cl)
(:import-from #:local-time
#:reread-timezone-repository
@ -7,7 +7,7 @@
#:format-timestring)
(:export #:datetime
#:jp-datetime))
(in-package #:hp/lib/time)
(in-package #:website/lib/time)
(reread-timezone-repository)
(setf local-time:*default-timezone*

View file

@ -1,13 +1,13 @@
(defpackage #:hp
(:nicknames #:hp/main)
(defpackage #:website
(:nicknames #:website/main)
(:use #:cl)
(:import-from #:clack)
(:import-from #:hp/app
(:import-from #:website/app
#:*app*)
(:export #:start
#:stop
#:reload))
(in-package #:hp)
(in-package #:website)
(defparameter *handler* nil)
@ -28,5 +28,5 @@
(defun reload ()
(stop)
(ql:quickload :hp/app)
(ql:quickload :website/app)
(start))

View file

@ -1,4 +1,4 @@
(defpackage #:hp/renderer
(defpackage #:website/renderer
(:use #:cl
#:hsx
#:trivia)
@ -6,16 +6,16 @@
#:set-response-header)
(:import-from #:hsx/element
#:element)
(:import-from #:hp/lib/env
#:hp-url
#:hp-env)
(:import-from #:hp/components/layout
(:import-from #:website/lib/env
#:website-url
#:website-env)
(:import-from #:website/components/layout
#:~layout))
(in-package #:hp/renderer)
(in-package #:website/renderer)
(defun set-cache-control (strategy)
(set-response-header :cache-control
(if (string= (hp-env) "dev")
(if (string= (website-env) "dev")
"private, no-store"
(cond
((eq strategy :static) "public, max-age=31536000, immutable")

View file

@ -1,8 +1,13 @@
(defpackage #:hp/routes/bio
(defpackage #:website/routes/bio
(:use #:cl
#:hsx)
(:import-from #:website/lib/cms
#:get-bio)
(:import-from #:website/lib/time
#:datetime
#:jp-datetime)
(:export #:handle-get))
(in-package :hp/routes/bio)
(in-package :website/routes/bio)
(defparameter *metadata*
(list :title "bio"
@ -10,8 +15,7 @@
(defcomp ~page ()
(hsx
(section
(p "Coming soon..."))))
(p "comming soon")))
(defun handle-get (params)
(declare (ignore params))

View file

@ -1,8 +1,8 @@
(defpackage #:hp/routes/blog
(defpackage #:website/routes/blog
(:use #:cl
#:hsx)
(:export #:handle-get))
(in-package :hp/routes/blog)
(in-package :website/routes/blog)
(defparameter *metadata*
(list :title "blog"
@ -10,8 +10,7 @@
(defcomp ~page ()
(hsx
(section
(p "Coming soon..."))))
(p "comming soon")))
(defun handle-get (params)
(declare (ignore params))

View file

@ -1,9 +1,9 @@
(defpackage #:hp/routes/index
(defpackage #:website/routes/index
(:use #:cl
#:hsx)
(:export #:handle-get
#:handle-head))
(in-package #:hp/routes/index)
(in-package #:website/routes/index)
(defparameter *links*
'(("Keyoxide" "https://keyoxide.org/f39d5b2c951d16732a5cd3528f0c1a22f26d7e62")

View file

@ -1,8 +1,8 @@
(defpackage #:hp/routes/not-found
(defpackage #:website/routes/not-found
(:use #:cl
#:hsx)
(:export #:handle-not-found))
(in-package #:hp/routes/not-found)
(in-package #:website/routes/not-found)
(defparameter *metadata*
'(:title "404 Not Found"

View file

@ -1,8 +1,13 @@
(defpackage #:hp/routes/work
(defpackage #:website/routes/work
(:use #:cl
#:hsx)
(:import-from #:website/lib/cms
#:get-work)
(:import-from #:website/lib/time
#:datetime
#:jp-datetime)
(:export #:handle-get))
(in-package :hp/routes/work)
(in-package :website/routes/work)
(defparameter *metadata*
(list :title "work"
@ -10,8 +15,7 @@
(defcomp ~page ()
(hsx
(section
(p "Coming soon..."))))
(p "comming soon")))
(defun handle-get (params)
(declare (ignore params))

View file

@ -1,7 +1,7 @@
(defpackage #:hp-tests/example
(defpackage #:website-tests/example
(:use #:cl
#:fiveam))
(in-package #:hp-tests/example)
(in-package #:website-tests/example)
(def-suite example-test)
(in-suite example-test)

View file

@ -1,7 +1,7 @@
(defsystem "hp-tests"
(defsystem "website-tests"
:class :package-inferred-system
:pathname "tests"
:depends-on ("fiveam"
"hp-tests/example")
"website-tests/example")
:perform (test-op (o c)
(symbol-call :fiveam :run-all-tests)))

View file

@ -1,7 +1,7 @@
(defsystem "hp"
(defsystem "website"
:description "My personal website"
:author "Akira Tempaku <paku@skyizwhite.dev>"
:class :package-inferred-system
:pathname "src"
:depends-on ("hp/main")
:in-order-to ((test-op (test-op "hp-tests"))))
:depends-on ("website/main")
:in-order-to ((test-op (test-op "website-tests"))))