{"id":20956580,"url":"https://github.com/bluebrain/snap","last_synced_at":"2025-05-14T05:32:09.680Z","repository":{"id":39587227,"uuid":"189050407","full_name":"BlueBrain/snap","owner":"BlueBrain","description":"The Blue Brain Pythonic Simulation and Network Analysis Productivity layer","archived":true,"fork":false,"pushed_at":"2025-02-26T12:50:29.000Z","size":3018,"stargazers_count":19,"open_issues_count":16,"forks_count":10,"subscribers_count":35,"default_branch":"master","last_synced_at":"2025-04-25T17:58:52.685Z","etag":null,"topics":["analysis","modeling","simulation"],"latest_commit_sha":null,"homepage":"https://bluebrainsnap.readthedocs.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BlueBrain.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"COPYING","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}},"created_at":"2019-05-28T15:00:49.000Z","updated_at":"2025-02-26T12:50:33.000Z","dependencies_parsed_at":"2024-01-15T17:09:46.375Z","dependency_job_id":"a32076b4-2217-4abc-a228-eef16adcc413","html_url":"https://github.com/BlueBrain/snap","commit_stats":{"total_commits":149,"total_committers":12,"mean_commits":"12.416666666666666","dds":0.610738255033557,"last_synced_commit":"ecb3f19ef04a3dc6364e7bee50811cca188e4973"},"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fsnap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fsnap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fsnap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fsnap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BlueBrain","download_url":"https://codeload.github.com/BlueBrain/snap/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254076977,"owners_count":22010630,"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":["analysis","modeling","simulation"],"created_at":"2024-11-19T01:26:58.853Z","updated_at":"2025-05-14T05:32:09.668Z","avatar_url":"https://github.com/BlueBrain.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":".. warning::\n   The Blue Brain Project concluded in December 2024, so development has ceased under the BlueBrain GitHub organization.\n   Future development will take place at: https://github.com/openbraininstitute/snap\n\n|banner|\n\n|build_status| |license| |coverage| |docs| |DOI|\n\nBlue Brain SNAP\n===============\n\nBlue Brain Simulation and Neural network Analysis Productivity layer (Blue Brain SNAP).\n\nBlue Brain SNAP is a Python library for accessing BlueBrain circuit models represented in\n`SONATA \u003chttps://github.com/AllenInstitute/sonata/blob/master/docs/SONATA_DEVELOPER_GUIDE.md\u003e`__ format.\n\nInstallation\n------------\n\nBlue Brain SNAP can be installed using ``pip``::\n\n   pip install bluepysnap\n\nUsage\n-----\n\nFor a full in-depth usage quide, there's a series of jupyter notebooks available in `doc/source/notebooks \u003cdoc/source/notebooks/\u003e`_ subfolder.\n\nThere are two main interface classes provided by Blue Brain SNAP:\n\n|circuit| corresponds to the *static* structure of a neural network, that is:\n\n- node positions and properties,\n- edge positions and properties, and,\n- detailed morphologies.\n\n|simulation| corresponds to the *dynamic* data for a neural network simulation, including:\n\n- spike reports,\n- soma reports, and,\n- compartment reports.\n\nMost of Blue Brain SNAP methods return `pandas \u003chttps://pandas.pydata.org\u003e`__ Series or DataFrames,\nindexed in a way to facilitate combining data from different sources (that is, by node or edge IDs).\n\nAmong other dependencies, Blue Brain SNAP relies on Blue Brain Project provided libraries:\n\n- `libsonata \u003chttps://github.com/BlueBrain/libsonata\u003e`__, for accessing SONATA files\n- `MorphIO \u003chttps://github.com/BlueBrain/MorphIO\u003e`__, for accessing detailed morphologies\n\nTools\n-----\n\nCircuit Validation\n~~~~~~~~~~~~~~~~~~\n\nBlue Brain SNAP provides a SONATA circuit validator for verifying circuits.\n\nThe validation includes:\n\n- integrity of the circuit config file.\n- existence of the different node/edges files and ``components`` directories.\n- presence of the \"sonata required\" field for node/edges files.\n- the correctness of the edge to node population/ids bindings.\n- existence of the morphology files for the nodes.\n\nThis functionality is provided by either the cli function:\n\n.. code-block:: shell\n\n    bluepysnap validate-circuit my/circuit/path/circuit_config.json\n\n\nOr a python free function:\n\n.. code-block:: python3\n\n    from bluepysnap.circuit_validation import validate\n    errors = validate(\"my/circuit/path/circuit_config.json\")\n\n\nSimulation Validation\n~~~~~~~~~~~~~~~~~~~~~\n\nSimilarly to circuit validation, Blue Brain SNAP also provides a SONATA simulation validator for verifying simulation configs.\n\nCurrently, the validator verifies that:\n\n- all the mandatory fields are present in the config file\n- all the properties in the `simulation config specification \u003chttps://sonata-extension.readthedocs.io/en/latest/sonata_simulation.html\u003e`__ have correct data types and accepted values\n- paths specified in the config exist\n- node sets specified in the config exist\n- input spike file's node IDs are found in the ``source`` node set\n- electrodes file's node IDs are found in the simulation's ``node_set`` (if set) or in non-virtual populations\n- neurodamus helpers and variables exist (requires ``neurodamus`` to be available in the environment)\n\nThis functionality is provided by either the cli function:\n\n.. code-block:: shell\n\n    bluepysnap validate-simulation my/circuit/path/simulation_config.json\n\n\nOr a python free function:\n\n.. code-block:: python3\n\n    from bluepysnap.simulation_validation import validate\n    errors = validate(\"my/circuit/path/simulation_config.json\")\n\n\nAcknowledgements\n----------------\n\nThe development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government’s ETH Board of the Swiss Federal Institutes of Technology.\n\nThis project/research has received funding from the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 785907 (Human Brain Project SGA2).\n\nThe Blue Brain Project would like to thank `Dr Eilif Muller \u003chttps://github.com/markovg\u003e`_, the author of the precursor to Blue Brain SNAP, for his invaluable insights and contributions\n\nLicense\n-------\n\nBlue Brain SNAP is licensed under the terms of the GNU Lesser General Public License version 3,\nunless noted otherwise, for example, external dependencies.\nRefer to `COPYING.LESSER \u003chttps://github.com/BlueBrain/snap/blob/master/COPYING.LESSER\u003e`__ and\n`COPYING \u003chttps://github.com/BlueBrain/snap/blob/master/COPYING\u003e`__ for details.\n\nCopyright (c) 2019-2024 Blue Brain Project/EPFL\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU Lesser General Public License version 3\nas published by the Free Software Foundation.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU Lesser General Public License for more details.\n\nYou should have received a copy of the GNU Lesser General Public License\nalong with this program.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n\n\n.. |build_status| image:: https://github.com/BlueBrain/snap/actions/workflows/run-tox.yml/badge.svg\n   :alt: Build Status\n\n.. |license| image:: https://img.shields.io/pypi/l/bluepysnap\n   :target: https://github.com/BlueBrain/snap/blob/master/COPYING.LESSER\n   :alt: License\n\n.. |coverage| image:: https://codecov.io/github/BlueBrain/snap/coverage.svg?branch=master\n   :target: https://codecov.io/github/BlueBrain/snap?branch=master\n   :alt: codecov.io\n\n.. |docs| image:: https://readthedocs.org/projects/bluebrainsnap/badge/?version=latest\n   :target: https://bluebrainsnap.readthedocs.io/\n   :alt: documentation status\n\n.. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.8026852.svg\n   :target: https://doi.org/10.5281/zenodo.8026852\n   :alt: DOI\n\n.. substitutions\n.. |banner| image:: doc/source/_images/BlueBrainSNAP.jpg\n.. |circuit| replace:: **Circuit**\n.. |simulation| replace:: **Simulation**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluebrain%2Fsnap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbluebrain%2Fsnap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluebrain%2Fsnap/lists"}