{"id":28956848,"url":"https://github.com/developmentseed/titiler-multidim","last_synced_at":"2025-06-23T21:41:02.350Z","repository":{"id":153645431,"uuid":"611003741","full_name":"developmentseed/titiler-multidim","owner":"developmentseed","description":"TiTiler extension for xarray","archived":false,"fork":false,"pushed_at":"2025-03-26T01:55:44.000Z","size":10293,"stargazers_count":43,"open_issues_count":23,"forks_count":10,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-03-26T02:40:39.461Z","etag":null,"topics":["xarray","zarr"],"latest_commit_sha":null,"homepage":"https://developmentseed.org/titiler/packages/xarray/","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/developmentseed.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2023-03-07T22:58:13.000Z","updated_at":"2025-03-20T09:52:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"5ea0c8b9-33f1-40c6-a96e-8d46b1a7cf44","html_url":"https://github.com/developmentseed/titiler-multidim","commit_stats":null,"previous_names":["developmentseed/titiler-multidim"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/developmentseed/titiler-multidim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Ftitiler-multidim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Ftitiler-multidim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Ftitiler-multidim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Ftitiler-multidim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/developmentseed","download_url":"https://codeload.github.com/developmentseed/titiler-multidim/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Ftitiler-multidim/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261561185,"owners_count":23177545,"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":["xarray","zarr"],"created_at":"2025-06-23T21:41:01.593Z","updated_at":"2025-06-23T21:41:02.342Z","avatar_url":"https://github.com/developmentseed.png","language":"Python","readme":"# titiler-multidim\n\n---\n\n**Source Code**: \u003ca href=\"https://github.com/developmentseed/titiler-multidim\" target=\"_blank\"\u003ehttps://github.com/developmentseed/titiler-multidim\u003c/a\u003e\n\n---\n\n## Running Locally\n\n```bash\n# It's recommended to install dependencies in a virtual environment\npython -m venv .venv\nsource .venv/bin/activate\n\npython -m pip install -e . uvicorn\nexport TEST_ENVIRONMENT=true  # set this when running locally to mock redis\nuvicorn titiler.multidim.main:app --reload\n```\n\nTo access the docs, visit \u003chttp://127.0.0.1:8000/api.html\u003e.\n![](https://github.com/developmentseed/titiler-multidim/assets/10407788/4368546b-5b60-4cd5-86be-fdd959374b17)\n\n## Development\n\nTests use data generated locally by using `tests/fixtures/generate_test_*.py` scripts.\n\nInstall the package using [`uv`](https://docs.astral.sh/uv/getting-started/installation/) with all development dependencies:\n\n```bash\nuv sync\nuv run pre-commit install\n```\n\nTo run all the tests:\n\n```bash\nuv run pytest\n```\n\nTo run just one test:\n\n```bash\nuv run pytest tests/test_app.py::test_get_info \n```\n\n## VEDA Deployment\n\nThe Github Actions workflow defined in [.github/workflows/ci.yml](./.github/workflows/ci.yml) deploys code to AWS for the VEDA project.\n\n* There are 2 stacks - one production and one development.\n* The production stack is deployed when the `main` branch is tagged, creating a new release. The production stack will deploy to a stack with an API Gateway associated with the domain prod-titiler-xarray.delta-backend.com/.\n* The development stack will be deployed upon pushes to the `dev` and `main` branches. The development stack will deploy to a stack with an API Gateway associated with the domain dev-titiler-xarray.delta-backend.com/.\n\n## New Deployments\n\nThe following steps detail how to to setup and deploy the CDK stack from your local machine.\n\n1. Install CDK and connect to your AWS account. This step is only necessary once per AWS account.\n\n    ```bash\n    # Download titiler repo\n    git clone https://github.com/developmentseed/titiler-xarray.git\n\n    # Install with the deployment dependencies\n    uv sync --group deployment\n\n    # Install node dependency\n    uv run npm --prefix infrastructure/aws install\n\n    # Deploys the CDK toolkit stack into an AWS environment\n    uv run npm --prefix infrastructure/aws run cdk -- bootstrap\n\n    # or to a specific region and or using AWS profile\n    AWS_DEFAULT_REGION=us-west-2 AWS_REGION=us-west-2 AWS_PROFILE=myprofile npm --prefix infrastructure/aws run cdk -- bootstrap\n    ```\n\n2. Update settings\n\n    Set environment variable or hard code in `infrastructure/aws/.env` file (e.g `STACK_STAGE=testing`).\n\n3. Pre-Generate CFN template\n\n    ```bash\n    uv run npm --prefix infrastructure/aws run cdk -- synth  # Synthesizes and prints the CloudFormation template for this stack\n    ```\n\n4. Deploy\n\n    ```bash\n    STACK_STAGE=staging uv run npm --prefix infrastructure/aws run cdk -- deploy titiler-xarray-staging\n\n    # Deploy in specific region\n    AWS_DEFAULT_REGION=us-west-2 AWS_REGION=us-west-2 AWS_PROFILE=smce-veda STACK_STAGE=production  uv run npm --prefix infrastructure/aws run cdk -- deploy titiler-xarray-production\n    ```\n\n**Important**\n\nIn AWS Lambda environment we need to have specific version of botocore, S3FS, FSPEC and other libraries.\nTo make sure the application will both work locally and in AWS Lambda environment you can install the dependencies using `python -m pip install -r infrastructure/aws/requirement-lambda.txt`\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevelopmentseed%2Ftitiler-multidim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevelopmentseed%2Ftitiler-multidim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevelopmentseed%2Ftitiler-multidim/lists"}