The GnuCash pages provide overview & introductory material about GnuCash, and in general present a glossier, more accessilbe format. This page is aimed at developers, not users.
We believe that a GNU GPL project should provide goals and motivations at both the large and the small scales, in order to focus and motivate the developers. Over-arching and grand goals are difficult to grasp and carry out; yet their lack serves only to dissuade the grand thinkers. A list of detailed goals may be mind-numbing to the casual reader; yet, without them, the roll-up-your-sleeves-and-do-it coder cannot know where to begin. Detailed goals lend a concreteness to the discussion: they can be architected, designed and coded at any time by coders of any ability. Thus, we present a list of goals, large and small, with the hope that the small goals will fall quickly, and the large ones shall turn into a multitude of small ones.
In particular, with respect to OFX & online banking, one should be able to think of GnuCash as a very special browser, capable of browsing financial web sites. Instead of talking HTML/HTTP, it would talk OFX or Gold with the remote server. Besides just statically viewing ones bank account, it should also allow bill payment and other account manipulation.
Other output format possibilities include SGML and XML. In the long run, these are preferable to HTML, since DSSSL and Jade (James DSSSL Engine can be used to convert to RTF, Postscript, etc. XML is the wave of the future.
The Report Generator should be a "dockable" subsystem of the whole. Thus, it should be possible to run the report generator in a stand-alone, read-only fashion without having to start up the main application.
Graphs, charts, etc. too ...
One hard part of reporting is designing a configurable interface, so that people can build custom reports.
Status:
Status:
Status:
Status:
Current Status: the latest beta-development releases (version 1.1.x) contain such an object.
Current Status:
The overall architecture is envisioned to be as so: All code, including the transaction engine, the file I/O routines, the menus, and the ledger, will be abstracted into compact modules that can function independently of each other. At the highest level, there will be a infrastructure with extension language interfaces that will "wire together" the various modules.
Such "wiring together" will consist of a dispatch infrastructure that will allow arbitrary menu entries to be hooked to arbitrary modules. The configuration for menu entries, and thier associated callbacks, will be specified in an ext-lang configuration file. At the final stages, it is hoped that new modules can be imported without requiring that the application itself be recompiled & relinked.
Status:
The following industrial-strength features are still needed:
Status:
Status:
Most of the work has been done by Jeremy Collins, with considerable help from Rob Browning. Daniel R Risacher <magnus@alum.mit.edu> keeps threatening to do something ...
Current status:
Current status:
Current status:
Current status:
Status: Some basic reorganization of register was done to support mixed multi-line split display. However, the actual display of such things remaions unimplemented.
field-name tab fieldname tab fieldname \n ------------------------------------------ \n value tab value tab value \n value tab value tab value \n etc ...Its a very simple, very basic flat table format. It should match the SQL schemas in order to minimize I/O complexity and incompatibility.
cvs -d :pserver:cvs@linas.org:/home/cvs/cvsroot loginThe password is "guest". To get a copy of the source, do a
cvs -d :pserver:cvs@linas.org:/home/cvs/cvsroot checkout xaccNote that various versions can be accessed with tags. For example, the tag xacc-10b17 will get you version 1.0.17 and the tag xacc-11b6 will get you version 1.1.6 In particular, the latest code in the 1.0.x series (the stable series) is available on the branch xacc-10-patch. For historical record, you can view Robin Clark's original source from October 1997 at xacc-09a. Things have changed a *lot* since then.
(March 1988)
Status: Essentially more-or-less done (July/August 1998)