make tag urls all lowercase, instead of having multiple urls for the same tag
All checks were successful
Build and copy to prod / build-and-copy (push) Successful in 1m24s
All checks were successful
Build and copy to prod / build-and-copy (push) Successful in 1m24s
This commit is contained in:
parent
eab197109c
commit
d332e34874
@ -15,7 +15,7 @@
|
||||
<p class="e-content p-summary">{{ item | excerpt }}</p>
|
||||
<ul role="list" class="tags">
|
||||
{% for t in item.data.tags | except("posts") | except("draft") %}
|
||||
<li><a href="/post/tag/{{ t }}" rel="tag">#{{ t }}</a></li>
|
||||
<li><a href="/post/tag/{{ t | slugify }}" rel="tag">#{{ t }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<a href="{{ item.url }}" class="inline-block">Read more</a>
|
||||
|
@ -15,7 +15,7 @@ includePrism: true
|
||||
<h2>Tags:</h2>
|
||||
<ul role="list">
|
||||
{% for tag in filteredTags %}
|
||||
<li><a class="p-category" href="/post/tag/{{ tag }}" rel="tag">#{{ tag }}</a></li>
|
||||
<li><a class="p-category" href="/post/tag/{{ tag | slugify }}" rel="tag">#{{ tag }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</section>
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "A new blog"
|
||||
date: 2021-12-17T00:00:00
|
||||
slug: a-new-blog
|
||||
|
||||
---
|
||||
---
|
||||
title: "A new blog"
|
||||
date: 2021-12-17T00:00:00
|
||||
slug: a-new-blog
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
It’s been a long time since I’ve had an actively-maintained personal website/blog, but I got a spurt of inspiration after seeing a few other recently-revamped blogs. What better way to celebrate the end of the year than with… a blog?
|
||||
|
||||
My intention is to try and write a post on here relatively frequently, but we’ll see how that goes as I’m quite out of practice.
|
||||
@ -30,4 +31,4 @@ At the time of writing, there are no accessibility issues reported by Axe or Lig
|
||||
|
||||
![Congratulations! Found 0 issues automatically on the page](./src/images/axe-clean-output.png)
|
||||
|
||||
If anybody reading this does in fact spot or experience an accessibility issue, [please send me a DM or tweet on Twitter](https://twitter.com/LewisDaleUK).
|
||||
If anybody reading this does in fact spot or experience an accessibility issue, [please send me a DM or tweet on Twitter](https://twitter.com/LewisDaleUK).
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Building a CMS for Eleventy"
|
||||
date: 2022-10-07T00:00:00
|
||||
slug: building-a-cms-for-eleventy
|
||||
|
||||
---
|
||||
---
|
||||
title: "Building a CMS for Eleventy"
|
||||
date: 2022-10-07T00:00:00
|
||||
slug: building-a-cms-for-eleventy
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Three days ago, I tweeted this:
|
||||
|
||||
[https://twitter.com/LewisDaleUK/status/1577211142748807168](https://twitter.com/LewisDaleUK/status/1577211142748807168)).
|
||||
@ -65,4 +66,4 @@ So this was a fun little experiment. It’s very rough-and-ready and doesn’t r
|
||||
|
||||
I think there are a few use cases for this, but mostly it’s a good way to build content-managed websites that are updated relatively-infrequently. I think the thing that I like about it is that it is very unprescriptive. Your specific Eleventy configuration isn’t important - it adds the data it needs, and then leaves it alone (well, everything except those file paths).
|
||||
|
||||
The source for the Express server can be found [on my Github](https://github.com/LewisDaleUK/11ty-building-example/).
|
||||
The source for the Express server can be found [on my Github](https://github.com/LewisDaleUK/11ty-building-example/).
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Moving my reading list out of JSON"
|
||||
date: 2022-10-05T00:00:00
|
||||
slug: moving-my-reading-list-out-of-json
|
||||
|
||||
---
|
||||
---
|
||||
title: "Moving my reading list out of JSON"
|
||||
date: 2022-10-05T00:00:00
|
||||
slug: moving-my-reading-list-out-of-json
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
I blogged about [hosting a reading list on this blog](https://lewisdale.dev/post/managing-my-reading-list/) a little while ago. At the time, I decided that storing the books as JSON would make sense - and it did, at the time. But as the list has grown, albeit not exponentially, it started to get a bit messy.
|
||||
|
||||
So I decided to move the reading list into a SQLite database, which seemed like a sensible choice.
|
||||
@ -22,4 +23,4 @@ I’ve not seen any noticable hit to build times, largely because reading the da
|
||||
|
||||
## [Limits](https://lewisdale.dev/post/moving-my-reading-list-out-of-json/#limits)
|
||||
|
||||
For my use, this is absolutely fine. If this were a site where multiple people were creating pull requests and merging code in, I might reconsider it - SQLite files are binaries so there’s no meaningful way for Git to diff them, making merge conflicts very common. But this is my site, and I’ll merge whatever I want.
|
||||
For my use, this is absolutely fine. If this were a site where multiple people were creating pull requests and merging code in, I might reconsider it - SQLite files are binaries so there’s no meaningful way for Git to diff them, making merge conflicts very common. But this is my site, and I’ll merge whatever I want.
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "Adding comments to my blog"
|
||||
date: 2022-11-05T00:00:00
|
||||
slug: adding-comments-to-my-blog
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Yet more Eleventy-related things!
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "Adding statically-generated Open Graph images"
|
||||
date: 2022-11-02T00:00:00
|
||||
slug: adding-statically-generated-open-graph-images
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Open Graph images are what websites such as Twitter choose to display when showing a preview to a page. There are plenty of ways to generate these dynamically - like using Netlify Edge Functions, for one.
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "Okay now I actually have Open Graph images"
|
||||
date: 2022-11-04T00:00:00
|
||||
slug: okay-now-i-actually-have-open-graph-images
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Two days ago, I wrote that I had [added statically-generated Open Graph images](https://lewisdale.dev/post/adding-statically-generated-open-graph-images/), and technically this was the truth. With one minor issue: they didn't work on Twitter!
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "You can be friends with my blog"
|
||||
date: 2022-11-08T00:00:00
|
||||
slug: you-can-be-friends-with-my-blog
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Like almost everyone else it seems, I've [opened a Mastodon account](https://dapchat.online/@lewisdaleuk). When reading about the standard that Mastodon is built on, [ActivityPub](https://www.w3.org/TR/activitypub/), I had an idea: why not try and implement some of it with Netlify functions.
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Choosing a CMS to use with Eleventy"
|
||||
date: 2022-12-29T11:37:59
|
||||
slug: choosing-a-cms-to-use-with-eleventy
|
||||
|
||||
---
|
||||
---
|
||||
title: "Choosing a CMS to use with Eleventy"
|
||||
date: 2022-12-29T11:37:59
|
||||
slug: choosing-a-cms-to-use-with-eleventy
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
After my last post, I decided that I would in fact start using a CMS, so I took a look at some of the options available to me. My criteria for choosing a CMS were:
|
||||
|
||||
- Lightweight
|
||||
@ -24,4 +25,4 @@ Let’s see how it goes - I might end up moving to Wordpress in the end regardle
|
||||
|
||||
## [Update](https://lewisdale.dev/post/choosing-a-cms-to-use-with-eleventy/#update)
|
||||
|
||||
It turns out that Netlify CMS isn’t very well supported anymore - in particular it’s still not mobile-friendly, despite having an open issue for it for 5 years. I’m going to keep an eye out for an alternative.
|
||||
It turns out that Netlify CMS isn’t very well supported anymore - in particular it’s still not mobile-friendly, despite having an open issue for it for 5 years. I’m going to keep an eye out for an alternative.
|
||||
|
@ -2,10 +2,11 @@
|
||||
title: "Get your Eleventy site onto the Fediverse"
|
||||
date: 2022-12-12T00:00:00
|
||||
slug: get-your-eleventy-site-onto-the-fediverse
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
A little while ago, [I brought my blog to the Fediverse](https://lewisdale.dev/post/you-can-be-friends-with-my-blog). This was a fun experiment which resulted in me turning my Netlify-hosted blog into an instance.
|
||||
|
||||
Now, you can do (some of that) too! I’ve built an Eleventy plugin: [eleventy-plugin-activity-pub](https://www.npmjs.com/package/eleventy-plugin-activity-pub). You can include this in your `.eleventy.js` file to generate a simple actor & webfinger JSON file that will your website discoverable as a Fediverse user.
|
||||
|
||||
A little while ago, [I brought my blog to the Fediverse](https://lewisdale.dev/post/you-can-be-friends-with-my-blog). This was a fun experiment which resulted in me turning my Netlify-hosted blog into an instance.
|
||||
|
||||
Now, you can do (some of that) too! I’ve built an Eleventy plugin: [eleventy-plugin-activity-pub](https://www.npmjs.com/package/eleventy-plugin-activity-pub). You can include this in your `.eleventy.js` file to generate a simple actor & webfinger JSON file that will your website discoverable as a Fediverse user.
|
||||
|
||||
It’s early days for the plugin, but the source is available [on Github](https://github.com/lewisdaleuk/eleventy-plugin-activity-pub) and Pull Requests are absolutely welcome. I’d like to expand the functionality to provide facilities for integrating with Mastodon’s API for commenting & publishing, as well as allowing you to act as an alias for an existing user - but what that will look like I’m not sure, possibly a separate plugin.
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Managing my reading list with BookWyrm"
|
||||
date: 2022-12-16T00:00:00
|
||||
slug: managing-my-reading-list-with-bookwyrm
|
||||
|
||||
---
|
||||
---
|
||||
title: "Managing my reading list with BookWyrm"
|
||||
date: 2022-12-16T00:00:00
|
||||
slug: managing-my-reading-list-with-bookwyrm
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
A little while ago [I wrote about managing my reading list using a JSON file](/post/managing-my-reading-list). Then I decided that was too _easy_, so I [starting using an SQLite database instead](/post/moving-my-reading-list-out-of-json).
|
||||
|
||||
Moving my reading list to JSON was a mistake, to be frank. Data is spread across three tables, and there's no easy way to reference the schema while I'm adding new entries, as I mostly do it via the slqite3 CLI.
|
||||
@ -26,4 +27,4 @@ I've not finished moving my list over yet, but once I do, I'll be switching over
|
||||
|
||||
### Update: I hit a snag!
|
||||
|
||||
It turns out that BookWyrm only allows up to 10 items in an RSS feed, with no pagination! Luckily, I'd forgotten about outbox files - every profile has public outboxes that show the public feeds. I've updated the plugin to use this instead, which works nicely. I've lost some of my dates on my reading list, but I guess that's a small price to pay.
|
||||
It turns out that BookWyrm only allows up to 10 items in an RSS feed, with no pagination! Luckily, I'd forgotten about outbox files - every profile has public outboxes that show the public feeds. I've updated the plugin to use this instead, which works nicely. I've lost some of my dates on my reading list, but I guess that's a small price to pay.
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "Microblogging with Eleventy"
|
||||
date: 2022-12-30T21:24:54
|
||||
slug: microblogging-with-eleventy
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Given the drive to move all of my content into one place and syndicate it to other networks, I decided that I'd also try out doing microblog-style posts with Eleventy. Before I could do that, I needed to add a CMS (there's no way I'm manually adding Markdown files everytime I want to post a status).
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "Adding categories to Eleventy"
|
||||
date: 2022-05-28T00:00:00
|
||||
slug: adding-categories-to-eleventy
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
I've decided to put a bit more love into this blog, I've neglected it since the new year. As part of that, I wanted to make a few more changes - namely, I wanted some better navigation to allow me to write different types of content. So, I've added a little category list to the site to allow people to search by different tags.
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Managing my reading list"
|
||||
date: 2022-06-12T00:00:00
|
||||
slug: managing-my-reading-list
|
||||
|
||||
---
|
||||
---
|
||||
title: "Managing my reading list"
|
||||
date: 2022-06-12T00:00:00
|
||||
slug: managing-my-reading-list
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
A little while ago I was toying with building a lightweight web app that would make it easy to manage and share reading lists. I never got around to making it, but instead I built a very-MVP version by adding my [reading list](/reading-list) to this website. It was a fairly simple construction, I simply added a file called `reading-list.11tydata.json` to my source directory, that looked like this:
|
||||
|
||||
```json
|
||||
@ -78,4 +79,4 @@ You can see the results for yourself on the [reading list](/reading-list/), ~~or
|
||||
There are a few limitations: I can't fine-tune what version of the book the API returns without more work, and I've got no control over the descriptions provided. But, I think it's a fair compromise to achieve what I wanted.
|
||||
|
||||
Overall, this was a fun little late-night project to pick up. As usual, I love how easy Eleventy makes tasks like this.
|
||||
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Why I don’t write React anymore"
|
||||
date: 2022-06-23T00:00:00
|
||||
slug: why-i-dont-write-react-anymore
|
||||
|
||||
---
|
||||
---
|
||||
title: "Why I don’t write React anymore"
|
||||
date: 2022-06-23T00:00:00
|
||||
slug: why-i-dont-write-react-anymore
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Earlier this year I made the decision to stop working in React. I'd just come out of a project using a modern JS tech stack that used Next.js, and I couldn't get over how _complex_ the whole thing had become, and how little I enjoyed the work.
|
||||
|
||||
It felt like every new feature and change had a _huge_ overhead. To create a modal dialog, creating something extremely common, like a dialog, became like reinventing the wheel each time: create the dialog component, oh, now we need a component for the content, and now we also need components for the controls (which are different each time), and now we need to handle the component lifecycle with hooks. Suddenly, without realising, a dialog takes 4 different files and a whole plate of spaghetti code to get functional.
|
||||
@ -14,4 +15,4 @@ Every component feels like a chore. In short, it felt that like for every featur
|
||||
|
||||
For most projects, I've found you don't need a slow, JS-laden server-side generated web app with hydration and all of the overheads that come with it. If all I'm making is a static or infrequently-updated website, I'll use something like [Eleventy](https://11ty.dev) (which this website is built with). Otherwise, I'll generally opt for a "classic" multi-page application. A backend server that handles the business logic, and uses that to provide data to the frontend.
|
||||
|
||||
This means that I can build fast client-side experiences, without sending a huge javascript bundle. If I need some client-side interactivity, Web Components are standardised and at least [partially supported across all major browsers](https://caniuse.com/?search=web%20components). Likewise, if I need reusable components, templating languages like [Nunjucks](https://mozilla.github.io/nunjucks/) can provide that without adding too much complexity.
|
||||
This means that I can build fast client-side experiences, without sending a huge javascript bundle. If I need some client-side interactivity, Web Components are standardised and at least [partially supported across all major browsers](https://caniuse.com/?search=web%20components). Likewise, if I need reusable components, templating languages like [Nunjucks](https://mozilla.github.io/nunjucks/) can provide that without adding too much complexity.
|
||||
|
@ -2,10 +2,11 @@
|
||||
title: "Note-taking: 1 week in"
|
||||
date: 2023-01-17T17:04:46
|
||||
slug: note-taking-1-week-in
|
||||
|
||||
tags:
|
||||
- obsidian
|
||||
---
|
||||
A week ago I wrote about wanting to [get better at note-taking](https://lewisdale.dev/post/note-taking-and-retaining-information/). My goal was to try and use Obsidian.md to take notes.
|
||||
|
||||
Well, a week in and it's gone surprisingly well. I configured a template for my daily note with a todo list, list of meetings, and notes. I have configured Obsidian to open a new daily note at the start of each day. This means I don't need to manually create notes, which added mental overhead.
|
||||
|
||||
A week ago I wrote about wanting to [get better at note-taking](https://lewisdale.dev/post/note-taking-and-retaining-information/). My goal was to try and use Obsidian.md to take notes.
|
||||
|
||||
Well, a week in and it's gone surprisingly well. I configured a template for my daily note with a todo list, list of meetings, and notes. I have configured Obsidian to open a new daily note at the start of each day. This means I don't need to manually create notes, which added mental overhead.
|
||||
|
||||
A week in and I've taken notes every single day! They're fairly short, but they're only for me, and it means I've actually got a log of what I was thinking through the day.
|
||||
|
@ -2,12 +2,13 @@
|
||||
title: "Note-taking and retaining information"
|
||||
date: 2023-01-10T09:25:47
|
||||
slug: note-taking-and-retaining-information
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
One of the things I struggle with the most is note-taking: I can't do it during meetings because then I'm distracted by the writing and not, you know, participating. So I end up not doing it at all, and then I have absolutely no record of what was said and often forget things.
|
||||
|
||||
I'm going to _try_ to improve this, hopefully with a decent set up that works for me. I quite like writing in Markdown, purely because I know how to be productive with it (unless I need to add a link, in which case I will get the square braces and parentheses the wrong way round 100% of the time). So my plan is to use [Obsidian](https://obsidian.md) to take my notes, mostly because I've seen people write good things about it, and at the end of the day it's a text editor pointed at a directory, so it's easy to set up.
|
||||
|
||||
I'm not going to take notes during meetings, but I will set aside 5 minutes after each meeting to write up my thoughts while they're fresh. I'm also going to try and write down anything I learn while working on a project/with a service, in the hope that I'll be able to share it with others and it be useful.
|
||||
|
||||
One of the things I struggle with the most is note-taking: I can't do it during meetings because then I'm distracted by the writing and not, you know, participating. So I end up not doing it at all, and then I have absolutely no record of what was said and often forget things.
|
||||
|
||||
I'm going to _try_ to improve this, hopefully with a decent set up that works for me. I quite like writing in Markdown, purely because I know how to be productive with it (unless I need to add a link, in which case I will get the square braces and parentheses the wrong way round 100% of the time). So my plan is to use [Obsidian](https://obsidian.md) to take my notes, mostly because I've seen people write good things about it, and at the end of the day it's a text editor pointed at a directory, so it's easy to set up.
|
||||
|
||||
I'm not going to take notes during meetings, but I will set aside 5 minutes after each meeting to write up my thoughts while they're fresh. I'm also going to try and write down anything I learn while working on a project/with a service, in the hope that I'll be able to share it with others and it be useful.
|
||||
|
||||
Plus, because I'm producing Markdown files, if I decide I want to scratch an itch I could build myself a little Wiki site using Eleventy. Because I'm nothing if not great at overcomplicating my personal tech stack.
|
||||
|
@ -2,10 +2,10 @@
|
||||
title: "TIL: Adding a subreddit RSS feed"
|
||||
date: 2023-01-15T10:49:23
|
||||
slug: til-adding-a-subreddit-rss-feed
|
||||
tags: [til]
|
||||
tags: [TIL]
|
||||
---
|
||||
I like to read some story-based Subreddits, like [/r/TalesFromTechSupport](https://reddit.com/r/talesfromtechsupport), but also don't like having to go to the Reddit app (well, Apollo) specifically to read these stories because I end up missing them.
|
||||
|
||||
As it turns out, Reddit does publish RSS feeds for Subreddits, at ` https://www.reddit.com/r/<subreddit>/new/.rss?sort=new`.
|
||||
|
||||
I like to read some story-based Subreddits, like [/r/TalesFromTechSupport](https://reddit.com/r/talesfromtechsupport), but also don't like having to go to the Reddit app (well, Apollo) specifically to read these stories because I end up missing them.
|
||||
|
||||
As it turns out, Reddit does publish RSS feeds for Subreddits, at ` https://www.reddit.com/r/<subreddit>/new/.rss?sort=new`.
|
||||
|
||||
I've added this to my RSS reader and new posts now show up in my feeds. It works best with relatively low-volume Subreddits - a popular one would be a bit overwhelming for me.
|
||||
|
@ -2,7 +2,7 @@
|
||||
title: "TIL: Adding text borders with CSS"
|
||||
date: 2023-01-12T19:25:42
|
||||
slug: til-adding-text-borders-with-css
|
||||
tags: [til]
|
||||
tags: [TIL]
|
||||
---
|
||||
After checking my website on mobile, I realised that I'd made a mistake, and included a pretty bad colour contrast issue on the page:
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
---
|
||||
title: "TIL: Forwarding ports using SSH and proxying with Apache"
|
||||
date: 2023-01-16T08:33:18
|
||||
slug: til-forwarding-ports-using-ssh-and-proxying-with-apache
|
||||
tags: [til]
|
||||
---
|
||||
---
|
||||
title: "TIL: Forwarding ports using SSH and proxying with Apache"
|
||||
date: 2023-01-16T08:33:18
|
||||
slug: til-forwarding-ports-using-ssh-and-proxying-with-apache
|
||||
tags: [TIL]
|
||||
---
|
||||
I have two servers: a VPS, and a small server that I primarily use on my home network. The server at home is quite a bit more powerful than my VPS, and significantly cheaper to run, so I'd like to start moving some of my hosted services to it. The problem is that I don't have a static IP, so I'd need to get dynamic DNS setup and open the right ports on my router, which is a bit tedious (and not officially supported by my ISP).
|
||||
|
||||
My interim solution is to use port-forwarding via SSH, wherein I can specify a target host and port, and map it to a local port, so that requests on the target machine that go to `http://localhost:<port>` will instead be directed to the machine running SSH ([relevant guide on Ubuntu documentation](https://help.ubuntu.com/community/SSH/OpenSSH/PortForwarding)). The basic command looks like this:
|
||||
@ -43,4 +43,4 @@ I'm using Apache on my server, because that's what the Wordpress auto-installer
|
||||
</VirtualHost>
|
||||
```
|
||||
|
||||
I'm not including SSL in the above config, which you absolutely should enable for this, because I use [certbot](https://certbot.eff.org/), which generates the configuration for me. Add this to `/etc/apache2/sites-available/<site-name>.conf` and activate it with `a2siteenable <site-name>`. Restart apache, and assuming the domain is configured correctly, it should be accessible at the domain configured as `ServerName`.
|
||||
I'm not including SSL in the above config, which you absolutely should enable for this, because I use [certbot](https://certbot.eff.org/), which generates the configuration for me. Add this to `/etc/apache2/sites-available/<site-name>.conf` and activate it with `a2siteenable <site-name>`. Restart apache, and assuming the domain is configured correctly, it should be accessible at the domain configured as `ServerName`.
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Using Obsidian for meal planning"
|
||||
date: 2023-11-30T21:26:43
|
||||
slug: using-obsidian-for-meal-planning
|
||||
|
||||
---
|
||||
---
|
||||
title: "Using Obsidian for meal planning"
|
||||
date: 2023-11-30T21:26:43
|
||||
slug: using-obsidian-for-meal-planning
|
||||
tags:
|
||||
- obsidian
|
||||
---
|
||||
In my [App defaults post](https://lewisdale.dev/post/app-defaults), I mentioned I use [Obsidian](https://obsidian.md) for various tasks, one of them being meal planning, so I thought I'd share how I actually manage that.
|
||||
|
||||
## Requirements
|
||||
@ -39,4 +40,4 @@ Then, I pick use that number as an index to select at most two of the recipes th
|
||||
![Screenshot showing a heading that says "Meal Plan". The subheading lists two meals under "Lunch": Stir-fried chicken & vegetables, and Lemon & Garlic Butter Shrimp](./src/images/Screenshot-2023-11-30-at-21.24.16.png)
|
||||
|
||||
And that's more-or-less it. I'm only generating my lunch meal plan at the minute - I have one for dinner but I've not got many recipes, so unless I want to eat the same thing every night until the end of time it's best to ignore it.
|
||||
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "Using WebC for progressively-enhanced UI elements"
|
||||
date: 2023-02-23T10:17:01
|
||||
slug: using-webc-for-progressively-enhanced-ui-elements
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
Now I'm back in Eleventy-land, I thought I'd give [WebC](https://github.com/11ty/webc) a go. For those unaware, it's a templating language that generates Web Components, complete with asset bundling.
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
title: "Using WordPress as a Markdown editor"
|
||||
date: 2023-02-18T21:56:35
|
||||
slug: using-wordpress-as-a-markdown-editor
|
||||
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
The eagle-eyed among you will notice that my website's had a slight refresh - and by that I mean I got bored of that ZX Spectrum theme roughly 45 seconds after publishing it.
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
---
|
||||
title: "Bringing my omg.lol Now page into Eleventy"
|
||||
date: 2023-03-07T09:52:55
|
||||
slug: bringing-my-omg-lol-now-page-into-eleventy
|
||||
|
||||
---
|
||||
---
|
||||
title: "Bringing my omg.lol Now page into Eleventy"
|
||||
date: 2023-03-07T09:52:55
|
||||
slug: bringing-my-omg-lol-now-page-into-eleventy
|
||||
tags:
|
||||
- eleventy
|
||||
---
|
||||
[Robb Knight](https://rknight.me) has [this great Javascript tool](https://omgnow.rknight.me/) for embedding your [omg.lol](https://omg.lol) /now page in another page.
|
||||
|
||||
I thought it was pretty cool to use, but because I'm allergic to client-side Javascript, I wanted to port it to Eleventy so that I could generate it once-per-build. It was actually pretty simple to do, because the [server-side source for omgnow.js is on Github](https://github.com/rknightuk/omgnow.js). So this was basically a port-to-JS job.
|
||||
@ -53,4 +54,4 @@ module.exports = {
|
||||
```
|
||||
|
||||
And there you have it! Robb's source made this 1000x easier that it would have been. The only thing I need to do is stop stripping out the omg.lol icon sets, and instead replace them with the icons I actually have - my markdown config mostly duplicates the same fontawesome set.
|
||||
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
---
|
||||
title: Detecting Markdown titles with Eleventy
|
||||
tags:
|
||||
- Eleventy
|
||||
- Obsidian
|
||||
- eleventy
|
||||
- obsidian
|
||||
date: 2024-01-10T08:44:57Z
|
||||
---
|
||||
|
||||
|
@ -1,6 +1,8 @@
|
||||
---
|
||||
title: Simplifying things for 2024
|
||||
tags: meta
|
||||
tags:
|
||||
- meta
|
||||
- eleventy
|
||||
date: 2024-01-01T13:46:35Z
|
||||
---
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: "TIL: Why Date.parse gives unexpected results for GMT"
|
||||
tags:
|
||||
- Javascript
|
||||
- javascript
|
||||
- TIL
|
||||
date: 2024-02-12T14:53:51Z
|
||||
---
|
||||
|
@ -8,13 +8,13 @@
|
||||
"alias": "tag"
|
||||
},
|
||||
"eleventyComputed": {
|
||||
"permalink": "/post/tag/{{ tag }}/",
|
||||
"permalink": "/post/tag/{{ tag | slugify }}/",
|
||||
"feeds": {
|
||||
"rss": "{{ page.url }}rss.xml",
|
||||
"atom": "{{ page.url }}atom.xml",
|
||||
"json": "{{ page.url }}feed.json"
|
||||
}
|
||||
},
|
||||
},
|
||||
"eleventyImport": {
|
||||
"collections": ["tags", "posts"]
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ pagination:
|
||||
size: 1
|
||||
alias: tag
|
||||
eleventyComputed:
|
||||
permalink: "/post/tag/{{ tag }}/atom.xml"
|
||||
permalink: "/post/tag/{{ tag | slugify }}/atom.xml"
|
||||
eleventyExcludeFromCollections: true
|
||||
eleventyImport:
|
||||
collections: ["posts", "tags"]
|
||||
|
@ -4,7 +4,7 @@ pagination:
|
||||
size: 1
|
||||
alias: tag
|
||||
eleventyComputed:
|
||||
permalink: "/post/tag/{{ tag }}/feed.json"
|
||||
permalink: "/post/tag/{{ tag | slugify }}/feed.json"
|
||||
eleventyExcludeFromCollections: true
|
||||
eleventyImport:
|
||||
collections: ["posts", "tags"]
|
||||
|
@ -4,7 +4,7 @@ pagination:
|
||||
size: 1
|
||||
alias: tag
|
||||
eleventyComputed:
|
||||
permalink: "/post/tag/{{ tag }}/rss.xml"
|
||||
permalink: "/post/tag/{{ tag | slugify }}/rss.xml"
|
||||
eleventyExcludeFromCollections: true
|
||||
eleventyImport:
|
||||
collections: ["posts", "tags"]
|
||||
|
Loading…
Reference in New Issue
Block a user