Kyafir

Kyafir roughly translates to "What if? or What then?" which is what I want to document here. I often make things to answer questions, and these series of experiments usually never see the light of day. These projects are usually archived in a digital folder or a shoebox, but they are critical to my practice.

November 2025

Speculation Engine

A crucial part of futures thinking is thinking differently or thinking unlike how we might usually think. It can be difficult to do so as we are used to thinking in the present. It can also be challenging to think of thing to think about or factor into this imaginative frame of mind. I wanted a tool to help me speculate, so I built one. This tool uses Wikidata to help the user visualise adjacent topics or concepts to the one they're want to speculate about, add them to a workspace, and then use a local LLM to create speculative stories.

Connecting nodes are labelled with relationships

October 2025

Story Builder

I love creating stories, but sometimes I lose track of various characters and settings that I write. Instead of writing it down like most would, I created a graph based tool to help keep track of all the different variables for me. Powered by a local LLM and text embedding engine, this tool can parse natural language, extract entities, attributes, relationships, and add it to a database. I can then query this graph to ask questions and validate any new inputs I would like to add to the story ("does this conflict with the existing story?") or ask it to generate concepts to help me ideate. This would probably be useful for a Dungeons & Dragons game session!

October 2025

Community Websites with Notion

I volunteered to create a website for my local mutual aid community, for which I wanted to create a shared, easily accessible (especially for those unfamiliar with web technologies) digital infrastructure. After much deliberation, I settled on using a shared Notion document, which would be shared with active members of the community. The content of the Notion doc would then be used to feed the content on a simple, single page website hosted on Github Pages. A Github Actions script pulls content from the Notion doc everyday, to create a JSON file, which would be rendered on the website. Plain text, tables, images, and much more can easily be created on Notion, and reflected on the website.

Shared Notion document
UESCAN Mutual Aid Website
Nifty Github Actions script to bridge Notion to the website
Final batch of PCBs

January 2025

Hyperlocalradio

Hyperlocalradio is an idea that was born out of protest and a want to control the radio waves in our environment. If you scan the WiFi networks in your surroundings, there are so many networks, with most of them being private networks. Why shouldn't we have community networks in our digital neighbourhoods? Why don't we share digital material with our neighbours freely? Hyperlocalradio is a small device which enables that. It uses an ESP-32 and a SD card reader mounted on a custom PCB, which when connected to power via a readily available USB cable, creates a local area network, which anyone can connect to and access the files on the SD card. Want to share information via a website? Load the website HTML files on the SD card, and now you can. Want to share music, movies, pictures, or art? You can easily share them in your neighbourhood with this!

Previous version of the PCB
PCB CAD files

December 2024

Mixtape

I miss mixtapes. I used to burn optical CDs and DVDs with my favourite music to hand out to my friends (and foes). Sharing a link to a playlist I have on Apple Music just doesn't feel the same. I wanted to re-create that feeling of giving someone something tangible, something real. Sure I could buy generic MP3 players, but they didn't have the joy that I was looking for. So I just had to make my own. So I did. I researched the parts that I would need, then created a prototype using a proto-board to test it. Once I was confident in the electronics, I designed a custom PCB (learned it all on the fly!) and had it printed. After further iteration, I created a product that I was happy with. It had a battery to make it portable, a tactical on/off switch, a DAC to drive wired headphones, and 3 resistive touch buttons to control the mixtape.

Initial prototype to test parts
Designing the PCB on EasyEDA
Final PCB design
Fresh and toasty PCBs
Mixtape, ready to go!