OpenTeams is an open source suite for visualizing team data.
You can try a demo and see a description of its features at openteam.info.
OpenTeams was developed by Jingxian Zhang as part of her Master thesis at the Collective Learning group at the MIT Media Lab, under the supervision of Professor Cesar A. Hidalgo. In addition to the work of Jingxian Zhang, OpenTeams includes the work of Xiaojiao Chen and Diana Orghian, who contributed to OpenTeams by helping, respectively, with graphic design and social psychology expertise.
OpenTeams builds on work done in the Immersion project, a platform to visualize individual email metadata created also at the Collective Learning group by graduate students Daniel Smilkov and Deepak Jagdish, following the original idea and supervision of Professor Cesar A. Hidalgo.
You can use this repository to install your own private version of open teams in a local server.
Run ./teams-startup.sh to start the project.
Authentication data in the project have been replaced with xxxxxx. They are:
- client_id and client_secret in dev/newserver/client_secrets.json
- client_id and client_secret in dev/newserver/client_secrets_outlook.json
- client_id and client_secret in dev/newserver/client_secrets_slack.json
- client_id in authurl in dev/newserver/templates/index_old.html
- client_id in authurl in dev/newserver/templates/indexJoin.html
- client_id in authurl in dev/newserver/templates/indexStudy.html
- client_id in authurl in dev/newserver/templates/teamJoin.html
- client_id in authurl in dev/newserver/templates/teamLogin_single.html
- client_id in authurl in dev/newserver/templates/teamLogin.html
- client_id in authurl in dev/newserver/templates/v2teamJoin.html
- client_id in authurl in dev/newserver/templates/dotest.html
- client_id in authurl in dev/newserver/templates/gmail/busy.html
——————-———————————————- Core stack ————-———-————-—————————
Server-side Programing
- Operating System: Ubuntu 16.04
- Language: Python 2.7
- Application Framework: Tornado
- Web Server: Nginx
- Database: MongoDB
Client-side Programing
- Javascript , HTML5, and CSS3
- D3.js, jQuery
Communication
- API
- Tornado RESTful API
- Data Format: JSON
——————————-—————-— Security/User Administration ———-———————————-—
Server-side
- Security Protocol for the server: SSL
- Admin accessing the server
- SSH (remote login) and RSYNC (file transfer)
Client-side
- Email login authorization
- Gmail: OAuth 2.0 protocol in Google API
- Outlook: OAuth 2.0 protocol in Outlook REST API
- Rooms can only be joined with the password set by the admin of the room (the person who created the room). Amin should share the password securely to the other members he/she invites to the room.
———————-—————-———————-— Logging ————————-—-——————————-—
User activities are logged in the MongoDB document logging.
—————————-—-——————-— External Data Sources ——————-——————————-—
- Big Five Personality Survey: https://www.outofservice.com/bigfive/info/
- Moral Foundations Survey: http://www.yourpersonality.net/political/griffin1.pl