From 09c0a803bf5876e4ace300572530cf75bc9046a5 Mon Sep 17 00:00:00 2001 From: thomasabishop Date: Mon, 15 Dec 2025 17:27:14 +0000 Subject: [PATCH] small tweak --- posts/self-hosting-1-initial-setup.md | 10 +- posts/self-hosting-2-dns-tls.md | 6 +- posts/self-hosting-3-reverse-proxy-grafana.md | 12 +- src/components/EolasListing.jsx | 4 +- src/containers/CodeStats.jsx | 192 +++++++++--------- src/containers/PostListing.jsx | 4 +- src/pages/home.jsx | 10 +- src/templates/BlogTemplate.jsx | 86 ++++---- 8 files changed, 160 insertions(+), 164 deletions(-) diff --git a/posts/self-hosting-1-initial-setup.md b/posts/self-hosting-1-initial-setup.md index f436e5b..8a22bd4 100644 --- a/posts/self-hosting-1-initial-setup.md +++ b/posts/self-hosting-1-initial-setup.md @@ -311,9 +311,7 @@ SSL for the new server. In researching how to do the above, I created or expanded the following entries in my Zettelkasten: -- [Firewalls](https://thomasabishop.github.io/eolas/Firewalls) -- [UFW firewall management](https://thomasabishop.github.io/eolas/UFW_firewall_management) -- [Disable non-root SSH access](https://thomasabishop.github.io/eolas/Disable_non-root_ssh_access) -- [IP addresses](https://thomasabishop.github.io/eolas/IP_addresses) -- [Internet fundamentals](https://thomasabishop.github.io/eolas/Internet_fundamentals) -- [The Application Layer of the Internet Protocol](https://thomasabishop.github.io/eolas/Application_Layer_of_Internet_Protocol) +- [Firewalls](https://eolas.systemsobscure.net/entries/Firewalls?) +- [UFW firewall management](https://eolas.systemsobscure.net/entries/UFW_firewall_management) +- [Disable non-root SSH access](https://eolas.systemsobscure.net/entries/Disable_non-root_ssh_access) +- [IP addresses](https://eolas.systemsobscure.net/entries/IP_addresse) diff --git a/posts/self-hosting-2-dns-tls.md b/posts/self-hosting-2-dns-tls.md index 967403f..e875f1b 100644 --- a/posts/self-hosting-2-dns-tls.md +++ b/posts/self-hosting-2-dns-tls.md @@ -113,6 +113,6 @@ domain name over HTTPS! In researching how to do the above, I created or expanded the following entries in my Zettelkasten: -- [Certificates and Certificate Authorities](https://thomasabishop.github.io/eolas/Certificate_authorities) -- [Let's Encrypt](https://thomasabishop.github.io/eolas/Let's_Encrypt) -- [HTTPS](https://thomasabishop.github.io/eolas/HTTPS) +- [Certificates and Certificate Authorities](https://eolas.systemsobscure.net/entries/Certificate_authorities) +- [Let's Encrypt](https://eolas.systemsobscure.net/entries/Let's_Encrypt) +- [HTTPS](https://eolas.systemsobscure.net/entries/HTTPS) diff --git a/posts/self-hosting-3-reverse-proxy-grafana.md b/posts/self-hosting-3-reverse-proxy-grafana.md index b421c15..7d99a82 100644 --- a/posts/self-hosting-3-reverse-proxy-grafana.md +++ b/posts/self-hosting-3-reverse-proxy-grafana.md @@ -470,10 +470,8 @@ queries so I can analyse everything that is going on. In researching how to do the above, I created or expanded the following entries in my Zettelkasten: -- [Proxies](https://thomasabishop.github.io/eolas/Proxies) -- [Containerization](https://thomasabishop.github.io/eolas/Containerization) -- [Docker images](https://thomasabishop.github.io/eolas/Docker_images) -- [Creating a Docker image](https://thomasabishop.github.io/eolas/Creating_a_Docker_image) -- [Docker containers](https://thomasabishop.github.io/eolas/Docker_containers) -- [Docker storage](https://thomasabishop.github.io/eolas/Docker_storage) -- [Docker Compose and Dockerfile difference](https://thomasabishop.github.io/eolas/Docker_compose_and_Dockerfile_difference) +- [Proxies](https://eolas.systemsobscure.net/entries/Proxies) +- [Containerization](https://eolas.systemsobscure.net/entries/Containerization) +- [Docker images](https://eolas.systemsobscure.net/entries/Docker_images) +- [Creating a Docker image](https://eolas.systemsobscure.net/entries/Creating_a_Docker_image) +- [Docker containers](https://eolas.systemsobscure.net/entries/Docker_containers) diff --git a/src/components/EolasListing.jsx b/src/components/EolasListing.jsx index 93e654b..5b76ac4 100644 --- a/src/components/EolasListing.jsx +++ b/src/components/EolasListing.jsx @@ -37,8 +37,8 @@ const EolasListing = () => {
-

- {`> recent learning (external)`} +

+ {`zettelkasten recent`}

{isLoading &&
Loading...
} diff --git a/src/containers/CodeStats.jsx b/src/containers/CodeStats.jsx index 983bbff..5a10d7e 100644 --- a/src/containers/CodeStats.jsx +++ b/src/containers/CodeStats.jsx @@ -6,114 +6,114 @@ import LanguagesChart from "../components/LanguagesChart" import ProjectsChart from "../components/ProjectsChart" const convertSeconds = (secs) => { - return `${Math.floor(secs / 3600)}h ${Math.floor((secs % 3600) / 60)}m` + return `${Math.floor(secs / 3600)}h ${Math.floor((secs % 3600) / 60)}m` } const CodeStats = () => { - const { data, isLoading, error } = useQuery({ - queryKey: ["codestats"], - queryFn: () => - wakapiApi.get(`summary?interval=month`).then((res) => res.data), - }) + const { data, isLoading, error } = useQuery({ + queryKey: ["codestats"], + queryFn: () => + wakapiApi.get(`summary?interval=month`).then((res) => res.data), + }) - const grandTotal = data?.projects.reduce((acc, curr) => acc + curr.total, 0) - const grandTotalFormatted = `${Math.floor(grandTotal / 3600)}h ${Math.floor((grandTotal % 3600) / 60)}m` - const os = data?.operating_systems - const osMetric = os ? ( -
- {os[0]?.key}: {convertSeconds(os[0].total)}, {os[1]?.key}:{" "} - {convertSeconds(os[1].total)} -
- ) : ( - "Error" - ) + const grandTotal = data?.projects.reduce((acc, curr) => acc + curr.total, 0) + const grandTotalFormatted = `${Math.floor(grandTotal / 3600)}h ${Math.floor((grandTotal % 3600) / 60)}m` + const os = data?.operating_systems + const osMetric = os ? ( +
+ {os[0]?.key}: {convertSeconds(os[0].total)}, {os[1]?.key}:{" "} + {convertSeconds(os[1].total)} +
+ ) : ( + "Error" + ) - const personalProjects = - data && - data?.projects.filter( - (project) => - !project.key.includes("gp-") && !project.key.includes("unknown") - ) + const personalProjects = + data && + data?.projects.filter( + (project) => + !project.key.includes("gp-") && !project.key.includes("unknown") + ) - const personalProjectsSorted = - personalProjects && personalProjects.sort((a, b) => b.total - a.total) + const personalProjectsSorted = + personalProjects && personalProjects.sort((a, b) => b.total - a.total) - const mainProject = personalProjects ? personalProjectsSorted[0].key : "Error" + const mainProject = personalProjects ? personalProjectsSorted[0].key : "Error" - const languagesChartData = data?.languages - .map((lang) => ({ - metric: lang.key, - language: lang.key, - hours: (lang.total / 3600).toFixed(1), - percentage: ( - (lang.total / data.languages.reduce((sum, i) => sum + i.total, 0)) * - 100 - ).toFixed(1), - })) - .slice(0, 8) + const languagesChartData = data?.languages + .map((lang) => ({ + metric: lang.key, + language: lang.key, + hours: (lang.total / 3600).toFixed(1), + percentage: ( + (lang.total / data.languages.reduce((sum, i) => sum + i.total, 0)) * + 100 + ).toFixed(1), + })) + .slice(0, 8) - const projectsChartData = - personalProjects && - personalProjects - .map((proj) => ({ - metric: proj.key, - project: proj.key, - hours: (proj.total / 3600).toFixed(1), - percentage: ( - (proj.total / personalProjects.reduce((sum, i) => sum + i.total, 0)) * - 100 - ).toFixed(1), - })) - .slice(0, 4) + const projectsChartData = + personalProjects && + personalProjects + .map((proj) => ({ + metric: proj.key, + project: proj.key, + hours: (proj.total / 3600).toFixed(1), + percentage: ( + (proj.total / personalProjects.reduce((sum, i) => sum + i.total, 0)) * + 100 + ).toFixed(1), + })) + .slice(0, 4) - return ( -
-
-
-
-

- {`> code stats`} -

-
- {convertDateFriendly(data?.from)} -{" "} - {convertDateFriendly(data?.to)} -
-
-
- + return ( +
+
+
+
+

+ {`code stats`} +

+
+ {convertDateFriendly(data?.from)} -{" "} + {convertDateFriendly(data?.to)} +
+
+
+ - + - -
- - -
- Data sourced from my self-hosted{" "} - - Wakapi - {" "} - instance. -
-
-
-
- ) + +
+ + +
+ Data sourced from my self-hosted{" "} + + Wakapi + {" "} + instance. +
+
+
+
+ ) } export default CodeStats diff --git a/src/containers/PostListing.jsx b/src/containers/PostListing.jsx index 77e62d7..a4c0a15 100644 --- a/src/containers/PostListing.jsx +++ b/src/containers/PostListing.jsx @@ -8,8 +8,8 @@ const PostListing = ({ posts, title, showAllButton }) => {
-

- {`> ${title}`} +

+ {`${title}`}

{posts.map((post) => (
    diff --git a/src/pages/home.jsx b/src/pages/home.jsx index 86fdfd7..4681652 100644 --- a/src/pages/home.jsx +++ b/src/pages/home.jsx @@ -23,9 +23,9 @@ const HomePage = () => { systems obscure
-

- Software engineer at ITV. This is my technical scrapbook and - digital garden. +

+ Another software engineer with a blog. This is my technical + scrapbook and digital garden.

@@ -43,8 +43,8 @@ const HomePage = () => {
-

- {`> projects`} +

+ {`projects`}

  • diff --git a/src/templates/BlogTemplate.jsx b/src/templates/BlogTemplate.jsx index 4f4e0f1..33b48e6 100644 --- a/src/templates/BlogTemplate.jsx +++ b/src/templates/BlogTemplate.jsx @@ -5,44 +5,44 @@ import { convertDate } from "@/utils/convertDate" import { usePosts } from "@/hooks/usePosts" const BlogTemplate = () => { - const { slug } = useParams() - const { posts } = usePosts() - const post = posts?.find((x) => x.slug === slug) + const { slug } = useParams() + const { posts } = usePosts() + const post = posts?.find((x) => x.slug === slug) - return ( - -
    - {!post ? ( -
    Loading...
    - ) : ( -
    -
    -

    - {post?.title} -

    -
    - -
    - {post?.tags?.map((tag, i) => ( - - {tag} - - ))} -
    -
    -
    + return ( + +
    + {!post ? ( +
    Loading...
    + ) : ( +
    +
    +

    + {post?.title} +

    +
    + +
    + {post?.tags?.map((tag, i) => ( + + {tag} + + ))} +
    +
    +
    -
    h2]:text-2xl [&>h2]:font-medium [&>h2]:my-4 [&>h2]:text-[#ebdbb2]! + [&>h3]:text-xl [&>h3]:font-medium [&>h3]:my-4 [&>h3]:text-[#ebdbb2]! + [&>h4]:text-lg [&>h4]:font-medium [&>h4]:my-4 [&>h4]:text-[#ebdbb2]! [&>p]:leading-7 [&>p:not(:first-child)]:mt-4 [&>p+:is(h1,h2,h3,h4,h5,h6)]:mt-6 [&>blockquote]:mt-4 [&>blockquote]:border-l-2 [&>blockquote]:pl-6 [&>blockquote]:text-muted-foreground @@ -65,13 +65,13 @@ const BlogTemplate = () => { [&>table>tbody>tr]:m-0 [&>table>tbody>tr]:border-t [&>table>tbody>tr]:p-0 [&>table>tbody>tr:even]:bg-muted [&>table>tbody>tr>td]:border [&>table>tbody>tr>td]:px-4 [&>table>tbody>tr>td]:py-2 [&>table>tbody>tr>td]:text-left [&>table>tbody>tr>td[align=center]]:text-center [&>table>tbody>tr>td[align=right]]:text-right " - dangerouslySetInnerHTML={{ __html: post?.html }} - /> -
    - )} -
    -
    - ) + dangerouslySetInnerHTML={{ __html: post?.html }} + /> +
    + )} +
    +
    + ) } export default BlogTemplate