diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 00000000..c4c443d7 --- /dev/null +++ b/AUTHORS @@ -0,0 +1,36 @@ +============================== +Contributors to Askbot Project +============================== + +This is the list of contributors to the code of Askbot project. +The list is probably incomplete, apologies for any omissions. +Thanks for all your help + +Programming and documentation +----------------------------- +* Mike Chen & Sailing Cai - original authors of CNPROG forum +* Evgeny Fadeev - founder of askbot +* `Adolfo Fitoria `_ +* Andy Knotts +* Benoit Lavine (with Windriver Software, Inc.) +* Jeff Madynski +* Andrei Mamoutkine +* Ramiro Morales (with Machinalis) +* `NoahY `_ +* `Gael Pasgrimaud `_ (bearstech) +* Alex Robbins (celery support) +* `Tomasz Szynalski `_ + +Translations +------------ +* Mike Chen, Sailing Cai, suyu8776 - Chinese +* Bruno Sarlo, Adolfo Fitoria - Spanish +* Evgeny Kalinin - Russian +* Evgeny Fadeev - English +* Oktay Yildiz, Onur Mat, Cemre - Turkish +* Jérôme Blondon (bearstech) - French +* Pekka Gaiser - German +* Pekka Järvinen - Finnish +* Adi Robian - Romanian +* Dario Ghilardi, Federico Poloni - Italian + diff --git a/LICENSE b/LICENSE index 803781c5..2810da52 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,10 @@ -Copyright (C) 2009. Chen Gang +Askbot - Django Q&A forum application. +Copyright (C) 2009. Chen Gang and Sailing Cai. +2009-2011 Evgeny Fadeev and individual contributors of Askbot project (see AUTHORS). +All rights reserved. + +LICENSE +======= This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/MANIFEST.in b/MANIFEST.in index e7ae732c..1105fc68 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,6 +1,7 @@ include ez_setup.py include tox.ini include LICENSE +include AUTHORS recursive-include askbot * recursive-exclude askbot *.pyc recursive-exclude .git diff --git a/askbot/doc/ROADMAP.rst b/askbot/doc/ROADMAP.rst deleted file mode 100644 index c79e0ae4..00000000 --- a/askbot/doc/ROADMAP.rst +++ /dev/null @@ -1,88 +0,0 @@ -Intro -========= -ROADMAP aims to streamline activities of the Askbot open source project and -to minimize ad-hoc approaches of "big-picture" level. - -Aksbot is a Question and Asnwer system for the normal people! - -Let's discuss stuff that goes into this file on -http://groups.google.com/group/askbot - -Bacic principles of the project -================================== -Here they are: - -* our rule #1 is that all developers have commit right to the project - repository, but they must follow this ROADMAP and TODO - - to keep up with our own sanity. -* we welcome contributions by other people and show tolerance - and patience - especially to the new team members. -* when users who might not be tech-savvy ask questions - - we try to answer to the point and using their language - (i.e. not programmer jargon:) -* we favor plain and minimalistic style of programming, but pay - attention to detail - especially details of user experience. - -We try do develop using the following workflow: - -* specify problem that we try to solve -* create requirements that will guarantee a solution, once met -* dream up some implementation ideas (maybe even some sketches on the paper) -* discuss and decide on the best one -* write and test code - -The process doesn't have to be this formal all the time, but trying to stick -to some subset of this almost always helps! -Especially it helps to iron out disagreements between -individual programmers (which if you are one - you know are qute common -- and they don't all end well :). - -Ad-hoc programming - i.e. simply go and add code - is not really encouraged. -This works fine in the one person team or when the team consists of -best friends, but is almost sure to fail in a heterogenous group. - -Architecture and Requirements -===================================== -Obviously Django and Python are pre-made choices - so this -is not going to change any time soon. At this point all of -the client side Javascript is written using jQuery library. - -Our basic principle is that Askbot should be a mashable Q&A component. -Askbot is an application written in Python/Django. So it should be -distributable as a Django App alone or as a whole site (by option). - -If we develop sub-systems that can be used in the broader scope - -we package that thing as a separate django application (login system is one example). - -We will start using Google Closure library soon! - -Sub-systems ------------------ -* authentication system -* Q&A system -* admin interface -* full text search -* skins (directory forum/skins) - -Authentication system -------------------------- -Authentication system will be a separate django application - -Here is the discussion thread: -* http://groups.google.com/group/askbot/browse_thread/thread/1916dfcf666dd56c - -Most of the requirements are listed in the first message - -Skins ------------ -Skins eventually must be upgrade-stable - that is people who created custom -skins should not need to change anything if something changes in the code - -Admin interface ------------------------ -* extend forum/settings.py to list default settings of various groups -* create Registry database table the will store setting values -* leave only essential settings that go to the main django settings.py -Create key-value storage -* should some settings be accessible to admins and some to staff??? - for example-secret keys probably should not be shared with staff members diff --git a/askbot/doc/TODO.rst b/askbot/doc/TODO.rst deleted file mode 100644 index b89013b0..00000000 --- a/askbot/doc/TODO.rst +++ /dev/null @@ -1,70 +0,0 @@ -note: there is also WISH_LIST. Here is only stuff that will be done soon. - -Site looks -=========== -* make links within posts underlined -* add happy talk to tags and people view - -Code Cleanups -============== -* remove usage of EXTERNAL_LEGACY_LOGIN -* clean up forum_modules: - * keep this directory for dependency modules that can be shared - by multiple apps, - * but move other things that are not shared - inside forum app directory - * one-by one convert "auto-discovery" modules into - regular explicit python imports -* python2.4 incompatibilities - * datatime.datetime.strptime - -Search -======== -* make full text search work in postgres -* walkthrough sphinx search setup again -* text query lost when visiting question, it just doesn't print in Q view -* make username and tags persist in corresponding search windows - -Bugs -====== -* fix skin resolution bug in javascript - currently have to - copy skin media to customize - -Refactoring -============= -nothing right now - -Skins -======= -* organize templates and document them so that - skins could be more easily created by others - who are savvy enough -* identify and maybe create snippet-type templates - and put them into a separate directory - for example: - * gravatar (currently a string in - forum/templatetags/extra_tags.py - try inclusion template - and see if it slows things down a lot) - * question body - * answer body - * datetime widget??? -* there is a separator line between posts - but it shows either before the post or after - it is nice that separator is lightweight - - based on css alone - but we need to fix it so that - it shows only between the posts as a joining item - -Features -=========== -* new login system, please see - http://groups.google.com/group/askbot/browse_thread/thread/1916dfcf666dd56c - on a separate branch multi-auth-app, then merge -* forum admin interface, some badge configuration - -Development environment -========================== -* set up environment for closure development - -Project website -==================== -* Adopt Jekyll for project site and transition from Dango diff --git a/askbot/doc/WISH_LIST b/askbot/doc/WISH_LIST deleted file mode 100644 index 2b53662c..00000000 --- a/askbot/doc/WISH_LIST +++ /dev/null @@ -1,55 +0,0 @@ -* smarter debug mode -* The wonder bar (integrated the search / ask functionality) -* The authentication system ??? -* allow multiple logins to the same account -* allow multiple logins to the same account -* more advanced templating/skinning system -* per-tag email subscriptions -* view for personalized news on the site -* a little flag popping when there are news -* drill-down mode for navigation by tags -* improved admin console -* sort out mess with profile - currently we patch django User - -* Some functionality should be moved out of the forums app, in the case -that the forum app is restricted only to authenticated users: - - (r'^%s/$' % _('signin/'), 'django_authopenid.views.signin'), - url(r'^%s$' % _('about/'), app.about, name='about'), - url(r'^%s$' % _('faq/'), app.faq, name='faq'), - url(r'^%s$' % _('privacy/'), app.privacy, name='privacy'), - url(r'^%s$' % _('logout/'), app.logout, name='logout'), - url(r'^%s$' % _('feedback/'), app.feedback, name='feedback'), - (r'^%sfb/' % _('account/'), include('fbconnect.urls')), - (r'^%s' % _('account/'), include('django_authopenid.urls')), - -Copied from old todo list: - -There are two kinds of things that can be done: -refactorings (think of jogging in the morning, going to a spa, well make the code better :) -new features (go to law school, get a job, do something real) -Just a joke - pick yourself a task and work on it. - -==Refactoring== -* validate HTML -* set up loading of default settings from inside the /forum dir -* automatic dependency checking for modules -* propose how to rename directory forum --> askbot - without breaking things and keeping name of the project root - named the same way - askbot - -==New features== -Whoever wants - pick a feature from the WISH_LIST -add it here and start working on it -If you are not starting immediately - leave it on the wishlist :) - -==Notes== -1)after this is done most new suggested features - may be worked on easily since most of them - only require editing view functions and templates - - However, anyone can work on new features anyway - you'll - just have to probably copy-paste your code into - the branch undergoing refactoring which involves - splitting the files. Auto merging across split points - is harder or impossible. diff --git a/askbot/doc/source/roadmap.rst b/askbot/doc/source/roadmap.rst new file mode 100644 index 00000000..450f2a86 --- /dev/null +++ b/askbot/doc/source/roadmap.rst @@ -0,0 +1,55 @@ +Intro +========= +ROADMAP aims to streamline activities of the Askbot open source project and +to minimize ad-hoc approaches of "big-picture" level. + +Askbot is a Question and Answer system for the normal people! + +Basic principles of the project +================================== + +We favor plain and minimalistic style of programming, but pay +attention to detail - especially details of user experience. + +We try do develop using the following workflow: + +* specify problem that we try to solve +* create requirements that will guarantee a solution, once met +* dream up some implementation ideas (maybe even some sketches on the paper) +* discuss and decide on the best one +* write and test code + +The process doesn't have to be this formal all the time, but trying to stick +to some subset of this almost always helps! +Especially it helps to iron out disagreements between +individual programmers (which if you are one - you know are qute common). + +Ad-hoc programming - i.e. simply go and add code - is not really encouraged. +This works fine in the one person team or when the team consists of +best friends, but is almost sure to fail in a heterogenous group. + +Architecture and Requirements +===================================== +Obviously Django and Python are pre-made choices - so this +is not going to change any time soon. At this point all of +the client side Javascript is written using jQuery library. + +Our basic principle is that Askbot should be a mashable Q&A component. +Askbot is an application written in Python/Django. So it should be +distributable as a Django App alone, but can be deployed as a dedicated site +with the script "askbot-setup", that also ships with askbot. + +If we develop a sub-system that can be used in the broader scope - +we package it as a separate django application (login system is one example). + +We will start using Google Closure library soon! + +Skins +----------- +Skins eventually must be upgrade-stable - that is people who created custom +skins should not need to change anything if something changes in the code + +Admin interface +----------------------- +We use a forked application "livesettings" that ideally should be merged +back to the original livesettings application.