Links: - [[!wikipedia GNUCash]] - Wikipedia - - Project homepage Actually not named "GNUCash" but GnuCash although it is part of the GNU Project. ## Technical - C/C++ with CMake + make - Scheme ## Preliminary evaluation ### Positive - [Cross-platform](http://www.gnucash.org/) - [Track record](http://en.wikipedia.org/wiki/GnuCash#Users) with 501(c)3 orgs. - [Very mature codebase](http://www.ohloh.net/p/gnucash) ### Negative - Uses svn for source code management. ### Comments Josh Berkus: from my perspective, this has all of the drawbacks of ledger-cli, without the advantages. ## Evaluation ### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases - [[Trial Balance Report|UseCases/GeneratingReports#trial-balance]]: Yes - [[Bank Reconciliation Report|UseCases/GeneratingReports#bank-reconcilation]]: Yes - [[Chart of Accounts|UseCases/GeneratingReports#chart-of-accounts]]: Yes - [[Cash Disbursements Journal|UseCases/GeneratingReports#cash-disbursements]]: Yes - [[Income Report|UseCases/GeneratingReports#income-report]]: Yes - [[Expense Report|UseCases/GeneratingReports#expense-report]]: Yes ### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases for Fund Accounting Can each of these reports be generated, confined to a specific temporarily restricted asset type? [GnuCash is not designed for fund accounting](http://lists.gnucash.org/pipermail/gnucash-user/2006-October/017931.html) although it can possibly be configured to use fund accounting. ### Evaluation of [[Fund Accounting|UseCases/FundAccounting]] UseCases *Not sure.* - [[Fund-only View|UseCases/FundAccounting#fund-view]]: FIXME - [[Funds as part of whole org View|UseCases/FundAccounting#fundless-view]]: FIXME - [[Ignore Funds for operations|UseCases/FundAccounting#fundless-view]]: FIXME ### [[UseCases/Collaborating]] evaluation - [[Simultaneous Editing of Ledger|UseCases/Collaborating#simultaneous-ledger-edits]]: FIXME - FIXME: Other uses cases need rewrite. ### Evaluation of [[Double-entry Accounting|UseCases/DoubleEntryAccounting]] UseCases - Does the system implement pure double-entry accounting? Yes ### Evaluation of [[TrackingDocumentation|UseCases/TrackingDocumentation]] UseCases - Does the system [[link up to external documentation|UseCases/TrackingDocumentation#document-link-up]]? No - Does it have a [[the ability to explore transactions via documentation linkage|UseCases/TrackingDocumentation#document-link-explore]]? No ### Evaluation of [[Handling multiple currencies|UseCases/MultiCurrency]] UseCases - Does it support the concept of [[a single functional currency|UseCases/MultiCurrency]], while still permitting multi-currency entries? GnuCash has one currency per account, and whenever a transfer occurs between two accounts with different currency you specify the exchange rate. ### Evaluation of [[draft transaction|UseCases/DraftTransactions]] UseCases - Does the system allow [[generally for draft transactions|UseCases/DraftTransactions#draft-general]] that can be later approved before officially being posted to the books? It does not seem so. ### Evaluation of WorkFlow UseCases There is no specific workflow, GnuCash is a straight-up double-entry accounting program with report generation - Is a [[specific workflow dictated by the system|UseCases/WorkFlow#workflow-dictated]]? No, it's very basic, single-user workflow. - Is a [[the workflow configurable|UseCases/WorkFlow#workflow-configurable]]? No, not that I can find. - [[Unaccrued Invoice|UseCases/WorkFlow#unaccrued-invioice]]? It does not seem so ### Evaluation of the [[Reading and Reporting API|UseCases/ReadingAPI]] GnuCash can be configured to store the data in a PostgreSQL, MySQL or SQLite database, where you would have full access to all data from within another application. ### Evaluation of the [[Storage API|UseCases/StorageAPI]] See above ### Evaluation of the [[Community Health|UseCases/CommunityHealth]] - Is the [[license both determined as Free Software by FSF and OSI-approved|USeCases/CommunityHealth#license-approved]]? Yes - Is the [[license GPL-compatible||UseCases/CommunityHealth#gpl-compatible]]? Yes - Does the project [[require assignment of copyright or a CLA to get code upstreamed|UseCases/CommunityHealth#no-cla-for-profit]]? No, does not seem like it. - How many [[active developers/companies contribute to the project||USeCases/CommunityHealth#dev-count]]? 11 * If there aren't many, how hard would it be to take over the project if needed? - Is there good [[developer documentation|UseCases/CommunityHealth#dev-docs]]? Yes - How easy it to [[engage as a developer with the community|UseCases/CommunityHealth#dev-welcoming]]? Public IRC channel, public mailing list, public source code repository, public issue tracker.