{"id":16899495,"url":"https://github.com/funkyfuture/neomodel","last_synced_at":"2026-04-18T09:37:05.555Z","repository":{"id":77696871,"uuid":"505512477","full_name":"funkyfuture/neomodel","owner":"funkyfuture","description":null,"archived":false,"fork":false,"pushed_at":"2022-06-20T16:13:35.000Z","size":1008,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"properties","last_synced_at":"2025-01-25T12:27:13.896Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/funkyfuture.png","metadata":{"files":{"readme":"README.rst","changelog":"Changelog","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":"AUTHORS.txt","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-20T16:13:05.000Z","updated_at":"2022-06-20T16:14:40.000Z","dependencies_parsed_at":"2023-03-21T03:33:08.667Z","dependency_job_id":null,"html_url":"https://github.com/funkyfuture/neomodel","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/funkyfuture%2Fneomodel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkyfuture%2Fneomodel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkyfuture%2Fneomodel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkyfuture%2Fneomodel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/funkyfuture","download_url":"https://codeload.github.com/funkyfuture/neomodel/tar.gz/refs/heads/properties","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244609626,"owners_count":20480819,"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-10-13T17:49:10.034Z","updated_at":"2026-04-18T09:37:00.531Z","avatar_url":"https://github.com/funkyfuture.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":".. image:: https://raw.githubusercontent.com/robinedwards/neomodel/master/doc/source/_static/neomodel-300.png\n   :alt: neomodel\n\nAn Object Graph Mapper (OGM) for the neo4j_ graph database, built on the awesome neo4j_driver_\n\n- Familiar Django model style definitions.\n- Powerful query API.\n- Enforce your schema through cardinality restrictions.\n- Full transaction support.\n- Thread safe.\n- pre/post save/delete hooks.\n- Django integration via django_neomodel_\n\n.. _django_neomodel: https://github.com/robinedwards/django-neomodel\n.. _neo4j: https://www.neo4j.org\n.. _neo4j_driver: https://github.com/neo4j/neo4j-python-driver\n\n.. image:: https://secure.travis-ci.org/robinedwards/neomodel.png\n    :target: https://secure.travis-ci.org/robinedwards/neomodel/\n\n.. image:: https://readthedocs.org/projects/neomodel/badge/?version=latest\n    :alt: Documentation Status\n    :scale: 100%\n    :target: https://neomodel.readthedocs.io/en/latest/?badge=latest\n\nDocumentation\n=============\n\nAvailable on readthedocs_.\n\n.. _readthedocs: http://neomodel.readthedocs.org\n\nRequirements\n============\n\n- Python 3.4+\n- neo4j 3.0, 3.1, 3.2, 3.3\n\nInstallation\n============\n\nInstall from pypi (recommended)::\n\n    $ pip install neomodel\n\nTo install from github::\n\n    $ pip install git+git://github.com/robinedwards/neomodel.git@HEAD#egg=neomodel-dev\n\nUpgrading 2.x to 3.x\n====================\n\n * Now utilises neo4j_driver as the backend which uses bolt so neo4j 3 is required\n * Connection now set through config.DATABASE_URL (see getting started docs)\n * The deprecated category() method on StructuredNode has been removed\n * The deprecated index property on StructuredNode has been removed\n * The streaming=True flag is now irrelevant with bolt and produces a deprecation warning\n * Batch operations must now be wrapped in a transaction in order to be atomic\n * Indexing NodeSets returns a single node now as opposed to a list\n\nContributing\n============\n\nIdeas, bugs, tests and pull requests always welcome.\n\nRunning the test suite\n----------------------\n\nMake sure you have a fresh virtualenv and `nose` installed::\n\n    $ pip install nose\n\nAlso a Neo4j database version 3 or higher to run the tests on. (it will wipe this database for each test run)::\n\n    $ export NEO4J_BOLT_URL=bolt://neo4j:neo4j@localhost:7687 # (the default)\n\nSetup a virtual environment, install neomodel for development and run the test suite::\n\n    $ virtualenv venv\n    $ source venv/bin/activate\n    $ python setup.py develop\n    $ nosetests -s\n\nIf your running a neo4j database for the first time the test suite will set the password to 'test'.\n\nIf you have ``docker-compose`` installed, you can run the test suite against all supported Python\ninterpreters and neo4j versions::\n\n    # in the project's root folder:\n    $ ./tests-with-docker-compose.sh\n\n\n.. image:: https://badges.gitter.im/Join%20Chat.svg\n   :alt: Join the chat at https://gitter.im/robinedwards/neomodel\n   :target: https://gitter.im/robinedwards/neomodel?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffunkyfuture%2Fneomodel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffunkyfuture%2Fneomodel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffunkyfuture%2Fneomodel/lists"}