The Development Environment
Basic Requirements for the Development Environment:
- Debian-based OS (preferrably Debian itself).
- Python 2.7
- Firefox, Midori, and Rekonq (cross-browser testing is important, but you can forget IE).
- Offline OpenStreetMaps (and required dependencies). More information available here: http://wiki.openstreetmap.org/wiki/Offline_Openstreetmap
- APRX and/or APRSD (if you are working on an additional challenge).
- CherryPy is a lightweight python-centric alternative to Apache (the main thing here is lightweight): http://lincolnloop.com/blog/2008/mar/25/serving-django-cherrypy/
- As few dependencies as possible.
We also have some recommendations:
- Python Web Frameworks (you want to use something lightweight and powerful): http://wiki.python.org/moin/WebFrameworks
- Leaflet is a good, lightweight slippy map interface: http://wiki.openstreetmap.org/wiki/Leaflet
- We recommend using HTML5, CSS3, and jQuery to build the interface.
- Optimize the graphics for high-contrast or even black-and-white displays (extra credit for "night mode" and "day mode").
- Optimize the UI for touch input, but expect a physical keyboard.
- Optimize the DB for synching over APRS messenges (this is detailed in the Starter Kit).
- Optimize the entire system for running on a low-powered device.