{"id":15010095,"url":"https://github.com/straw-hat-labs/straw_hat_map","last_synced_at":"2025-12-11T23:36:54.436Z","repository":{"id":57553747,"uuid":"101006239","full_name":"straw-hat-labs/straw_hat_map","owner":"straw-hat-labs","description":"Map Information and Addresses Management","archived":false,"fork":false,"pushed_at":"2019-11-01T11:26:22.000Z","size":470,"stargazers_count":7,"open_issues_count":1,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-05T09:35:04.809Z","etag":null,"topics":["addresses","elixir","elixir-lang","map","otp","usps","world-map"],"latest_commit_sha":null,"homepage":"https://hex.pm/packages/straw_hat_map","language":"Elixir","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/straw-hat-labs.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":"2017-08-22T01:13:12.000Z","updated_at":"2024-04-22T05:05:31.000Z","dependencies_parsed_at":"2022-09-26T18:40:53.572Z","dependency_job_id":null,"html_url":"https://github.com/straw-hat-labs/straw_hat_map","commit_stats":null,"previous_names":["straw-hat-team/straw_hat_map"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/straw-hat-labs%2Fstraw_hat_map","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/straw-hat-labs%2Fstraw_hat_map/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/straw-hat-labs%2Fstraw_hat_map/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/straw-hat-labs%2Fstraw_hat_map/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/straw-hat-labs","download_url":"https://codeload.github.com/straw-hat-labs/straw_hat_map/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248083558,"owners_count":21045122,"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":["addresses","elixir","elixir-lang","map","otp","usps","world-map"],"created_at":"2024-09-24T19:30:09.370Z","updated_at":"2025-12-11T23:36:54.392Z","avatar_url":"https://github.com/straw-hat-labs.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"# StrawHat.Map\n\n[![Hex.pm](https://img.shields.io/hexpm/v/straw_hat_map.svg)](https://hex.pm/packages/straw_hat_map)\n[![CI Status](https://travis-ci.org/straw-hat-team/straw_hat_map.svg?branch=master)](https://travis-ci.org/straw-hat-team/straw_hat_map)\n[![Code Coverage](https://codecov.io/gh/straw-hat-team/straw_hat_map/branch/master/graph/badge.svg)](https://codecov.io/gh/straw-hat-team/straw_hat_map)\n\nMap and addresses management.\n\n## Configuration\n\n\u003e **Important**\n\u003e\n\u003e `StrawHat.Map` requires an Ecto repository with `Geo.PostGIS.Extension`\n\u003e extension enabled.\n\nYou need to create or extend your current PostgreSQL types:\n\n```elixir\nPostgrex.Types.define(\n  MyApp.PostgresTypes,\n  [Geo.PostGIS.Extension] ++ Ecto.Adapters.Postgres.extensions()\n)\n```\n\nThen make sure that you add the types to your repository connection.\n\n```elixir\n# In your config files\n\nconfig :my_app, MyApp.Repo,\n  # ...\n  types: MyApp.PostgresTypes\n```\n\n## Use cases\n\nAll the APIs are contain in the business use cases are under `Use Cases`\ndocumentation section. Check the available modules and the public API.\n\nYou should be able to comprehend the API by reading the type spec and the\nfunction name. Please open an issue or even better make pull request about the\ndocumation if you have any issues with it.\n\n## Migrations\n\nSince this library does not have any repository, it does not run any migration.\nYou will need to handle the migrations on your application that contains the\nrepository.\n\nThe `migrations` directory contains a series of migrations that should cover\nthe common use cases.\n\n\u003e **Note**\n\u003e\n\u003e Each migration module has a `Created at` timestamp, this information is useful\n\u003e to decide when and the order on which the migrations should be run.\n\n### Using migrations\n\nAfter creating an Ecto migration in your project you could call one of the\nmigrations from your `change` callback in your module.\n\n```elixir\ndefmodule MyApp.Repo.Migrations.CreateCountriesTable do\n  use Ecto.Migration\n\n  def change do\n    StrawHat.Map.Migrations.CreateCountriesTable.change()\n  end\nend\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstraw-hat-labs%2Fstraw_hat_map","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstraw-hat-labs%2Fstraw_hat_map","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstraw-hat-labs%2Fstraw_hat_map/lists"}