Skip to content

Commit 40750a9

Browse files
authored
Merge pull request #83 from weeklydevchat/feature/tag-all-posts
Add tags and categories to posts, and create a default tag page
2 parents dcc5666 + 2e33858 commit 40750a9

File tree

82 files changed

+551
-130
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+551
-130
lines changed

AGENTS.md

Lines changed: 44 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ This is the **Weekly Dev Chat** website, a static site built with MkDocs Materia
3636
├── .authors.yml # Author metadata (chris, norm, omar)
3737
├── index.md # Homepage
3838
├── join.md # How to join the chat
39+
├── tags.md # Tags index page (auto-populated by tags plugin)
3940
├── past_topics.md # Archived topics (excluded from build)
4041
├── hosts/
4142
│ └── index.md # Current hosts page
@@ -76,13 +77,19 @@ This is the **Weekly Dev Chat** website, a static site built with MkDocs Materia
7677
2. **blog**: Enables blog functionality
7778
- Blog directory: Root (`.`)
7879
- Pagination: 3 posts per page
80+
3. **tags**: Enables tag-based categorization and browsing
81+
- Tags index page: `docs/tags.md` (configured via `tags_file`)
82+
- Tags are defined in blog post frontmatter
83+
- The plugin auto-generates a tag listing with links to all posts for each tag
7984

8085
### Navigation Structure
8186
- Home (index.md)
8287
- Join (join.md)
8388
- Hosts (hosts/index.md)
8489
- Past Hosts (past-hosts/index.md)
8590
- Sponsors (sponsors/index.md)
91+
- Bold Predictions 2026 (bold-predictions-2026.md)
92+
- Tags (tags.md)
8693

8794
### Markdown Extensions
8895
- `attr_list`: Allows specifying image dimensions and attributes
@@ -112,10 +119,28 @@ Blog posts are organized by date: `docs/posts/YYYY/MM/DD/index.md`
112119
title: "Your Blog Post Title"
113120
date: YYYY-MM-DD
114121
authors:
115-
- chris | norm | omar # One or more authors
122+
- chris | norm | omar # One or more authors
123+
categories:
124+
- Category Name # e.g., Business, Career, Community, Culture, Security, Technical
125+
tags:
126+
- tag-name # Lowercase, hyphenated tags for topic filtering
116127
---
117128
```
118129

130+
### Categories and Tags
131+
132+
**Categories** are broad topic groupings displayed on blog post cards. Common categories include:
133+
- Business
134+
- Career
135+
- Community
136+
- Culture
137+
- Security
138+
- Technical
139+
140+
**Tags** are specific topic labels used for fine-grained filtering. Tags appear on the **Tags** page (`docs/tags.md`), which is auto-generated by the Material for MkDocs tags plugin. Each tag links to a listing of all posts with that tag.
141+
142+
Examples of tags: `cybersecurity`, `pair-programming`, `ai`, `open-source`, `testing`, `devops`
143+
119144
### Post Content Template
120145
```markdown
121146
TOPIC_INTRODUCTION_HERE
@@ -265,6 +290,7 @@ The following are ignored:
265290
### For Content Changes
266291
- `docs/index.md` - Homepage content
267292
- `docs/join.md` - Join instructions
293+
- `docs/tags.md` - Tags index page (content auto-generated by tags plugin)
268294
- `docs/hosts/index.md` - Current hosts information
269295
- `docs/sponsors/index.md` - Sponsor information
270296
- `docs/posts/YYYY/MM/DD/index.md` - Blog posts
@@ -291,7 +317,11 @@ The following are ignored:
291317
title: "Topic Title"
292318
date: YYYY-MM-DD
293319
authors:
294-
- chris
320+
- chris
321+
categories:
322+
- Category Name
323+
tags:
324+
- relevant-tag
295325
---
296326
```
297327
4. **Add content** following the template
@@ -345,7 +375,7 @@ The following are ignored:
345375
1. **Never modify** `.github/workflows/ci.yml` unless explicitly requested - deployment is automated and stable
346376
2. **Always test locally** before pushing changes to main branch
347377
3. **Blog posts must follow** the date-based directory structure: `YYYY/MM/DD/`
348-
4. **Frontmatter is required** for all blog posts (title, date, authors)
378+
4. **Frontmatter is required** for all blog posts (at minimum: `title`, `date`, `categories`, `tags`; new or updated posts should also include `authors`)
349379
5. **Images for blog posts** should be placed in the same directory as the post's `index.md`
350380
6. **The site uses** Material for MkDocs theme - refer to https://squidfunk.github.io/mkdocs-material/ for advanced features
351381
7. **Custom CSS** should be minimal and placed in `docs/stylesheets/extra.css`
@@ -393,6 +423,16 @@ The blog plugin is configured with:
393423

394424
For more blog plugin features, see: https://squidfunk.github.io/mkdocs-material/plugins/blog/
395425

426+
## MkDocs Material Tags Plugin Details
427+
428+
The tags plugin is configured with:
429+
- **Tags file**: `docs/tags.md` - serves as the tags index page
430+
- **Auto-generated listing**: The `<!-- material/tags -->` marker in `tags.md` is replaced with a tag cloud linking to per-tag post listings
431+
- **Frontmatter integration**: Tags are defined per-post in the `tags:` frontmatter field
432+
- **Navigation**: The Tags page is linked in the site navigation bar
433+
434+
For more tags plugin features, see: https://squidfunk.github.io/mkdocs-material/plugins/tags/
435+
396436
## Troubleshooting
397437

398438
### Build Fails
@@ -422,6 +462,7 @@ For more blog plugin features, see: https://squidfunk.github.io/mkdocs-material/
422462
- **MkDocs Documentation**: https://www.mkdocs.org
423463
- **Material for MkDocs**: https://squidfunk.github.io/mkdocs-material/
424464
- **Blog Plugin**: https://squidfunk.github.io/mkdocs-material/plugins/blog/
465+
- **Tags Plugin**: https://squidfunk.github.io/mkdocs-material/plugins/tags/
425466
- **GitHub Pages**: https://docs.github.com/en/pages
426467
- **Site**: https://weeklydevchat.github.io
427468

README.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ A static website for the Weekly Dev Chat community - a weekly virtual developer
1111

1212
This is a static site built with [MkDocs Material](https://squidfunk.github.io/mkdocs-material/) and hosted on GitHub Pages. The site features:
1313
- Weekly blog posts for Tuesday chat topics
14+
- Tag-based browsing to filter posts by topic
1415
- Host information and community guidelines
1516
- Sponsor information
1617
- Automatic deployment via GitHub Actions
@@ -94,7 +95,11 @@ These scripts will:
9495
title: "Your Blog Post Title"
9596
date: YYYY-MM-DD
9697
authors:
97-
- chris
98+
- chris
99+
categories:
100+
- Category Name
101+
tags:
102+
- relevant-tag
98103
---
99104
```
100105

@@ -109,6 +114,14 @@ These scripts will:
109114

110115
4. Add any images to the same directory as the post
111116

117+
### Categories and Tags
118+
119+
Categories are broad topic groupings and tags are specific topic labels for filtering. New categories and tags can be added as needed — these are the ones currently in use.
120+
121+
**Categories**: Business, Career, Community, Culture, Security, Technical
122+
123+
**Tags**: `administration`, `advent-of-code`, `advent-of-cyber`, `agile`, `ai`, `architecture`, `branding`, `cancelled`, `career`, `change-management`, `claude`, `code-quality`, `coding-challenges`, `coding-practices`, `community`, `conferences`, `creativity`, `ctf`, `culture`, `curriculum`, `cybersecurity`, `data`, `databases`, `design-patterns`, `devops`, `editors`, `education`, `entrepreneurship`, `ergonomics`, `estimation`, `ethics`, `events`, `finance`, `github-copilot`, `goals`, `gratitude`, `growth`, `habits`, `hacktoberfest`, `hardware`, `health`, `hiring`, `history`, `holiday`, `industry`, `infrastructure`, `innovation`, `inspiration`, `irl`, `job-market`, `learning`, `local-tech`, `marketing`, `meetup`, `meetups`, `metaphors`, `methodology`, `metrics`, `mob-programming`, `motivation`, `naming`, `networking`, `open-discussion`, `open-source`, `optimization`, `organizations`, `pair-programming`, `performance`, `philosophy`, `picoctf`, `predictions`, `priorities`, `privacy`, `productivity`, `project-management`, `prototyping`, `quality-assurance`, `reflection`, `remote-work`, `resilience`, `security`, `self-hosting`, `self-improvement`, `side-projects`, `society`, `supply-chain`, `surveys`, `swap-meet`, `systems`, `tdd`, `teaching`, `teamwork`, `technology`, `testing`, `thinking`, `time-management`, `tools`, `trends`, `unconference`, `version-control`, `watch-party`, `wellness`, `work-life-balance`, `workplace`, `workspace`, `year-in-review`
124+
112125
## Project Structure
113126

