Mar. 31st, 2010

mrigeshpokhrel: (Default)
[personal profile] mrigeshpokhrel
 hi,

I am Mrigesh, a Information Technology student from IIIT-Allahabad India  and would like to work on the project developing desktop client for Dreamwidth.

Since past one or two weeks i have been studying the protocols which have been forked from LiveJournal (http://www.livejournal.com/doc/server/ljp.csp.protocol.html)and(http://hg.dwscoalition.org/dw-free/file/tip/cgi-bin/ljprotocol.pl) and the existing client for livejournal "logjam" . I have gained some understanding of the code and the client/server protocol reference specified above.

I would like to start with a bottom-up approach for the gui client, centring it along the linux OS specifically Ubuntu, using QT. I would start off with creating a client in following manner :

 
  1. Creating a bare minimum client:
    1. The client would request the user for authentication(username and password)
    2. The client would allow the user to "read" past entries and "post" a new entry after successful authentication.
    3. The methods used would be (Flat client/server protocol : http://www.livejournal.com/doc/server/ljp.csp.flat.protocol.html)
      1. login : logging into the client after successful authentication
      2. sessiongenerate : generating a session after successful login
      3. postevent : posting a blog/journal only if the login and sessiongenerate are both successful.
      4. sessionexpire : close the session instance the user has created thus.
  2. Client with functionalities like reading and editing past posts, check friend list/groups and edit friend list/groups
    1. The client would perform bare minimum functions as defined above
    2. The user would be able to view his past posts and edit them.
    3. The client would have a side pane/scrollbox where he would be able to view and edit his existing friends and groups
    4. The new methods implemented would be :
      1. login : logging into the client after successful authentication.
      2. sessiongenerate : generating a session after successful login.
      3. postevent : posting a blog/journal only if the login and sessiongenerate are both successful.
      4. getevents : coupled with "syncitems" this would allow the user to view his past posts, events, to-do items.
      5. editevent : this would allow the user to edit/delete past posts in his journal.
      6. getfriends : this would fetch the list of users the current logged in user identifies as friends and displays them in the side pane/scrollbox.
      7. getfriendgroups : fetch the user defined groups of friends.
      8. editfriends : add/edit/delete existing friends.
      9. editfriendgroups : edit user defined friend group list.
  3. This would be supposedly the final client(that what i planned till now anyways) with proxy support(i dont know how to do that but i am still reading a blog about it) and most of the required functionalities provided in the protocol.

I would be following the ABC rule of software development, i am recently messing with twitter api (using curl) and have been successful till date while posting a tweet and a mention/reply. I would to integrate twitter functionalities as well , but that seems a bit far-fetched. I would also be honoured to work with/on dreamwidth even after GSOC2010 as i find it could help me learn a lot of new things!!

Any sort of suggestions or critic comments are most welcome, after-all it would only help me in improving my proposal :) .

Thank You
Regards
Mrigesh Pokhrel
irc : _silentAssassin
gtalk : mrigeshpokhrel
skype : mrigeshpokhrel
(PS: i am in india and so i would be available anytime after 12:00 GMT ( thats when my class gets over))


 

 

Profile

dw_dev: The word "develop" using the Swirly D logo.  (Default)
Dreamwidth Open Source Development

June 2025

S M T W T F S
1234567
89101112 1314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 19th, 2025 10:16 pm
Powered by Dreamwidth Studios