{"id":21375370,"url":"https://github.com/lsst/felis","last_synced_at":"2025-07-13T09:32:53.736Z","repository":{"id":39031070,"uuid":"152457995","full_name":"lsst/felis","owner":"lsst","description":"Felis is a tool for collaborative management of astronomical data catalog metadata","archived":false,"fork":false,"pushed_at":"2025-07-09T23:41:33.000Z","size":1715,"stargazers_count":6,"open_issues_count":3,"forks_count":4,"subscribers_count":35,"default_branch":"main","last_synced_at":"2025-07-10T03:49:15.823Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://felis.lsst.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lsst.png","metadata":{"files":{"readme":"README.rst","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,"zenodo":null}},"created_at":"2018-10-10T16:50:41.000Z","updated_at":"2025-07-03T21:45:58.000Z","dependencies_parsed_at":"2023-02-17T20:35:16.899Z","dependency_job_id":"51038bea-c71e-4495-a841-f80b05ac99ef","html_url":"https://github.com/lsst/felis","commit_stats":null,"previous_names":[],"tags_count":198,"template":false,"template_full_name":null,"purl":"pkg:github/lsst/felis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lsst%2Ffelis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lsst%2Ffelis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lsst%2Ffelis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lsst%2Ffelis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lsst","download_url":"https://codeload.github.com/lsst/felis/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lsst%2Ffelis/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265120386,"owners_count":23714490,"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-11-22T09:10:10.478Z","updated_at":"2025-07-13T09:32:53.731Z","avatar_url":"https://github.com/lsst.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Felis\n=====\n\n|Tag| |PyPI| |Python| |Codecov|\n\n.. |PyPI| image:: https://img.shields.io/pypi/v/lsst-felis\n    :target: https://pypi.org/project/lsst-felis\n    :alt: PyPI\n\n.. |Python| image:: https://img.shields.io/pypi/pyversions/lsst-felis\n    :target: https://pypi.org/project/lsst-felis\n    :alt: PyPI - Python Version\n\n.. |Codecov| image:: https://codecov.io/gh/lsst/felis/branch/main/graph/badge.svg\n    :target: https://codecov.io/gh/lsst/felis\n    :alt: Codecov\n\n.. |Tag| image:: https://img.shields.io/github/v/tag/lsst/felis\n    :target: https://github.com/lsst/felis/tags\n    :alt: Latest Tag\n\nOverview\n--------\n\nFelis implements a `YAML \u003chttps://yaml.org/\u003e`_ data format for describing\ndatabase schemas in a way that is independent of implementation\nlanguage and database variant. These schema definitions can be checked for\nvalidity using an internal `Pydantic \u003chttps://docs.pydantic.dev/latest/\u003e`_ data\nmodel to ensure strict conformance to the format. SQL Data Definition language\n(DDL) statements can be generated to instantiate corresponding database\nobjects, such as tables and columns, in a number of different database\nvariants, including MySQL, PostgreSQL, and SQLite. The schema can also\nbe used to update the TAP schema information in a\n`TAP \u003chttps://www.ivoa.net/documents/TAP/\u003e`_ service.\n\nThe tool was developed internally by the\n`Vera C. Rubin Observatory \u003chttps://rubinobservatory.org/\u003e`_ as a way of\ndefining a \"single source of truth\" for database schemas and their metadata\nwhich are maintained for the facility in the\n`sdm_schemas github repository \u003chttps://github.com/lsst/sdm_schemas\u003e`_. Though\ndeveloped in the context of astronomical data management and including some\noptional features that are specific to\n`IVOA standards \u003chttps://www.ivoa.net/documents/\u003e`_, Felis is generic enough\nthat it can be used as a general tool to define, update, and manage database\nschemas in a way that is independent of database variant or implementation\nlanguage such as SQL.\n\nDocumentation\n-------------\n\nDetailed information on usage, customization, and design is available at the\n`Felis documentation site \u003chttps://felis.lsst.io\u003e`_.\n\nSupport\n-------\n\nUsers may report issues or request features on the `Rubin Community Forum \u003chttps://community.lsst.org/c/support\u003e`_ or by opening an issue on the\n`Felis Issue Tracker \u003chttps://github.com/lsst/felis/issues\u003e`_. Posts on the\nforum should include the tag \"felis.\"\n\nCode of Conduct\n---------------\n\nPlease see the\n`LSST Project Code of Conduct \u003chttps://project.lsst.org/codesofconduct\u003e`_ for\nguidelines on communications and interactions.\n\nLicense\n-------\n\nFelis is distributed under the\n`GNU General Public License\n\u003chttps://www.gnu.org/licenses/gpl-3.0.en.html\u003e`_, version 3.0 or later.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flsst%2Ffelis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flsst%2Ffelis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flsst%2Ffelis/lists"}