{"id":13735801,"url":"https://github.com/chainhaus/pycorda","last_synced_at":"2025-05-08T12:31:15.478Z","repository":{"id":91703941,"uuid":"193286979","full_name":"chainhaus/pycorda","owner":"chainhaus","description":"Python analytics framework for Corda vault and node data","archived":false,"fork":false,"pushed_at":"2020-11-25T00:26:51.000Z","size":2188,"stargazers_count":13,"open_issues_count":0,"forks_count":3,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-08-04T03:05:35.183Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chainhaus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-06-22T23:12:00.000Z","updated_at":"2024-04-01T18:20:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"6d03528b-cf26-4cb2-9b8d-aca1f1296275","html_url":"https://github.com/chainhaus/pycorda","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chainhaus%2Fpycorda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chainhaus%2Fpycorda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chainhaus%2Fpycorda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chainhaus%2Fpycorda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chainhaus","download_url":"https://codeload.github.com/chainhaus/pycorda/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224732131,"owners_count":17360416,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T03:01:11.418Z","updated_at":"2024-11-15T04:30:43.591Z","avatar_url":"https://github.com/chainhaus.png","language":"Python","funding_links":[],"categories":["Tools"],"sub_categories":[],"readme":"# PyCorda\nPyCorda is a framework for accessing data on the Corda DLT using Python. It includes the ability to quickly generate charts and graphs and will soon have machine learning capabilities. PyCorda is covered in-depth in the book **[Mastering Corda](https://www.amazon.com/Mastering-Corda-Building-Distributed-Applications/dp/149204718X/)**. The official website for PyCorda is **[PyCorda.com](http://PyCorda.com)**.\n\n## Getting Involved\nIf you would like to be involved in PyCorda shoot an email to hello@chainhaus.com\n\n\n# Using PyCorda\n\nAccess node and vault data for analytics using pandas DataFrames. Currently only works with H2 database. \nWe'll be adding other DBs shortly and possibly support for queryable states.\n\n## Example\n\n```\nimport pycorda as pyc\n\nurl = 'jdbc:h2:tcp://localhost:52504/node'\nusername = 'sa'\npassword = ''\nnode = pyc.Node(url, username, password)\nprint(node.get_node_infos())\nnode.close()\n```\n\n## Installation\n\nTo get started using the PyCorda library, install it with\n\n```\npip install pycorda\n```\n\nNote that you may need to install other required software, depending on your platform. See the platform specific instructions.\n\nIf there is a H2 server running with tcp connections allowed,\nthen you can connect to a database located at the JDBC url with:\n\n```\nfrom pycorda import Node\nnode = Node(url, username, password)\n```\n\nAn h2.jar file is required in your projects local folder. If your H2 jar file is elsewhere in your filesystem, try this. This needs to be done only once:\n\n```\nfrom pycorda import Node\nnode = Node(url, username, password, path_to_jar)\n```\nAccepted JDBC urls are in the format jdbc:h2:tcp://hostname:portnumber/path_to_database.\n\n## Managing H2 Jars\n\nAn h2.jar file stored locally in the project folder is required. H2Tools allows you to pull\na jar programmatically. You'll need to do this once, so either manually or programmatically is fine\nas long as the h2.jar file is there.\n\n```\nimport pycorda as pyc\nh2 = pyc.H2Tools()\nver = h2.get_latest_version()\nprint(ver)\nh2.download_h2jar() # downloads latest h2 jar and stores in local folder as h2.jar\n```\n\n## Testing\n\nTo run the tests, ensure the testing environment is properly configured and place the correct urls at tests/config.json.\nYou can then execute the following commands from the project directory:\n\n```\npython -m unittest tests.test\npython -m unittest tests.test_invalid_driver\n```\n\n## Requirements\n\n1. Currently supports 64-bit versions of Python 3 and JVMs only\n2. Drop an H2 jar into your project file naming it h2.jar\n\n## Windows\n\nYou will need to install the Microsoft C++ build tools downloaded from https://visualstudio.microsoft.com/visual-cpp-build-tools/.\n\n## Ubuntu\n\nNote that for Ubuntu, you may need to install wheel with\n\n```\npip install wheel\npython setup.py bdist_wheel\n```\n\nAlso ensure you have gcc installed:\n\n```\nsudo apt-get update\nsudo apt-get install gcc\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchainhaus%2Fpycorda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchainhaus%2Fpycorda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchainhaus%2Fpycorda/lists"}