Bibletime2 Planning

From BibleTime
Revision as of 07:39, 25 May 2009 by Mgruner (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This is the discussion site for BibleTime 2.x.

BibleTime 2.x will be a complete rewrite, cross-platform and QT4 based.

This will take a long time, because we are very few and have very limited time.

Contents

Goals

  • We want to create an excellent cross-platform Bible study application that is easy to install and use while offering powerful and uncommon features to the non-technical end user.
  • We want to support Bible translating organizations like Wycliffe with powerful/specialized functions in a simple user interface.
  • We want to support people in poorer countries by emphasizing language support and reasonable runtime resource consumption.

ToDo

Here we should maintain our ToDo list including who is working on what and what the status of each task is.

Priority Task Responsible Other team members Status
A Prepare the port of BibleTime 1.x to KDE 4 by research Eeli Benjie 100%
A Implement the port of BibleTime 1.x to KDE 4 in HEAD after a fork for KDE 3.x (so that every file can be compiled) Eeli Benjie, Martin 75%
B Find and fix bugs after the KDE4 port code can be compiled Eeli Benjie, Martin 0%
B Make sure the installation works ok for non-code files like images and handbook     0%

Because Joachim decided to step back from active development, all BibleTime 2 development will be put "on hold" for now.

Priority Task Responsible Other team members Status
C Plan backend class structure   Martin 20%
C Describe tree database table structure Martin   90%
C Plan Model/View structure + Interface(s) for working with canonical data Martin   10%
C Collect available canonical metadata Martin   0%
C Implement verse parsing algorithm Martin   60%

Subpages

Roadmap

This lists the steps we have to take. We can't plan with dates, because this is our hobby, not our job.

  1. Plan backend structure
  2. Implement first backend version for OSIS (no searching, no rendering), to be used from the commandline
  3. Implement GUI to navigate on the module and spit out the xml content

...

Implementation details

External libs

To be used

  • QT >= 4.2
    • with QtSQL's sqlite 3 driver (sqlite >= 3.3)
    • with QtNetwork for HTTP/FTP transport
  • Sword 1.5.9 or later (no SVN)
  • clucene >= 0.9.16a
  • Boost (RAII templates, (de)compression support)

To be evaluated

  • QtConcurrent is a high-level multi-threading library, might be useful for backround module indexing and similair things

Not to be used

Tools

  • The free Intel C++ compiler looks nice: http://www.intel.com/cd/software/products/asmo-na/eng/340679.htm. It's free for open-source development under Linux. It may offer better code generation and smaller library and binary sizes if we do a static build.
  • http://sourceforge.net/projects/qtwin offers patches to Qt 4.x to enable Qt to be built using Borland's C++Builder and Microsoft Visual Studio.
  • CCCC looks like a useful tools to compute metrics of the source code. We should use that from the beginning to make sure our code base has some kind of quality :)
  • Here is the complete toolchain under Windows