Skip to main content

Ditto is a server that serves a static copy of PokeAPI's data.

Project description

Ditto

https://bulbapedia.bulbagarden.net/wiki/Ditto_(Pokémon)

This repository contains:

  • Ditto script:
    • ditto clone: a script to crawl an instance of PokeAPI and download all objects
    • ditto analyze: a script to generate a JSON schema of the above data
    • ditto transform: a script to apply a new base url to data in data/api
    • ditto serve: a script to serve the data in the same form as PokeAPI
      • with full support for dynamic pagination using GET args offset and limit
  • Static data:
    • data/api: a static copy of the JSON data generated with the above script
    • data/schema: a static copy of the PokeAPI schema generated from the above data
    • updater: a bot that runs in docker and can update the data stored in this repo

Docker

This project is on Docker Hub. If you just want to serve a PokeApi clone, you just have to run one command.

  • Replace 8080 with the port of your choice
  • Replace http://localhost:8080 with the base url of your choice
docker run -p 8080:80 -e DITTO_BASE_URL=http://localhost:8080 sargunv/pokeapi-ditto:latest

Usage

If you'd rather use the data for something else, you can generate a copy with the base url of your choice applied. This assumes Poetry is installed and in your PATH.

git clone https://github.com/PokeAPI/ditto.git
cd ditto
poetry install
poetry run ditto transform --base-url http://localhost:8080

For other ditto functionality, run poetry run ditto --help

If you're on Windows, you'll have to adapt the commands above to your platform. The general idea is the same.

Advanced

You can manually update the data if necessary. See the updater bot. You can run the bot in docker, or read and adapt its update script yourself.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pokeapi-ditto-0.3.0.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

pokeapi_ditto-0.3.0-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file pokeapi-ditto-0.3.0.tar.gz.

File metadata

  • Download URL: pokeapi-ditto-0.3.0.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.11.5 CPython/3.6.6 Linux/4.4.0-17134-Microsoft

File hashes

Hashes for pokeapi-ditto-0.3.0.tar.gz
Algorithm Hash digest
SHA256 f99de0c2bbf2979cbb447957fb02f0f3f20e981bf8c5be527c243db25f9e3de8
MD5 bea9f5c65fa31435f354eb0f4699db15
BLAKE2b-256 1bb6975922425e0f2602bed885ed4d9fafb4e5e4698bd3af6f2b0c4d0971fbe2

See more details on using hashes here.

File details

Details for the file pokeapi_ditto-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pokeapi_ditto-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 26.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.11.5 CPython/3.6.6 Linux/4.4.0-17134-Microsoft

File hashes

Hashes for pokeapi_ditto-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5456be9fd3012baf30cb3522eaa1b43e5dee7fa9c0db05cddbab66b53e0d00e2
MD5 2b2f8c33a504e8793df4e0b99e382a6f
BLAKE2b-256 b213c137f2fd60e63ba5f2d0ee1726d59016dff4a9ada3406b40a84994a202a1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page