explaingit

lajosnagyuk/ayfor

Analysis updated 2026-05-18

18GoAudience · generalComplexity · 3/5Setup · moderate

TLDR

A virtual typewriter, not a text editor, that appends every keystroke to a replayable log with no delete key, mimicking the sound and feel of a real machine.

Mindmap

A visual breakdown will appear here once this repo is fully enriched.

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Write a manuscript with a distraction-free, no-delete typewriter interface.

USE CASE 2

Replay a document to watch and hear exactly how it was typed, including pauses.

USE CASE 3

Import an existing plain text or Markdown file and have it typed in visibly as machine-imported.

USE CASE 4

Build and install a custom typewriter package with your own font, sound, and calibration.

What is it built with?

GoFyneOpenGL

How does it compare?

lajosnagyuk/ayfor6mb/vohivegacjie/agent_flow
Stars181818
LanguageGoGoGo
Setup difficultymoderatehardeasy
Complexity3/54/53/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Building the GUI app requires a C toolchain (Xcode tools, gcc with OpenGL/audio libs, or MinGW) because of its graphics and sound dependencies.

The README does not state a license.

In plain English

Ayfor is a typewriter emulator, not a text editor. Instead of a blank document you can freely rewrite, it gives you a virtual A4 sheet, one font, and no delete key. Every key you press gets appended to an ongoing, replayable log file, so the exact rhythm of your typing and any hesitations or casual edits stay visible afterward. The project is upfront that this is not meant as cryptographic proof that a human wrote the text, just an honest record of how it was typed. The tool tries to feel like an actual mechanical typewriter. Each simulated machine has its own quirks: typing fast makes the letters strike lighter, pausing makes them strike heavier, the ribbon gradually wears out and can be replaced, and the paper has visible grain and impression texture. The hammer sounds are real recordings from an old Olivetti typewriter, adjusted based on how hard each key is struck. A replay feature lets you watch a manuscript being retyped at the same pace it was originally written, including a title card marking any long breaks you took. Ayfor ships with different "typewriter packages" that change the look, font, and sound of the simulated machine, including a couple of packages inspired by real vintage Olympia typewriters. You can also build and install your own custom typewriter packages from a font, sound samples, and a few configuration files. Documents remember exactly which package they were written with, and switching machines mid-document requires explicitly saving and starting a new one. The project includes a graphical app plus a command-line tool called strike for importing plain text files, replaying sessions, exporting to PDF or other formats, and managing typewriter packages. The graphical app needs a C toolchain to build because of its graphics and audio libraries, while the command-line tool is plain Go and runs anywhere. Prebuilt downloads are available for macOS, Linux, and Windows.

Copy-paste prompts

Prompt 1
Help me build and run the ayfor typewriter app and the strike CLI on my machine.
Prompt 2
Show me how to import a text file into ayfor and replay it.
Prompt 3
Walk me through creating a custom typewriter package for ayfor.
Prompt 4
Explain the difference between the strike CLI and the ayfor GUI app.

Frequently asked questions

What is ayfor?

A virtual typewriter, not a text editor, that appends every keystroke to a replayable log with no delete key, mimicking the sound and feel of a real machine.

What language is ayfor written in?

Mainly Go. The stack also includes Go, Fyne, OpenGL.

What license does ayfor use?

The README does not state a license.

How hard is ayfor to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is ayfor for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.