{"id":19732398,"url":"https://github.com/terminusdb/terminusdb-singer-tap","last_synced_at":"2026-06-09T18:31:17.301Z","repository":{"id":42649621,"uuid":"399056894","full_name":"terminusdb/terminusdb-singer-tap","owner":"terminusdb","description":"This is a Singer tap that produces JSON-formatted data following the Singer spec from data in TerminusDB","archived":false,"fork":false,"pushed_at":"2023-02-08T01:53:56.000Z","size":35,"stargazers_count":1,"open_issues_count":3,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-11-21T18:26:23.951Z","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":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/terminusdb.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-23T10:11:32.000Z","updated_at":"2022-07-16T21:56:05.000Z","dependencies_parsed_at":"2024-11-12T00:27:56.337Z","dependency_job_id":"789ee672-dd5c-4a71-9f11-fc6387525068","html_url":"https://github.com/terminusdb/terminusdb-singer-tap","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/terminusdb/terminusdb-singer-tap","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminusdb%2Fterminusdb-singer-tap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminusdb%2Fterminusdb-singer-tap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminusdb%2Fterminusdb-singer-tap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminusdb%2Fterminusdb-singer-tap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/terminusdb","download_url":"https://codeload.github.com/terminusdb/terminusdb-singer-tap/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminusdb%2Fterminusdb-singer-tap/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34121020,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"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":"2024-11-12T00:26:13.882Z","updated_at":"2026-06-09T18:31:17.284Z","avatar_url":"https://github.com/terminusdb.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tap-terminusdb\n\nThis is a [Singer](https://singer.io) tap that produces JSON-formatted data\nfollowing the [Singer\nspec](https://github.com/singer-io/getting-started/blob/master/SPEC.md).\n\nThis tap:\n\n- Pulls raw data from [TerminusDB](https://terminusdb.com/)\n- Extract the specific streams in config.json\n- Outputs the schema for each streams\n- Incrementally pulls data based on the input state\n\n## To install\n\n`tap-terminusdb` can be install via pip with Python \u003e= 3.7:\n\n`python3 -m pip install -U tap-terminusdb`\n\n## To use\n\nYou can start a project in a directory using conjunction with TerminusDB easily by:\n\n`terminusdb startproject`\n\nThis will create the config.json that stores information about the endpoint and database that you are connecting to. In addition you can add the `streams` settings with:\n\n`terminusdb config streams=[MyClass1, MyClass2]`\n\n\nThen you can data from TerminusDB into a Singer.io target. For details about how to use a Singer.io target you can [see here](https://github.com/singer-io/getting-started/blob/master/docs/RUNNING_AND_DEVELOPING.md#developing-a-target).\n\nFor example, if you are extracting data from TerminusDB to [google spreadsheet](https://github.com/singer-io/target-gsheet):\n\n```\ntap-terminusdb -c config.json | target-gsheet -c gsheet-config.json\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterminusdb%2Fterminusdb-singer-tap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fterminusdb%2Fterminusdb-singer-tap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterminusdb%2Fterminusdb-singer-tap/lists"}