Django Hordak¶
Django Hordak is the core functionality of a double entry accounting system. It provides thoroughly tested core models with relational integrity constrains to ensure consistency.
Hordak also includes a basic accounting interface. This should allow you to get up-and-running quickly. However, the expectation is that you will either heavily build on this example or use one of the interfaces detailed below.
Interfaces which build on Hordak include:
Requirements¶
Hordak is tested against:
Django 4.2, 5.0
Python >= 3.8
Postgres >= 9.5, and with partial support for MariaDB >= 10.5 (MySQL >= 8.0)
Other databases (e.g. SQLite) are unsupported. This is due to the database constraints we apply to ensure data integrity.
- Installation
- Settings
- Customising Templates
- Double Entry Accounting for Developers
- Hordak Database Triggers
- API Documentation
- Notes
- Hordak Changelog
- 2.0.1 (unreleased)
- 2.0.0 (2024-11-29)
- Version 1.17.0 (unreleased)
- Version 1.16.0, Fri, 25 June 2024
- Version 1.15.0, Fri, 5 Jan 2024
- Version 1.14.0, Tue 20 Jun 2023
- Version 1.13.0, Fri 17 Feb 2023
- Version 1.12.0, Thu 3 Nov 2022
- Version 1.11.1, Fri 17 Sep 2022
- Version 1.11.0, Fri 16 Sep 2022
- Version 1.10.2, Tue 15 Mar 2022
- Version 1.10.1, Mon 21 Feb 2022
- Version 1.10.0, Tue 21 Apr 2020
- Version 1.9.0, Tue 23 Jul 2019
- Version 1.8.3, Sat 08 Dec 2018
- Version 1.8.2, Wed 24 Oct 2018
- Version 1.8.1, Fri 31 Aug 2018
- Version 1.8.0, Tue 28 Aug 2018
- Version 1.7.0, Sat 25 Aug 2018
- Version 1.6.1, Thu 29 Mar 2018
- Version 1.6.0, Thu 04 Jan 2018
- Version 1.5.0, Thu 02 Mar 2017
- Version 1.4.0, Tue 28 Feb 2017
- Version 1.3.0, Sat 25 Feb 2017
- Version 1.2.0, Sun 18 Dec 2016
- Version 1.1.2, Fri 16 Dec 2016
- Version 1.1.1, Mon 12 Dec 2016
- Version 1.1.0, Sat 10 Dec 2016
- Version 1.0.3, Sun 09 Oct 2016
- Version 1.0.2, Sun 09 Oct 2016
- Version 1.0.1, Fri 16 Sep 2016
- Version 1.0.0 (first version), Tue 13 Sep 2016
Current limitations¶
Django Hordak currently does not guarantee sequential primary keys of database entities. IDs are created using regular Postgres sequences, and as a result IDs may skip numbers in certain circumstances. This may conflict with regulatory and audit requirements for some projects. This is an area for future work (1, 2, 3, 4).