80x40 is an 80 character wide by 40 character tall block of text stored in a Github repo. A script watches the repo and automatically merges in any pull requests that change the contents of this text block, effectively creating a collaborative ASCII art canvas that anyone with a Github account can draw on.

Feel free to fork the repo, edit the text block, and submit a pull request. As long as the change follows a few simple rules, it should be automatically merged in. Changes are only checked to make sure they preserve the size of the block and are not reviewed for content (i.e. don’t blame me if the block of text is not PG).


Most projects treat git as a versioned container for content – be it source code, artwork, text, 3D models, or raw data – but I feel that git also offers many new ways to express content. Maybe you could use git to play games like tick-tac-toe or Connect Four, or maybe you could use git as a metafiction element in a story, tracking the (fictitious) writing process. These are pretty obvious applications, so I’m sure there are much more clever ideas out there.

There is zero practical application to 80x40. It uses git for collaborative 2D drawing, while also producing a 3D shape (the version history of the text block) that can be visualized in interesting ways. More importantly though, the current state of the 80x40 repository is not the product, the repository itself is the product.


The scripts that automatically merge the 80x40 block of text are on Github. They are pretty hacked and I wouldn’t be surprised if they contain more than a few bugs.

Please report any issues or submit a pull request against the script repo if something could be improved.