114127
```
@@ -126,6 +139,7 @@ These scripts will:
126139
├── .authors.yml # Author metadata
127140
├── index.md # Homepage
128141
├── join.md # How to join
142+
├── tags.md # Tags index page (auto-populated by tags plugin)
129143
├── hosts/ # Current hosts
130144
├── past-hosts/ # Past hosts
131145
├── sponsors/ # Sponsors
@@ -187,6 +201,7 @@ When updates are available, Dependabot creates pull requests automatically. Revi
187201
- [MkDocs Documentation](https://www.mkdocs.org)
188202
- [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/)
189203
- [Material Blog Plugin](https://squidfunk.github.io/mkdocs-material/plugins/blog/)
204+
- [Material Tags Plugin](https://squidfunk.github.io/mkdocs-material/plugins/tags/)
190205
- [GitHub Pages Documentation](https://docs.github.com/en/pages)
191206

192207
## Community

docs/posts/2024/09/2024-09-10-picoctf-gym-pairing/index.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
---
22
title: " PicoCTF Gym Pairing"
33
date: 2024-09-10
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Security
6+
tags:
7+
- cybersecurity
8+
- ctf
9+
- picoctf
10+
- pair-programming
911
---
1012

1113
We will be doing some pair practice hacking using [PicoCTF gym](https://picoctf.org/index.html#picogym). No need to create your own PicoCTF account unless you want too.  I'll be sharing my screen and we will work together to solve some PicoCTF examples.

docs/posts/2024/09/2024-09-17-privacy-does-it-matter-anymore/index.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
---
22
title: " Privacy, does it matter anymore?"
33
date: 2024-09-17
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Security
6+
tags:
7+
- cybersecurity
8+
- privacy
9+
- data
910
---
1011

1112
In this chat we will discuss privacy and if people think it matters anymore. I figure by now all my personal information is already out there (e.g. credit card, SIN, names, etc) that it doesn't matter anymore but I'm likely mistaken.

docs/posts/2024/09/2024-09-24-live-from-bsides-maybe/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
22
title: " Live from BSides (maybe?)"
33
date: 2024-09-18
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Security
6+
tags:
7+
- cybersecurity
8+
- conferences
99
---
1010

1111
The initial topic is security in general. I'll be hosting live from BSides and hopefully there won't be an technical details. Looking forward to chatting about what I've learned at BSides and any security topics we haven't touched on during this month.

docs/posts/2024/10/2024-10-01-the-pumpkin-spice-latte-of-software-development-trends-and-fads/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
22
title: " The Pumpkin Spice Latte of Software Development: Trends and Fads"
33
date: 2024-10-01
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Culture
6+
tags:
7+
- trends
8+
- industry
99

1010
---
1111

docs/posts/2024/10/2024-10-08-harvest-time-reaping-the-benefits-of-past-investments/index.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
---
22
title: " Harvest Time: Reaping the Benefits of Past Investments"
33
date: 2024-10-08
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Career
6+
tags:
7+
- reflection
8+
- career
9+
- growth
910
---
1011

1112
What seeds have you planted in the past that you are now harvesting?  For example, any skills you spent the time mastering that are now paying off?  Any other past investments that you are now reaping the benefits of? 

docs/posts/2024/10/2024-10-15-giving-thanks-celebrating-successes-and-gratitude/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
22
title: " Giving Thanks: Celebrating Successes and Gratitude"
33
date: 2024-10-15
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Culture
6+
tags:
7+
- reflection
8+
- gratitude
99
coverImage: "2022-10-15_featured_image.webp"
1010
---
1111

docs/posts/2024/10/2024-10-22-winterizing-your-codebase-preparing-for-stormy-weather/index.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
---
22
title: " Winterizing Your Codebase: Preparing for Stormy Weather"
33
date: 2024-10-22
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Technical
6+
tags:
7+
- coding-practices
8+
- resilience
9+
- code-quality
910
coverImage: "Winterizing-Your-Codebase-Preparing-for-Stormy-Weather.webp"
1011
---
1112

docs/posts/2024/10/2024-10-29-unmasking-code-identifying-and-understanding-code-smells/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
22
title: " Unmasking Code - Identifying and Understanding Code Smells"
33
date: 2024-10-29
4-
categories:
5-
- "events"
6-
tags:
7-
- "event"
8-
- "virtual"
4+
categories:
5+
- Technical
6+
tags:
7+
- coding-practices
8+
- code-quality
99
coverImage: "2024-10-28_Unmasking_Code-Identifying_and_Understanding_Code-Smells.webp"
1010
---
1111

0 commit comments

Comments
 (0)