{"id":24846807,"url":"https://github.com/skarkkai/touch-mapper","last_synced_at":"2025-10-14T18:31:22.641Z","repository":{"id":79755227,"uuid":"79717968","full_name":"skarkkai/touch-mapper","owner":"skarkkai","description":"Tactile map maker. Creates 3D or embosser printable files for requested OpenStreetMap areas.","archived":false,"fork":false,"pushed_at":"2024-08-09T14:50:49.000Z","size":24139,"stargazers_count":78,"open_issues_count":13,"forks_count":20,"subscribers_count":11,"default_branch":"master","last_synced_at":"2024-08-09T16:31:25.996Z","etag":null,"topics":["3d-printing","accessibility","blind","blindness","openstreetmap","touch-mapper"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skarkkai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING.txt","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":"2017-01-22T13:00:40.000Z","updated_at":"2024-08-06T16:08:10.000Z","dependencies_parsed_at":"2023-06-09T15:30:22.441Z","dependency_job_id":null,"html_url":"https://github.com/skarkkai/touch-mapper","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skarkkai%2Ftouch-mapper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skarkkai%2Ftouch-mapper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skarkkai%2Ftouch-mapper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skarkkai%2Ftouch-mapper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skarkkai","download_url":"https://codeload.github.com/skarkkai/touch-mapper/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":236503451,"owners_count":19159446,"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":["3d-printing","accessibility","blind","blindness","openstreetmap","touch-mapper"],"created_at":"2025-01-31T11:02:02.337Z","updated_at":"2025-10-14T18:31:15.773Z","avatar_url":"https://github.com/skarkkai.png","language":"Java","funding_links":[],"categories":["Java","JavaScript"],"sub_categories":[],"readme":"# Touch Mapper\n\nTactile map maker. Creates files for 3D or embossing printing from OpenStreetMap data. See https://touch-mapper.org\n\n## Development\n\n### Install dependencies\n\n    ./init.sh\n\n### Setup AWS CLI\n\n    aws configure\n\n### Create AWS resources\n\n    make dev-aws-install\n\nAPI Gateway for accessing email sending Lambda is for now not created\nautomatically. The same API GW endpoints can be used by all Touch Mapper\ninstances.\n\n### Install static website to S3\n\n    make dev-web-s3-install\n\nLast line of output gives the URL (https://something.cloudfront.net) where\nthe web UI can be accessed.\n\n### Run OSM -\u003e STL converter service\n\nIn a tab of its own:\n\n    install/run-dev-converter.sh\n\n### Local web development\n\nIn `web` dir, in separate tabs:\n\n    make watch\n    make serve\n\nYou can now access the web UI in http://localhost:9000\n\n## Feature roadmap\n\nList is in a rough priority order.\n\n- Allow printing a QR sticker that points to touch-mapper.org/?map=deadbeef\n- Allow inspecting maps on a touch device.\n  - APH's Nearby Explorer, and other apps\n- Describe map contents in the web UI (in progress).\n  - Roads: intersections between roads, and between roads and map borders; street numbers\n  - Points of interest, esp. bus stops: https://developers.google.com/maps/documentation/javascript/places#place_search_requests\n  - Support hot-keys for area adjustment, so that choosing the area is practical for a blind user\n- Describe map contents in audio\n  - Could perhaps crowd source production of the descriptions\n- Print labels for roads and/or points of interest\n  - Maybe use short labels, and offer a separate legend that maps the labels to longer descriptions. The legend could be electronic.\n- Replace spinning 3D preview with one or more larger static images, create using Blender Render, using ambient occlusion\n  - 3D preview is too small and unclear, and doesn't work on all devices\n- Remember user's past maps\n- Avoid significant overlaps between roads and buildings. This would enable reliable two-color 3D printing.\n- Print a compass star into corner of the map\n- Indicate map scale using small dots on map borders\n- Smaller scale modes: only show water/land/green areads; N largest roads; city borders\n- Non-square maps\n- Indoor areas\n\nTechnical TODO:\n\n- Move converter from EC2 to Lambda\n- Do all the work in a Java application that could be based on the first stages\n  of OSM2World transformation pipeline. Benefits:\n  - Do road processing mostly when they are still line segments rather than 2D objects\n    - Create embosser input\n    - Avoid roads intersecting with buildings =\u003e enable two-color 3D printing\n      - Maybe use https://sourceforge.net/projects/jts-topo-suite/\n    - Much easier to describe map contents (eg. roads intersecting with edges)\n  - Better performance\n  - Simpler processing pipeline\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskarkkai%2Ftouch-mapper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskarkkai%2Ftouch-mapper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskarkkai%2Ftouch-mapper/lists"}