+ login + register + settings + upload avatar - default avatar + change password + settings menu + disallow login if user is logged in + disallow register if user is logged in + common_current_user() + common_logged_in() + session variable for login + post notice + logout + subscribe + unsubscribe + subscribe links on profile + header menu + footer menu + disallow direct to PHP files + common_local_url() - require valid nicknames - store canonical username for comparison and fetch - use only canonical usernames - use only canonical email addresses - configuration system ($config) - RSS 1.0 feeds of a user's notices - RSS 1.0 dump of a user's notices - RSS 1.0 feed of all public notices - RDF dump of entire site - FOAF dump for user - license on showstream - license on shownotice - design from Open Source Web Designs - TOS checkbox on register - pretty URLs - release 0.1 - content negotiation for interface language - content negotiation for content type - content negotiation for encoding - content negotiation for charset - If-Modified-Since support - Vary - delete a notice - gettext - subscribe remote - add subscriber remote - send remote notice - receive remote notice - confirmation email - tinyurl-ification of URLs - jQuery for as much as possible - themes - RDFa for stream pages - RDFa for subscriber pages - RDFa for subscribed pages - release 0.2 - @ messages - # tags - L: location - stay logged in between sessions - use RSS as a subscription - URL notices - image notices - video notices - audio notices - release 0.3 - forward notices to Jabber - forward notices to other IM - forward notices to mobile phone - receive notices from Jabber - receive notices from other IM - receive notices from mobile phone - machine tags - release 0.4 - include twitter subscriptions - include Pownce subscriptions - privacy - Wrap DB_DataObject with memcached caching layer - login throttle to prevent brute-force attacks - form token in login to prevent XSS - release 1.0 - Atom Publishing Protocol