Posts are now a distinct content collection. If you’re seeing this, they are being merged with other content types at build time to generate daily entries. Currently, both days and individual posts can be tagged. Posts are tagged in Markdown frontmatter while days are tagged in a separate YAML metadata collection.
Writing
Posts are back.
VOD
Bedroom
1,439 minOn YouTube
GitHub commits
ohnsh/days17
- Moved day tags to top, right under title. No longer rendering year in title for posts later than this month last year.
e967ecc - Fixed sidebar month-rendering bug related to JavaScript date parsing (i.e. plain dates are usually interpreted as midnight local time, but sometimes as midnight UTC, creating weird day/month/year boundary issues.)
bf3867d - Changed tagMap values to Set<DayEntry> instead of DayEntry[] to avoid duplicates. (For example, I had both today and a post from today tagged "test" which caused the day to render twice at tags/test.) Also switched on title rendering for days on tags route.
0be0f3d - Sidebar now working on tags routes.
6fb8ecd - Tag route is in decent shape now except the sidebar. Lots of refactoring and cleanup in src/lib. De-duplicating filtering and sidebar processing in components by moving it to lib/day.ts and lib/sidebar.ts. Learned to be very careful abou what I import in astro.config.mjs (created lib/const.ts with no side effects or dependencies for this purpose).
e08ff97 - Day tags and post tags now being rendered. It's confusing when they're adjacent--I'll need to think that through. The /tags route is mostly working without me even touching it. There are a few things to fix up, especially the sidebar.
050f19d - Posts now rendering. Overall intra-day layout needs a lot of work, but the content is mostly there. Still need to merge in tagging/metadata from yaml collection. Also need to get og:image working again.
5e0cd80 - Prepping posts to be merged into daily feed.
c0110b6 - Fixed sidebar regression where the header and footer was lost when I started dynamically generating the content. Now the static config is a template with a literal '<slot />' item that is replaced dynamically with the generated entries.
5466c2e - Add wrangler to gitignore.
e7655b5 - Merge branch 'virtual-days'
f964df6 - Titles fixed, filtering implemented (year >= 2025 for now).
c5efb3f - Getting close. All routes rendering, pagination working. Still need to render actual post content, fix up titles, filter days, and get og:image extraction working again.
9f10ebe - Refactoring new code.
ef745d5 - Auto-collapse all but first year and month.
54f19fa - Proof of concept. It works. Needs lots of work, though.
a4bbe2f - Getting there.
bd544b9