Decodes transaction data providing a human-readable output.
cp .env.sample .envdocker compose build
docker compose upThen go to http://localhost:8000 to see the service documentation.
Use a virtualenv if possible:
python -m venv venvThen enter the virtualenv and install the dependencies:
source venv/bin/activate
pip install -r requirements.txt
pre-commit install -f
cp .env.sample .envThis projects is using Alembic to manage database migrations. To create a new migration based on changes made to the model code, run the following command:
alembic revision --autogenerate -m "MIGRATION TITLE"To open an interactive Python shell within a Docker container and query the database, use the following command:
docker exec -it safe-decoder-service-web-1 python -m IPython -i ./scripts/db_profile.py
Example usage:
contracts = await Contract.get_all()
contracts[0].address
b'J\xdb\xaa\xc7\xbc#\x9e%\x19\xcb\xfd#\x97\xe0\xf7Z\x1d\xe3U\xc8'Call await restore_session() to reopen a new session.
This repository contains code developed under two different ownership and licensing regimes, split by a defined cut-over date.
- Up to and including February 16, 2026: code is Copyright (c) Safe Ecosystem Foundation and licensed under the MIT License. The final SEF-owned MIT snapshot is tagged as
sef-mit-final. - From February 17, 2026 onward: new development is Copyright (c) Safe Labs GmbH and licensed under the Functional Source License, Version 1.1 (MIT Future License).
Users who require a purely MIT-licensed codebase should base their work on the sef-mit-final tag. The historical MIT-licensed code remains MIT and is not retroactively relicensed.
For details, see LICENSE.md and NOTICE.md.