{"id":35060859,"url":"https://github.com/openspending/babbage.fiscal-data-package","last_synced_at":"2025-12-27T10:31:50.114Z","repository":{"id":57413607,"uuid":"47289709","full_name":"openspending/babbage.fiscal-data-package","owner":"openspending","description":"Fiscal Data Package support for babbage","archived":false,"fork":false,"pushed_at":"2017-09-27T19:11:56.000Z","size":204,"stargazers_count":3,"open_issues_count":1,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-11-27T13:18:17.527Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/openspending.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}},"created_at":"2015-12-02T21:29:23.000Z","updated_at":"2018-02-08T09:19:26.000Z","dependencies_parsed_at":"2022-09-26T17:11:23.670Z","dependency_job_id":null,"html_url":"https://github.com/openspending/babbage.fiscal-data-package","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/openspending/babbage.fiscal-data-package","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openspending%2Fbabbage.fiscal-data-package","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openspending%2Fbabbage.fiscal-data-package/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openspending%2Fbabbage.fiscal-data-package/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openspending%2Fbabbage.fiscal-data-package/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openspending","download_url":"https://codeload.github.com/openspending/babbage.fiscal-data-package/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openspending%2Fbabbage.fiscal-data-package/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28077500,"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","status":"online","status_checked_at":"2025-12-27T02:00:05.897Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":"2025-12-27T10:31:49.196Z","updated_at":"2025-12-27T10:31:50.110Z","avatar_url":"https://github.com/openspending.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Babbage Fiscal Data Package Support\n\n[![Gitter](https://img.shields.io/gitter/room/openspending/chat.svg)](https://gitter.im/openspending/chat)\n[![Build Status](https://travis-ci.org/openspending/babbage.fiscal-data-package.svg?branch=master)](https://travis-ci.org/openspending/babbage.fiscal-data-package)\n[![Coverage Status](https://coveralls.io/repos/openspending/babbage.fiscal-data-package/badge.svg?branch=master\u0026service=github)](https://coveralls.io/github/openspending/babbage.fiscal-data-package?branch=master)\n\nThis module is intended to provide support for loading OKFN's Fiscal Data Packages into a DB, \nwhile creating an internal model compatible with ``babbage``.\n \n## Usage\n\nThis section is intended to be used by end-users of the library.\n\n### Installation\n\nTo get started (under development):\n\n```\n$ pip install babbage_fiscal\n```\n\n### Testing\n\nTo run the tests, make sure you have an ElasticSearch running locally on\nhttp://localhost:9200 and run:\n\n```\n$ tox\n```\n\n### Command-line interface\n\nYou can use the library using a simple command line interface:\n\n```bash\n$ export FISCAL_PACKAGE_ENGINE=\u003cdatabase-connection-string\u003e\n$ bb-fdp-cli load-fdp --package \u003cpath--or-url-of-datapackage.json\u003e\n```\n\nFor example:\n```bash\n$ bb-fdp-cli load-fdp --package https://raw.githubusercontent.com/openspending/fiscal-data-package-demos/update-to-reflect-new-specs/boost-moldova/datapackage.json\n```\n\n### Python API\n\nYou can access the same functionality using a Python interface:\n\n```python\nfrom babbage_fiscal import FDPLoader\n\nFDPLoader().load_fdp_to_db(package, engine)\n\n# engine is an SQLAlchemy engine. \n# if not supplied, will create one based on the FISCAL_PACKAGE_ENGINE env variable\n```\n\n### API interface\n\nThe package also provides a Flask Blueprint, which exposes one endpoint with the following parameters:\n\n - ``package``: URL for ``datapackage.json``  \n - ``callback``: URL to call once load is complete\n \nExample usage:\n```python\nfrom flask import Flask\nfrom babbage_fiscal import FDPLoaderBlueprint\n\napp = Flask('demo')\napp.register_blueprint(FDPLoaderBlueprint, url_prefix='/loader')\n\napp.run()\n```\n\n## Design Overview\n\nInternally the loader uses the following packages\n\n - ``datapackage`` to parse the provided data-package and load its resources \n - ``jts-sql`` to load the data into the database\n\nThe internal ``ModelRegistry`` class is used for managing the babbage models in the \nprovided database. All models are stored in a dedicated table (''models'').\n\nIn order to avoid contention, all other resource data is stored in dedicated tables, whose names \nget prefixed by a constant value (current;y 'fdp_')\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenspending%2Fbabbage.fiscal-data-package","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenspending%2Fbabbage.fiscal-data-package","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenspending%2Fbabbage.fiscal-data-package/lists"}