home | categories | readme


This is a template directory that creates a changing forest space with a campfire for users to visit. It was designed to run on a shared server space, but could also be run by individual users. It will take a little bit of configuration to get it running, but not too much.

A script monitors the forest directory. Specifically it watches the campfire.txt file for changes. Visitors can make their visit to the forest known by sharing something in the campfire.txt file.

If no one visits for a while then small files grow in the forest space, like leaf.txt or branch.txt. These files can be opened up, and will contain small fragments of text. They can be pruned, renamed or deleted as the forest caretakers wish.

If there is no activity for a week, the campfire.txt file is reset and any messages erased.

Ideally you will let the script run automatically. To manage this you can set up a cronjob.

Be aware that leaving this script running will likely generate hundreds of tiny files. You might like to switch it on for a while, live with it and then delete it.

forest (is the directory)
|-nature.py (is the script)
|-campfire.txt (is a place to write)

You can download this directory here (3kb).

Unzip it and place it wherever you like. Read through the code before running it. I haven't really written anything in python before - so go carefully.

You will need to configure the nature.py file. I used simple python editor, Mu Editor to work on mine. Look for the lines that require the filepath to the directory. If you need to check the full path, from the terminal (CLI) you can navigate to the unzipped directory and the type pwd.

Whilst your editing the path, you might also want to play around with the frequency settings or add your own text.

Check the nature.py runs as expected by navigating to the directory in the terminal and running:

python3 nature.py

Setting up the cronjob

If you haven't used this before, you might like to follow a more detailed walkthrough. If you just need a quick reminder:

open the current crontab document in nano:

nano crontab -e

Jobs each have their own line. In this case the job is made up of three parts.

  1. The frequency, which is designated with the initial numbers and *s. Use crontab.guru to configure the frequency you want the script to run. Once or twice a day is probably plenty, and note that it only runs when the computer is awake.
  2. The location and version of python installed. You can check the location using:
    which python 3
  3. And finally the location of the nature.py script.

Save and exit from nano using ctrl+x.

To check the cronjob is recognised enter the following to return all valid cronjobs:

crontab -l

About this

During the avantwhatever.net server residency I was thinking about ways of being present on the server, and the traces we leave in these spaces - so much is recorded in logs, and the spaces that as a user you might not usually visit. I have also been trying to think more about memory, and the different ways in which data is stored and retrieved. The process and energy of writing, erasing and rewriting a file feels interesting.

It is a strange project to leave running as it is unnecessarily generating files. It is performing computation. It feels like it is enough to look at this and think about it, without it actually running. By functioning though it can provide a space that becomes real for different people or at different times. You might encounter it accidentally. It becomes separate.

categories: web | tools

~gg 02/23