{"id":15722165,"url":"https://github.com/chris48s/datapackage-to-datasette","last_synced_at":"2025-07-24T15:32:53.001Z","repository":{"id":36184880,"uuid":"220539610","full_name":"chris48s/datapackage-to-datasette","owner":"chris48s","description":"📦 Import Frictionless Data Datapackages into SQLite and generate Datasette metadata","archived":false,"fork":false,"pushed_at":"2025-04-04T19:49:13.000Z","size":914,"stargazers_count":9,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-06T12:59:08.148Z","etag":null,"topics":["data-packages","datasette","frictionlessdata","sqlite"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/datapackage-to-datasette/","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/chris48s.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","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,"dei":null}},"created_at":"2019-11-08T20:06:05.000Z","updated_at":"2025-04-04T19:49:11.000Z","dependencies_parsed_at":"2023-02-18T11:17:33.131Z","dependency_job_id":"53464c05-81b8-456d-b112-d51a58c00549","html_url":"https://github.com/chris48s/datapackage-to-datasette","commit_stats":{"total_commits":193,"total_committers":5,"mean_commits":38.6,"dds":0.4145077720207254,"last_synced_commit":"d9aae53c8501e4c825b4e8a0d3a76343d42e42e6"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris48s%2Fdatapackage-to-datasette","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris48s%2Fdatapackage-to-datasette/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris48s%2Fdatapackage-to-datasette/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris48s%2Fdatapackage-to-datasette/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chris48s","download_url":"https://codeload.github.com/chris48s/datapackage-to-datasette/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253819567,"owners_count":21969380,"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":["data-packages","datasette","frictionlessdata","sqlite"],"created_at":"2024-10-03T22:04:44.443Z","updated_at":"2025-05-12T20:47:47.511Z","avatar_url":"https://github.com/chris48s.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# datapackage-to-datasette\n\n[![Run tests](https://github.com/chris48s/datapackage-to-datasette/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/chris48s/datapackage-to-datasette/actions/workflows/test.yml)\n[![codecov](https://codecov.io/gh/chris48s/datapackage-to-datasette/branch/master/graph/badge.svg?token=6EPIKL61VO)](https://codecov.io/gh/chris48s/datapackage-to-datasette)\n[![PyPI Version](https://img.shields.io/pypi/v/datapackage-to-datasette.svg)](https://pypi.org/project/datapackage-to-datasette/)\n![License](https://img.shields.io/pypi/l/datapackage-to-datasette.svg)\n![Python Compatibility](https://img.shields.io/badge/dynamic/json?query=info.requires_python\u0026label=python\u0026url=https%3A%2F%2Fpypi.org%2Fpypi%2Fdatapackage-to-datasette%2Fjson)\n![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)\n\nImport Frictionless Data\n[Datapackage](https://frictionlessdata.io/data-package/)s\ninto SQLite and generate\n[Datasette metadata](https://datasette.readthedocs.io/en/stable/metadata.html).\n\n## Setup\n\n```sh\npip install datapackage-to-datasette\n```\n\n## Usage\n\n### On the console\n\nImport a datapackage from a local file\n\n```sh\ndatapackage-to-datasette mydatabase.db /path/to/datapackage.json metadata.json\n```\n\nor from a URL\n\n```sh\ndatapackage-to-datasette mydatabase.db https://pkgstore.datahub.io/core/co2-ppm/10/datapackage.json metadata.json\n```\n\nIf the datasette metadata file already exists, you can pass\n`--write-mode replace` or `--write-mode merge` to overwrite\nor merge with the existing datasette metadata file.\n\n### As a library\n\n```py\nfrom datapackage_to_datasette import datapackage_to_datasette, DataImportError\n\ntry:\n    datapackage_to_datasette(\n        'mydatabase.db',\n        '/path/to/datapackage.json',\n        'metadata.json',\n        write_mode='replace'\n    )\nexcept DataImportError:\n    raise\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchris48s%2Fdatapackage-to-datasette","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchris48s%2Fdatapackage-to-datasette","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchris48s%2Fdatapackage-to-datasette/lists"}