Skip to content

Python package for downloading economic data from the International Monetary Fund JSON RESTful API endpoint.

License

Notifications You must be signed in to change notification settings

Promptly-Technologies-LLC/imfp

Repository files navigation

imfp

Tests PyPI Version Code style: black

imfp, by Christopher C. Smith, is a Python package for downloading data from the International Monetary Fund's RESTful JSON API.

📚 Full Documentation

Installation

pip install -q --upgrade imfp

Quick Start

import imfp

# Get list of available databases
databases = imfp.imf_databases()

# Get parameters for a specific database (e.g., PCPS - Primary Commodity Price System)
params = imfp.imf_parameters("PCPS")

# Fetch data with specific parameters
df = imfp.imf_dataset(
    database_id="PCPS",
    freq=["A"],
    start_year=2000,
    end_year=2015
)

Key Features

  • Comprehensive access to IMF's extensive economic databases
  • Parameter discovery
  • Rate limit and bandwidth management
  • Returns data in pandas DataFrames

Contributing

We welcome contributions to improve imfp! Here's how you can help:

  1. If you find a bug, please open an issue
  2. To fix a bug:
    • Fork the repository
    • Create a fix
    • Open a pull request to our main branch

Note that you will need to install the uv package manager to install the dependencies and run the tests, and the Quarto CLI tool to render the documentation.

Maintainers

To deploy a new version:

  1. Increment version in pyproject.toml
  2. Update dependencies with uv lock --upgrade-package dependency_name for each dependency
  3. Run tests with uv run pytest tests
  4. Update documentation if needed
  5. Push to issue branch
  6. Open PR to main

The GitHub Actions workflow will handle code formatting and testing, documentation rendering and publishing, and release to PyPI after the merge.

About

Python package for downloading economic data from the International Monetary Fund JSON RESTful API endpoint.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages