September 2011

Accounts9 is a SSO system for Net9 (alias of Department of CST, Tsinghua University), which manages users' information and supports an OAuth 2.0 authentication interface. It is derived from Net9Auth, originally written by Xudong Yang.

Accounts9 provides every user with a page to display its information on Accounts9, like LinkedIn. Every user can belong to one or more groups. Groups are organized in a tree, in which every group has a parent group. One group can have administrators. An administrator of a group can manage the whole subtree of the group. Based on Accounts9, I built a mailing list management system with Mailman. Every single group in Accounts9 maps a mailing list, which contains all users directly or indirectly belong to the group node. Also Accounts9 is integrated Mediawiki. Accounts9 implemented a closed community for a small group of people with hierarchy.

Accounts9 is written in CoffeeScript and Node.js, a server-side JavaScript runtime platform. The modules Accounts9 used are express, jade, mongoose, etc.