I would like to create a very basic social networking website using Django on the Google App Engine. This job is a skills test to select a medium to long term developer for a full-scale web app job. Developers should pay attention to code commenting and simplicity. HTML templates do not need to be elaborate at this stage. Please see attached image.
**Please see additional details in this bid request and attachments.
**Django Google App Engine social network
**I would like to create a very basic social networking website using Django on the Google App Engine. This job is a skills test to select a medium to long term developer for a full-scale web app job. Developers should pay attention to code commenting and simplicity. HTML templates do not need to be elaborate at this stage. Please see attached image.
**Sign-up:** Simple username/password combo + profile setup (name, picture, about), no need for e-mail confirmation. This will be altered in future phases.
**Logged-in User Home page:** Status update input box + "Stream" of status updates from friends (ie. Facebook Home). Comments allowed per update.
**User Profile:** 2 views - PUBLIC: User name, photo, about, friends in common, projects in common. PRIVATE: User name, photo, interests, friends and "Stream" of posts left by friends through a text input in the profile. Comments enabled in each friend post.
**Project Profile:** 2 views: PUBLIC - Project Name, photo, about. PRIVATE: Project Name, photo, about, members and "Stream" of posts by members (same as above).
**Interactive functionality** - Users have "owner" rights in their respective profiles to delete posts/comments left by friends, edit their own basic info (name, photo, interests) and delete their own posts/comments in other profiles. Users who create projects have "owner" rights to delete posts, edit project info, delete project. Users can add/remove friends and create/join/quit projects.
Recommended Methods:** Preference will be given to developers who are familiar and willing to apply the following methods in their code:
* **App-engine-patch:** This is the best Django helper for GAE so far (<http://code.google.com/p/app-engine-patch/>)
* **"Fan-out" list properties and merge-join social graphs by Brett Slatkin -** To be used in the propagation of status updates on user's home screens and modeling "friends/projects in common" (see <http://is.gd/7IWzS> )
* **Process images >1mb w/ Blobstores:** Developer will need to handle image uploads and create thumbnails for the profiles using this technique (see <http://is.gd/7IWwp> )
* **Composite String Properties for paging -** Recommended method for paging posts (see <http://is.gd/7IYxk> min. 36 onwards). Open to alternative approaches.