tilde.town feels engine

github repo | state of the ttbp


a command-line based blogging platform running on tilde.town

ttbp stands for "tilde.town blogging platform", the original working name for this project.

ttbp main menu screenshot

ttbp entries view screenshot

ttbp compose view screenshot

ttbp runs from the command line, providing a hub for writing personal blog posts and reading posts written by other users of tilde.town. it's a little bit like livejournal or dreamwidth or tumblr. you can opt to publish your posts to a public html file hosted on your tilde page, to tilde.town's gopher server, or keep all your entries private to the tilde.town server.

to use, run feels while logged in to tilde.town

this is a project that runs on tilde.town, so all users of this program are expected to operate under the tilde.town code of conduct. content/personal issues should be worked out according to the CoC, with support from the administrative team if needed.


no coding or html experience is necessary to get started. just log in to your tilde.town account and enter:


ttbp will ask you a few questions to get you started. after that, writing and reading entries all happen within the program.

that's it!


if you're having trouble getting started, or run into program errors or strange behavior, please send internal tilde.town mail to ~endorphant and i'll try to sort things out!

there's also a function from the main menu that lets you send feedback/inquiries to me directly; this uses internal tilde.town mail, which is what i'll respond to.

writing entries

entries are recorded as plaintext files in your ~/.ttbp/entries directory. ttbp will use your selected editor to open and write files; each day is its own entry, like a diary page. at midnight for whatever timezone you've set for your user account on tilde.town, you'll get a fresh entry. if you don't write any feels on a particular day, no entries will show up there.

when you save and quit the text editor, your entry will automatically propagate to the global feels list; if you've opted to publish your feels to html/gopher, those files will update immediately. you can always go back to the current day's entry and edit/add as you'd like, but older entries will not be available for editing from ttbp.

(since files are just stored as plaintext in your directory, it's possible to edit and move old entries directly from the command line. however, changing old entries might cause strange things to happen with timestamps. the main program looks at the filename first for setting the date, then the last modified time to sort recent posts. it expects YYYMMDD.txt as the filename; anything else won't show up as a valid entry. yes, this means you can post things out of date order by creating files with any date you want.)

general entry-writing notes

reading other feels

the browse global feels feature shows the ten most recent entries that anyone has written on ttbp. this list is only accessible from within tilde.town, although individual entries may be posted to html or gopher.

you can also pull up a list of a single user's feels through check out your neighbors, which displays all users who are writing on ttbp based on their most recently updated entry, and a link to their public html blog if they've opted to publish their posts.

please note! entries written on ttbp should be considered sensitive, private information, even if a particular user is publishing entries in a world-viewable way! please be respectful about having access to other people's feels, and do not copy/repeat any information without getting their explicit permission. tilde.town operates on a high level of mutual trust, and ttbp is designed to give individuals control over their content.


when you start your ttbp, you have the option of publishing or not publishing your blog.

if you opt to not publish, your entires will never be accessible from outside of the tilde.town network; other tilde.town users will still be able to read your entries through the ttbp interface, or by directly accessing your ~/.ttbp/entries directory.

if you want to further protect your entries, you can chmod 700 your entries directory.

if you opt to publish, the program creates a directory ~/.ttbp/www where it stores all html files it generates, and symlinks this from your ~/public_html with your chosen blog directory. your blog will also be listed on the main ttbp page.

you can also opt to publish to gopher, and the program will automatically generate a gophermap of your feels.

you can set publishing status on individual entries, or bury individual feels; see "data management" below for details.

data management

the manage your feels menu provides several tools for organizing your feels. these are all actions you can perform manually from the command line, but doing them from within the program can help keep your files properly linked up.


the settings menu lets you change specific options for handling your feels and using the interface.

changing your page layout

you can modify how your blog looks by editing the stylesheet or header and footer files. the program sets you up with basic default. if you break your page somehow, you can force the program to regenerate your configuration by deleting your ~/.ttbp directory entirely. you might want to back up your ~/.ttbp/entries directory before you do this.

general tips/troubleshooting

future features

these are a few ideas being kicked around, or under active development:

other ideas are listed on github as upcoming features or feature requests!


(this section is only relevant if you plan on forking the repo and running an instance of this yourself)


please check out my contributor guidelines on github if you'd like to get involved with development!

if you find any bugs or strange behavior, please message me locally on tildemail or open a github issue and i'll get back to you as soon as i can.

if you're interested in helping with the code, please drop me some tildemail!

i accept tips for development work on liberapay

contributor shout-outs

thanks to:


live feels-sharing: