← Back to team overview

team4alfanous team mailing list archive

[Branch ~team4alfanous/alfanous/alfanous-git] Rev 461: A readme file for Code structure

 

------------------------------------------------------------
revno: 461
committer: Assem Chelli <assem.ch@xxxxxxxxx>
timestamp: Sat 2012-12-22 10:48:29 +0100
message:
  A readme file for Code structure
added:
  src/README.rst


--
lp:alfanous
https://code.launchpad.net/~team4alfanous/alfanous/alfanous-git

Your team Alfanous team is subscribed to branch lp:alfanous.
To unsubscribe from this branch go to https://code.launchpad.net/~team4alfanous/alfanous/alfanous-git/+edit-subscription
=== added file 'src/README.rst'
--- src/README.rst	1970-01-01 00:00:00 +0000
+++ src/README.rst	2012-12-22 09:48:29 +0000
@@ -0,0 +1,60 @@
+==============
+Code Structure
+==============
+This is a quick view of the source code structure of Alfanous project explaining the different packages and modules.
+
+--------
+Packages
+-------- 
+:alfanous: the main API of the project, offers the search features.
+:alfanous-import: a library responsible of all management tasks of Quranic & Linguistic resources.
+:alfanous-cgi: a small script to execute the API in a web CGI environment.
+:alfanous-desktop: a desktop interface made by QT & PyQt.
+:alfanous-django: a django app replaces the old web user interface and also the cgi script.
+:alfanous-labs:  all related libraries that still in alpha phase.
+:alfanous-tests: scripts used to test the different modules of the API.
+:PyCorpus: a library used to parse & understand Arabic Quranic Corpus.
+:PyZekrModels: a library used to parse Zekr Translations Models.
+
+
+-----------------------------
+API Modules, Files (alfanous)
+------------------------------
+:main.py: the main module that relay all the modules.
+:console.py: a console interface for the API.
+:Outputs.py: the programming interface, responsible of the output of all results.
+:Data.py: the manager of paths and Data reading and loading.
+:TextProcessing.py: the module responsible of searched/indexed text processing.
+:QueryProcessing.py: the module responsible of search query processing.
+:ResultsProcessing.py: the module responsible of results processing.
+:Indexing.py: the manager of the indexes reading.
+:Searching.py: the module responsible of the basic search operation.
+:Suggestions.py: the module responsible of suggestions.
+:Threading.py: the module responsible of multi-processing during the search.
+:Constants.py: a module that contains some constants used in the API.
+:Exceptions.py: a module that contains some exceptions used in the API.
+:Misc.py: a pre-implementing test module.
+:Support.*: Some third-party libraries.
+:configs.*: Configuration files in a Json format.
+:resources.*: Quranic & Lingustic data in a Json format to replace the binary sqlite database.
+:dynamic_resources.*: Compiled linguistic data to python modules to gain speed.
+:indexes.*:  All needed indexes on Whoosh indexes format.
+:setup.py: the script of installation & packaging (setuptools)
+:ez_setup.py: an alternatif for setuptools library.
+
+
+
+
+
+----------------------------------
+Importer Modules (alfanous-import)
+----------------------------------
+:main.py: the main module that relays all the modules and offers a console interface.
+:Downloader.py: download online resources.
+:Parser.py: parse the resources.
+:Standardizer.py: convert the resources to a standard format (not implemented).
+:Importer.py: import the resources into the main database.
+:Transformer.py: transfer&convert the resources from the main database into Whoosh indexes.
+:Updater.py: update the data in API based on actual resources.
+:initial_importing.py: a script used the first-time to load many resources (deprecated).
+:setup.py: the script of installation & packaging (setuptools).
\ No newline at end of file