Home

Awesome

tofui

tofui (Terminally On Farcaster User Interface) is a TUI for farcaster.

It supports running locally using your own Neynar application, or as a hosted SSH app using wish.

tofui demo

Running Locally

Running locally requires your own Neynar application. After creating one, run the following to create your config file

tofui init

Starting tofui the first time will then give you the option to sign in

Install

Install using go

go install github.com/treethought/tofui@latest

Or clone the repo and run

make build

Or download a binary from the releases page

Then start the TUI via tofui

Keybindings

Navigation

KeyAction
TabToggle focus between sidebar and main panel
Shift-TabToggle sidebar visibility
K / UpMove up in list
J / DownMove down in list
EscapeGo to previous view
EnterSelect current item
F<br>Jump to your feed
Ctrl-KOpen channel quick switcher<br>
?Open help
cView channel of current item
pView profile of current item

Actions

KeyAction
ctrl-dSubmit cast/reply in publish view
POpen publish form
COpen reply form when viewing cast
oOpen current cast in browser (local mode only)
lLike current cast

Hosted version (WIP and often unavailable)

Use a hosted instance of tofui over ssh. (Note: this is WIP and currently unavailable)

ssh -p 42069 tofui.xyz

SSH Sessions, Authentication and Details

Each SSH session is authenticated via it's SSH public key. The session then receives it's own Bubble Tea which provides the interface.

For authorization, the app directs you to create a signer via Neynar's SIWN. This signer is created and managed by Neynar, and is used to provide tofui access to your farcaster account via it's API.

This is done when both running locally and over SSH, and the signer is specific to whichever app credentials were used. This would be tofui over SSH, or your own app when running locally.