-
Notifications
You must be signed in to change notification settings - Fork 0
Search
Alexander Refsum Jensenius edited this page Jun 21, 2026
·
3 revisions
Full-text client-side search backed by a Jekyll-generated JSON index.
-
Index —
site/search.jsonis a Liquid template rendered at build time into a JSON array of all indexable content. -
UI —
site/search/index.htmlfetches the index and filters in JavaScript as the user types.
| Content |
type value |
|---|---|
| Jekyll pages | page |
site/_events/ |
event |
site/_news/ |
news |
site/_directory/people/ |
person |
site/_directory/institutions/ |
institution |
site/_directory/projects/ |
project |
{
"title": "...",
"url": "/events/2026-03-12-meshup07/",
"date": "2026-03-12",
"categories": ["MeshUp", "WP7"],
"tags": ["Sports Media", "AI Production"],
"description": "...",
"content": "first 100 words of body text",
"type": "event"
}- Full-text across
title,description,content,tags,categories - Type filter chips: Event, News, Page, Person, Institution, Project
- Category and tag filters
Type badges use classes in site/assets/css/custom.css:
| Type | Class | Colour |
|---|---|---|
| Event | .result-type-event |
teal |
| News | .result-type-news |
blue-grey |
| Person | .result-type-person |
terracotta |
| Institution | .result-type-institution |
steel blue |
| Project | .result-type-project |
amber |
Person tags and search_keywords are indexed. Keep tags normalised with scripts/merge_tags.py so search and filters stay consistent — see Tags and Keywords.