{"id":13567169,"url":"https://github.com/makepath/mapshader","last_synced_at":"2025-10-31T04:31:57.171Z","repository":{"id":37798416,"uuid":"330000067","full_name":"makepath/mapshader","owner":"makepath","description":"Simple Python GIS Web Services","archived":false,"fork":false,"pushed_at":"2022-09-19T15:04:27.000Z","size":1156,"stargazers_count":45,"open_issues_count":42,"forks_count":4,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-11-04T21:37:27.745Z","etag":null,"topics":["datashader","gis","pydata","python","web"],"latest_commit_sha":null,"homepage":"","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/makepath.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-15T19:10:19.000Z","updated_at":"2024-08-15T08:23:39.000Z","dependencies_parsed_at":"2022-06-22T16:39:16.507Z","dependency_job_id":null,"html_url":"https://github.com/makepath/mapshader","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makepath%2Fmapshader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makepath%2Fmapshader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makepath%2Fmapshader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makepath%2Fmapshader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/makepath","download_url":"https://codeload.github.com/makepath/mapshader/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239113863,"owners_count":19583982,"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":["datashader","gis","pydata","python","web"],"created_at":"2024-08-01T13:02:25.218Z","updated_at":"2025-10-31T04:31:51.617Z","avatar_url":"https://github.com/makepath.png","language":"Python","readme":"[![Mapshader](img/logo.png)](https://makepath.com)\n--------\n\n![Test Suite Status](https://github.com/makepath/mapshader/workflows/Python%20Test%20Suite/badge.svg)\n[![PyPI version](https://badge.fury.io/py/mapshader.svg)](https://badge.fury.io/py/mapshader)\n[![Downloads](https://img.shields.io/pypi/dm/mapshader.svg)]()\n[![License](https://img.shields.io/pypi/l/mapshader.svg)]()\n--------\n\nSimple Python GIS Web Services\n\n- Create `mapshader.MapSource` objects and render them as geojson, tiles, or images\n- This project should still be considered experimental\n\n```bash\npip install mapshader\n```\n\n#### Setup Mapshader Conda Environment\n```bash\nconda create -n mapshader python=3.8\nconda activate mapshader\ngit clone git@github.com:makepath/mapshader.git\ncd mapshader\npip install -e .\n```\n\n#### Run Tests\n```bash\nconda activate mapshader\npytest mapshader/tests -sv\n```\n\n#### Run Flask Server\n```bash\nconda activate mapshader\nmapshader serve\n\n\u003e\u003e\u003e * Serving Flask app \"flask_app\" (lazy loading)\n\u003e\u003e\u003e * Environment: production\n\u003e\u003e\u003e   WARNING: This is a development server. Do not use it in a production deployment.\n\u003e\u003e\u003e   Use a production WSGI server instead.\n\u003e\u003e\u003e * Debug mode: on\n\u003e\u003e\u003e * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)\n\u003e\u003e\u003e * Restarting with stat\n```\n\n#### Mapshader Config (YAML)\nWhile mapshader comes with default services to help with testing, users can create their own services\nvia YAML.\n\n*my_services.yaml*\n```bash\n---\n\nmetadata:\n  version: 1\n\nsources:\n  - name: Global Elevation Example\n    key: elevation-example\n    text: Elevation\n    description: Global elevation example\n    geometry_type: raster\n    shade_how: linear\n    cmap:\n      - white\n      - black\n    span:\n      - 58\n      - 248\n    raster_padding: 0\n    raster_interpolate: linear\n    xfield: geometry\n    yfield: geometry\n    filepath: mapshader/tests/fixtures/elevation.tif\n    transforms:\n      - name: squeeze\n        args:\n          dim: band\n      - name: cast\n        args:\n          dtype: float64\n      - name: orient_array\n      - name: flip_coords\n        args:\n          dim: y\n      - name: reproject_raster\n        args:\n          epsg: 3857\n    service_types:\n      - tile\n```\n\nThis configuration file can then be passed to the flask server upon startup:\n\n```bash\nconda activate mapshader\nmapshader serve my_services.yaml\n\n\u003e\u003e\u003e * Serving Flask app \"flask_app\" (lazy loading)\n\u003e\u003e\u003e * Environment: production\n\u003e\u003e\u003e   WARNING: This is a development server. Do not use it in a production deployment.\n\u003e\u003e\u003e   Use a production WSGI server instead.\n\u003e\u003e\u003e * Debug mode: on\n\u003e\u003e\u003e * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)\n\u003e\u003e\u003e * Restarting with stat\n```\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmakepath%2Fmapshader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmakepath%2Fmapshader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmakepath%2Fmapshader/lists"}