Skip to main content

Carte




Carte is a flexible, extensible reverse-geocode library implemented in Python.

Installation

From PyPI via pip

Carte is available from PyPI via pip.

pip install carte

From source using poetry

Note: It is recommended to build carte in a virtual environment due to dependency version requirements.

From the root of the repository, install the necessary dependencies via poetry:

poetry install

Then, build the wheel:

poetry build

Finally, outside of your virtual environment, install the wheel using pip:

pip install dist/carte-<version>-py3-none-any.whl

Usage

Carte is built using resources which inherit from the Resource class. A Carte instance is instantiated with a list of the Resource types it will query:

import carte

carte_instance = carte.Carte([my_resource_type])

results = carte_instance.query(List of coordinates as tuples...)

Multiple Carte instances may be created, and resources will be shared between them by a backing ResourceStore.

Custom Resources

The flexibility of Carte lies in the Resource class, which queries are passed to sequentially via the query method. The results of each resource query are aggregated and passed to the next, allowing the creation of resources that mutate previous resources' results, such as translating a country's ISO 3166-1 identifier code into a full name.

For examples of Resource classes, see the resources submodule.

Defining your own Resource is as simple as inheriting from the Resource superclass, and implementing the load and query methods.

from carte.resources import resource

class MyCustomResource(resource.Resource):
    def load(self):
        # do stuff...

    def query(self, coordinates, results) -> dict:
        # do other stuff...
        return results

Testing

To run tests, execute the following from the root of the project:

poetry run pytest tests/

License

Carte is licensed under the GNU Lesser General Public License.

Attribution

Carte is inspired by reverse-geocode.

Metadata

Release files for carte 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for carte 0.2.2
File Size Uploaded Provenance Actions
carte-0.2.2.tar.gz 21.5 kB Without provenance Details for carte-0.2.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for carte 0.2.2
File Interpreter ABI Platform Actions
carte-0.2.2-py3-none-any.whl Python 3 none any Details for carte-0.2.2-py3-none-any.whl

Total release size: 44.8 kB

Release files / carte-0.2.2.tar.gz

Download URL carte-0.2.2.tar.gz
Size 21.5 kB
Tags Source
SHA-256 checksum
How to use checksums
67c0ebbf75954c5a952e256729fe3d128e06916bd4731fdb7c121c8a227269f5
BLAKE2b-256 checksum
How to use checksums
891dbf7b118aa1d6be7e6fd8b388d1894a13a29ab1077f1d48e5a69d9c784df9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.2 CPython/3.8.0 Darwin/18.7.0

Release files / carte-0.2.2-py3-none-any.whl

Download URL carte-0.2.2-py3-none-any.whl
Size 23.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
12474c409084e113e205ec097ab686e0e8de9dbcbc5900399144389ff18f97ee
BLAKE2b-256 checksum
How to use checksums
74d872e9cca5a2aecdcffc994c5b1fc36df042bc5fd755a10242438706efdd53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.2 CPython/3.8.0 Darwin/18.7.0

Security for carte 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page