LedgerSMB is a fork of a popular general ledger software package called SQL-Ledger largely written and maintained by Dieter Simader.
LedgerSMB is a free software double entry accounting system. Accounting data is stored in an SQL Database Server and a standard web browser can be used as its user interface. The system uses the Perl language and a Perl database interface module for processing, and PostgreSQL for data storage.
LedgerSMB is distributed under the terms of the GNU General Public License.
The original codebase of the project had a number of shortcomings. The Perl code generated both database queries and web pages by concatenating or printing portions of the text so that it came out as a distinct page. While this functioned reasonably well, it made the interface very difficult to modify, and interoperability with projects written in other languages was particularly difficult.
Faced with these challenges, the LedgerSMB team developed a new architecture which addresses these issues by adding support for templates in the user interface, and moving all database calls into stored procedures. Although closely resembling model-view-controller (MVC) in structure, it is not broken down in precisely the same way as other MVC implementations.
1.3 will move several important parts of the software to the new architecture including contact management and administrative interfaces.