/
README
18 lines (16 loc) · 1.42 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
How to make it go:
$ git clone http://github.com/reverie/yourworldoftext.git yourworld
$ export PYTHONPATH=`pwd`
$ cd yourworld
$ pip install -r requirements.txt
$ python manage.py syncdb
$ python.manage.py runserver
The lay of the land:
- Your World of Text is plain Django. Put in your database settings and you should be able to run it locally right away.
- The contents of a world are represented by 8x16 character Tile objects. These are created lazily.
- Most of the code (and all the non-trivial stuff) is client-side, in yourworld.js. It uses the JavaScript Module Pattern.
- The client simply polls the server for updates. This may not be optimal, but it has held up fine.
- Extra features like links and protected tiles were added "at great expense and at the last minute". The code may reflect this.
- Input is received via a hidden input field that always has focus. This technique is more robust than detecting keystrokes, and may be useful in other web applications.
Where to take it:
If you want to get involved in Your World of Text, the TODO file lists a variety of incremental improvements that could be made. If, rather, you want to fork the project and go a new direction, here are some ideas: generalize the tile system; implement a client-side scripting language for a LOGO-like accessible programming environment; or make a collaborative brainstorming tool. Whatever it is, feel free email me if I can help in any way.