A simple Django package to build web-based Indy agent applications.
Project description
Indy Community is a simple Django framework for building Hyperledger Indy Agent enabled web applications. Detailed documentation is in the “docs” directory.
Please see https://github.com/AnonSolutions/django-indy-community for detailed docmentation
Quick start
You can find a basic Indy Community application here https://github.com/AnonSolutions/indy-community-demo
To add indy_community to your own django application:
Copy the requirements.txt file into your application directory and install requirements
Add “indy_community” to your INSTALLED_APPS setting like this:
INSTALLED_APPS = [
# this should go first
'indy_community.apps.IndyCoreConfig',
...
]
Add the following Indy configuration settings (this is for a local install):
import platform
def file_ext():
if platform.system() == 'Linux':
return '.so'
elif platform.system() == 'Darwin':
return '.dylib'
elif platform.system() == 'Windows':
return '.dll'
else:
return '.so'
INDY_CONFIG = {
'storage_dll': 'libindystrgpostgres' + file_ext(),
'storage_entrypoint': 'postgresstorage_init',
'payment_dll': 'libnullpay' + file_ext(),
'payment_entrypoint': 'nullpay_init',
'wallet_config': {'id': '', 'storage_type': 'postgres_storage'},
'wallet_credentials': {'key': ''},
'storage_config': {'url': 'localhost:5432'},
'storage_credentials': {'account': 'postgres', 'password': 'mysecretpassword', 'admin_account': 'postgres', 'admin_password': 'mysecretpassword'},
'vcx_agency_url': 'http://localhost:8080',
'vcx_agency_did': 'VsKV7grR1BUE29mG2Fm2kX',
'vcx_agency_verkey': 'Hezce2UWMZ3wUhVkh2LfKSs8nDzWwzs2Win7EzNN3YaR',
'vcx_payment_method': 'null',
'vcx_enterprise_seed': '000000000000000000000000Trustee1',
'vcx_institution_seed': '00000000000000000000000000000000',
'vcx_genesis_path': '/tmp/atria-genesis.txt',
'register_dids': True,
'ledger_url': 'http://localhost:9000',
}
Configure background tasks:
INSTALLED_APPS = [
...
'background_task',
...
]
BACKGROUND_TASK_RUN_ASYNC = False
BACKGROUND_TASK_ASYNC_THREADS = 1
MAX_ATTEMPTS = 1
Ensure your local templates are loaded first:
TEMPLATES = [
{
...
'DIRS': [
os.path.join(BASE_DIR, '<your app>/templates'),
],
...
},
]
Override User, Organization and Relationship models, if you have your own subclass of these models:
AUTH_USER_MODEL = 'indy_community.IndyUser'
INDY_ORGANIZATION_MODEL = 'indy_community.IndyOrganization'
INDY_ORG_RELATION_MODEL = 'indy_community.IndyOrgRelationship'
Include the indy URLconf in your project urls.py like this:
path('indy/', include('indy_community.urls')),
Ensure you have all pre-requisites running, as per django-indy-community docs
Run python manage.py migrate to create the indy models.
Run python manage.py runserver and connect to http://localhost:8000/indy`
You can customize the UI and add event handling for VCX Connection and Messaging events. See the demos in https://github.com/AnonSolutions/indy-community-demo for examples of how to do this.
View detailed documentation in the Docs directory (https://github.com/AnonSolutions/django-indy-community)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django-indy-community-0.1.14.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 20feec1b493eaf850067a7b8ef8c04f286baf4020d1609d20bcb1c12180b0483 |
|
MD5 | 5d3c55a43d6a579c3a94cd61473aaa10 |
|
BLAKE2b-256 | 2f6bab7e45471fdad95bdaa94210c21d5cd62a7e608f5ee3fcd648a9bf3d7fad |
Hashes for django_indy_community-0.1.14-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9845dd4c3e7fc43ee5644cb29894939436eb8d738141783439ed39602b8a0e66 |
|
MD5 | 68b8f1fd0886f79bf3afb8c2f3188a3b |
|
BLAKE2b-256 | 2d2ab2d97b4cd3d39e8b9fcd5b9d7a5334dcd9a24c5d72a01acc6e438fe6dc82 |