{"id":26321749,"url":"https://github.com/terradue/dotnetstac.api","last_synced_at":"2025-03-15T16:18:24.416Z","repository":{"id":142079086,"uuid":"428946606","full_name":"Terradue/DotNetStac.Api","owner":"Terradue","description":" .Net library for working with Spatio Temporal Asset Catalogs API (STAC API)","archived":false,"fork":false,"pushed_at":"2023-11-02T21:59:32.000Z","size":2442,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-04-16T11:14:31.869Z","etag":null,"topics":["stac","webapi"],"latest_commit_sha":null,"homepage":"https://terradue.github.io/DotNetStac.Api/","language":"C#","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/Terradue.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}},"created_at":"2021-11-17T07:22:15.000Z","updated_at":"2023-04-25T21:55:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"fa99507f-864b-46b5-be2b-9ecf0e1a84bf","html_url":"https://github.com/Terradue/DotNetStac.Api","commit_stats":{"total_commits":130,"total_committers":2,"mean_commits":65.0,"dds":0.03076923076923077,"last_synced_commit":"440d1c8c41870972aca11bf288fc5ad4c6dfc8c9"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Terradue%2FDotNetStac.Api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Terradue%2FDotNetStac.Api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Terradue%2FDotNetStac.Api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Terradue%2FDotNetStac.Api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Terradue","download_url":"https://codeload.github.com/Terradue/DotNetStac.Api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243753987,"owners_count":20342543,"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":["stac","webapi"],"created_at":"2025-03-15T16:18:23.795Z","updated_at":"2025-03-15T16:18:24.394Z","avatar_url":"https://github.com/Terradue.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## DotNetStac.Api: The STAC API SDK for .NET, ASP.NET Core\n\nDotNetStac.Api | [DotNetStac](https://github.com/Terradue/DotNetStac)\n\n[![NuGet Version](https://img.shields.io/nuget/vpre/DotNetStac.Api.svg)](https://www.nuget.org/packages?q=DotNetStac.Api)\n[![build](https://github.com/Terradue/DotNetStac.Api/actions/workflows/build.yml/badge.svg)](https://github.com/Terradue/DotNetStac.Api/actions/workflows/build.yml)\n[![codecov](https://codecov.io/gh/Terradue/DotNetStac.Api/branch/main/graph/badge.svg)](https://codecov.io/gh/Terradue/DotNetStac.Api)\n[![Gitter](https://img.shields.io/gitter/room/SpatioTemporal-Asset-Catalog/Lobby?color=yellow)](https://gitter.im/SpatioTemporal-Asset-Catalog/Lobby)\n[![License](https://img.shields.io/badge/license-AGPL3-blue.svg)](LICENSE)\n[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/Terradue/DotNetStac.Api/main?filepath=tutorial1.ipynb)\n\nDotNetStac.Api is a Software Development Kit (SDK) for .NET and ASP.NET Core to build and query STAC API compliant services. It is based on the [STAC API specification](https://github.com/radiantearth/stac-api-spec) and uses the [DotNetStac library](https://github.com/Terradue/DotNetStac) for the [STAC data model](https://github.com/radiantearth/stac-spec).\n\nThe project combines Clients and Controllers code generation from the [STAC API specification](https://github.com/radiantearth/stac-api-spec) using [NSwag](https://github.com/RicoSuter/NSwag) (OpenAPI/Swagger generation). It allows several entry points for developers to use, build and customize STAC API compliant services.\n\n![](docs/diagrams/GeneralArchitectureDiagram.png)\n\nThe project is developed and maintained by [Emmanuel Mathot](https://github.com/emmanuelmathot) for [Terradue](https://github.com/Terradue).\n\n**Features:**\n\n- Access all STAC API endpoints from a single client or via specific clients\n- Serve a full STAC API compliant service from a single app or via specific controllers\n- Customize API controllers with specific business logic\n- Implement your own STAC catalog data services and serve it with the default STAC API controllers\n- Every layer can be extended and customized with additional services\n- User the .NET queryable data model to query your STAC catalogs using expression tree\n\n**Ways to use the SDK:**\n\n- In your C# code, via [NuGet](https://www.nuget.org/packages?q=DotNetStac.Api) packages\n- In [Stars](https://github.com/Terradue/Stars) CLI tool using the API commands\n- Starting the docker image [Terradue/DotNetStac.Api](https://hub.docker.com/r/terradue/dotnetstac.api) with a file system or in memory catalog.\n\n**Getting Started:**\n\n- [Query STAC API compliant service with the client](docs/notebooks/query-stac-api-with-clients.ipynb)\n- [Start a file system based STAC API compliant service](docs/tutorials/start-a-file-system-based-stac-api-compliant-service.md)\n- [Integrate the STAC API controllers into your ASP.NET Web API project](docs/notebooks/integrate-stac-api-controllers-into-aspnet-web-api-project.ipynb)\n- [Implement your own STAC data service provider and expose it via STAC API](docs/notebooks/implement-your-own-stac-data-service-provider-and-expose-it-via-stac-api.ipynb)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterradue%2Fdotnetstac.api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fterradue%2Fdotnetstac.api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterradue%2Fdotnetstac.api/lists"}