
Django Ledger is a powerful financial management system built on the Django Web Framework. It offers a simplified API for handling complex accounting tasks in financially driven applications.
Created and developed by Miguel Sanda.
FREE Get Started Guide | Join our Discord | Documentation | QuickStart Notebook
All pull requests are welcome, as long as they address bugfixes, enhancements, new ideas, or add value to the project in any shape or form.
Please refrain from submitting pull requests that focus solely on code linting, auto-generated code, refactoring, or similar cosmetic non-value add changes.
We're looking for contributors with:
If you have relevant experience, especially in accounting, we welcome your pull requests or direct contact.
Django Ledger is a Django application. If you haven't, you need working knowledge of Django and a working Django project before you can use Django Ledger. A good place to start is here.
Make sure you refer to the django version you are using.
The easiest way to start is to use the zero-config Django Ledger starter template. See details here. Otherwise, you may create your project from scratch.
INSTALLED_APPS = [
...,
'django_ledger',
...,
]
TEMPLATES = [
{
'OPTIONS': {
'context_processors': [
'...',
'django_ledger.context.django_ledger_context' # Add this line to a context_processors list..
],
},
},
]
python manage.py migrate
from django.urls import include, path
urlpatterns = [
...,
path('ledger/', include('django_ledger.urls', namespace='django_ledger')),
...,
]
python manage.py runserver
Starting with version v0.8.0, Django Ledger introduces the DJANGO_LEDGER_USE_DEPRECATED_BEHAVIOR setting to control access to deprecated features and legacy behaviors.
Django Ledger comes with a basic development environment already configured under dev_env/ folder not to be used for production environments. If you want to contribute to the project perform the following steps:
git clone https://github.com/arrobalytics/django-ledger.git && cd django-ledger
pip install -U pipenv
pipenv install
If using a specific version of Python you may specify the path.
pipenv install --python PATH_TO_INTERPRETER
pipenv shell
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
Navigate to your projects directory.
Give executable permissions to entrypoint.sh
sudo chmod +x entrypoint.sh
Add host '0.0.0.0' into ALLOWED_HOSTS in settings.py.
Build the image and run the container.
docker compose up --build
docker ps
Select container id of running container and execute following command
docker exec -it containerId /bin/sh
python manage.py createsuperuser
After setting up your development environment you may run tests.
python manage.py test django_ledger


$ claude mcp add django-ledger \
-- python -m otcore.mcp_server <graph>