We have reached the end of GSoC. I have pushed all the code to bzr repo. There are tworepositories, one is django application 1 and other one is django standalone project 2. It's almost the same way postorius manages it's code in two separate repositories.
I never worked with django before GSoC. It was one of the greatest learning experience for me. I learnt a lot about Django. When GSoC started the code of HyperKitty was very raw and many things were hard coded (urls) and there was no clear code structure. During my GSoC project I have implemented features in HyperKitty as well as tried to fix these problems. We now have a clear code structure, app is separate from project, urls are not hard coded, unit tests are there in place. Though, HyperKitty is a big project and we are not close to any release candidate yet, there are essential features missing from HyperKitty for example we have to connect it to MM3, plug KittyStore to MM3, cleaner UI.
As always you can check the demo here 3. (We are aware of the issue that it throws 500 errors a lot of times :( )
I would like to thank pingou, toshio and the rest of Mailman community for their help. As my school year had started I won't be able to work full time on this project but I will keep pushing changes to HyperKitty when I will have free time.
On Sun, Jul 8, 2012 at 5:22 AM, Aamir Khan firstname.lastname@example.org wrote:
HyperKitty offer features like upvoting/downvoting of messages, adding tags (to be implemented soon!) to threads, user profiles and other user specific features. We require users to be logged in before using any of these features. So, the first task for my GSoC project was to implement login procedure for hyperkitty. It uses django-social-auth application 3 to implement login functionality. Currently, there are four ways of logging into hyperkitty test server namely, Google openid, yahoo openid, browserid, and registering the user on the site itself. I have not enabled other ways of logging in (e.g, twitter) but it should be fairly easy to enable those.
I have written a blog post about the essential features an archiver should posses in my opinion. The second most important thing for me is the ability to promote good content posted on the list. An archiver should be intelligent enough to suppress the "spamy" content and bring good content on the surface. For this we have implemented a feature in which a user can upvote/downvote a message. The users accessing a particular thread will be able to sort the messages based on votes of other users.
I have also implemented the basic user profiles in which you can see your personal info and the messages you rated. You will be able to edit the user profiles soon.
I have also started to write unit tests .
Best regards, Aamir
1 http://blog.aamirkhan.co.in/post/26723715431/deploying-hyperkitty-using-apac... 2 https://fedorahosted.org/hyperkitty/ 3 https://github.com/omab/django-social-auth  http://blog.aamirkhan.co.in/post/26555164201/hyperkitty-modern-archiver  http://blog.aamirkhan.co.in/post/26723628968/unit-testing-hyperkitty