summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--content/projects.md16
-rw-r--r--static/css/common.css17
2 files changed, 26 insertions, 7 deletions
diff --git a/content/projects.md b/content/projects.md
index 08c0857..67b36e5 100644
--- a/content/projects.md
+++ b/content/projects.md
@@ -1,14 +1,26 @@
---
title: "Projects"
-date: 2022-07-13T21:26:49-05:00
+date: 2025-08-10
---
# A collection of my projects, mostly programming
+## [Joplin Web Angler](https://git.marks.kitchen/cgit/joplin-web-angler.git/) - *2025-07*
+
+A plugin for the Joplin notes app that sends webhooks based on note editing events. I hook this into my tracking/huginn setup to encourage regular journaling.
+
+## [Journal API](https://git.marks.kitchen/cgit/journal_api.git) - *2024-05*
+
+A basic REST API service for browsing historic journal entries. I made this with the goal of exploring the journals of Thoreau and Lewis & Clark.
+
+## [Tracker](https://git.marks.kitchen/cgit/tracker-spa.git/) - *2023-12*
+
+A combination of services with a webfrontend that I use a daily tracker for reading, hobbies, mood, etc. This evolved out of a couple iterations, but I've used it stably for a few years. I submit a response to this every day, and it's interesting to look back and see times I was stressed, or started new hobbies.
+
## [Daily RSS Server](https://git.marks.kitchen/?p=daily_rss_server.git;a=summary) - *2022-02*
A server that just hosts an RSS feed. This feed is populated daily with items
that change based on the day, such as upcoming holidays, links to newspaper
-comics, and fetching journal entries from historical ebooks.
+comics, and fetching journal entries from historical ebooks. I've since moved some of this functionality to a combination of RSS bridge and Huginn.
## [wikijscmd](https://git.marks.kitchen/mark/wikijscmd) - *2020-10*
diff --git a/static/css/common.css b/static/css/common.css
index e96f636..daba43b 100644
--- a/static/css/common.css
+++ b/static/css/common.css
@@ -1,3 +1,9 @@
+:root {
+ --green: #00916E;
+ --pearl: #DED4B9;
+ --brown: #554F41;
+}
+
html {
max-width: 80ch;
padding-left: 1em;
@@ -5,7 +11,7 @@ html {
margin: auto;
line-height: 1.75;
font-size: 1.25em;
- background-color: #64B6AC;
+ background-color: var(--green);
}
#main > .post + .post {
@@ -55,7 +61,8 @@ ul {
}
body {
- background-color: #DAFFEF;
+ background-color: var(--pearl);
+ color: #3C3525;
display: flex;
flex-direction: column;
/* font-family: 'Latin Modern Roman', 'Times New Roman', serif; */
@@ -64,12 +71,12 @@ body {
overflow-wrap: break-word;
padding-top: 1rem;
padding-bottom: 1rem;
- border-left: 4px solid #46555e;
- border-right: 4px solid #46555e;
+ border-left: 4px solid var(--brown);
+ border-right: 4px solid var(--brown);
}
a {
- color: #46555e;
+ color: var(--brown);
}
a:hover {