{"id":29422450,"url":"https://github.com/apache/incubator-resilientdb-resdb-orm","last_synced_at":"2025-07-12T05:05:06.299Z","repository":{"id":252329277,"uuid":"840112618","full_name":"apache/incubator-resilientdb-ResDB-ORM","owner":"apache","description":"Global-Scale Sustainable Blockchain Fabric","archived":false,"fork":false,"pushed_at":"2025-06-29T03:04:34.000Z","size":115,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-07-08T02:05:56.014Z","etag":null,"topics":["blockchain","blockchain-platform","crypto","distributed-database","distributed-ledger","key-value-database","smart-contracts","solidity","utxo"],"latest_commit_sha":null,"homepage":"https://resilientdb.incubator.apache.org/","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/apache.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-09T02:09:19.000Z","updated_at":"2025-06-29T03:04:42.000Z","dependencies_parsed_at":"2024-08-09T03:29:50.968Z","dependency_job_id":"0bdc41d3-8be2-4980-bd03-b82c040fe37b","html_url":"https://github.com/apache/incubator-resilientdb-ResDB-ORM","commit_stats":null,"previous_names":["resilientecosystem/resdb-orm","apache/incubator-resilientdb-resdb-orm"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/apache/incubator-resilientdb-ResDB-ORM","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-resilientdb-ResDB-ORM","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-resilientdb-ResDB-ORM/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-resilientdb-ResDB-ORM/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-resilientdb-ResDB-ORM/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/incubator-resilientdb-ResDB-ORM/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-resilientdb-ResDB-ORM/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264940384,"owners_count":23686243,"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":["blockchain","blockchain-platform","crypto","distributed-database","distributed-ledger","key-value-database","smart-contracts","solidity","utxo"],"created_at":"2025-07-12T05:05:01.306Z","updated_at":"2025-07-12T05:05:06.286Z","avatar_url":"https://github.com/apache.png","language":"Python","readme":"\n# ResDB-ORM\n\nResDB-ORM is a Python module designed to simplify interactions with ResilientDB's key-value store database by providing an Object-Relational Mapping (ORM) interface. This library allows developers to use basic CRUD functionalities with ease.\n\n## Prerequisites\n\nBefore using this repository, ensure that the following services are running:\n\n1. **kv_server**: This is the key-value store server that forms the backend for ResilientDB. Follow the instructions in the [ResilientDB repository](https://github.com/apache/incubator-resilientdb) to set it up and start it.\n\n2. **ResilientDB-GraphQL**: This provides a GraphQL interface to interact with ResilientDB. Follow the instructions in the [ResilientDB-GraphQL repository](https://github.com/apache/incubator-resilientdb-graphql) to set it up and start it.\n\n## Setting up Prerequisites\n\nYou can use the provided INSTALL.sh script to automatically install and set up both the kv_server and ResilientDB-GraphQL services. The script will clone the necessary repositories, build the services, and start them.\n\nTo use the INSTALL.sh script:\n\n```bash\ngit clone https://github.com/ResilientEcosystem/ResDB-ORM.git\ncd ResDB-ORM\n./INSTALL.sh\n```\n\n## Installation\n\nResDB-ORM is also available on PyPI and can be installed using pip:\n\n```bash\npip install resdb-orm\n```\n\nOnce the above services are running, follow the steps below to set up and use ResDB-ORM.\n\n### 1. Clone this Repository\n\n```bash\ngit clone https://github.com/ResilientEcosystem/ResDB-ORM.git\ncd ResDB-ORM\n```\n\n**Note:** The script may require sudo privileges to install dependencies and set up services.\n\n### 2. Create and Activate a Virtual Environment\n\nSet up a virtual environment to manage dependencies:\n\n```bash\npython3 -m venv venv\nsource venv/bin/activate\n```\n\n### 3. Install Dependencies\n\nEnsure that you have all necessary dependencies installed:\n\n```bash\npip install -r requirements.txt\n```\n\n### 4. Configure  `config.yaml`\n\nUpdate the  `config.yaml`  file to point to the correct Crow endpoint. After running ResilientDB-GraphQL, you should see output similar to the following:\n\n```scss\n(2024-08-17 00:03:53) [INFO    ] Crow/1.0 server is running at \u003cCROW_ENDPOINT\u003e using 16 threads\n(2024-08-17 00:03:53) [INFO    ] Call `app.loglevel(crow::LogLevel::Warning)` to hide Info level logs. \n```\nReplace  `\u003cCROW_ENDPOINT\u003e`  in the  `config.yaml`  file with the actual endpoint URL from the above output.\n\n### 5. Verify Installation\n\nRun the provided  `test.py`  script to verify that everything is set up correctly:\n\n```bash\npython test.py\n```\nThis script will perform basic operations to ensure that the connection to the ResilientDB instance is functional.\n\n### 6. Import the Module in Your Own Code\n\nYou can now import and use the  `ResDBORM`  module in your own projects:\n\n```python\nfrom resdb_orm.orm import ResDBORM\n```\n\n# Initialize the ORM\n```python\norm = ResDBORM()\n\n# Example usage: Create a new record\ndata = {\"key\": \"value\"}\nrecord_id = orm.create(data)\nprint(f\"Record created with ID: {record_id}\")` \n```\n\n## Contributing\n\nWe welcome contributions to this project! Please feel free to submit pull requests, report issues, or suggest new features.\n\n## License\n\nThis project is licensed under the  Apache License 2.0.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fincubator-resilientdb-resdb-orm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fincubator-resilientdb-resdb-orm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fincubator-resilientdb-resdb-orm/lists"}