tap-forem

`tap-forem` is a Singer tap for Forem, built with the Meltano SDK for Singer Taps.


Keywords
ELT, Forem, singer, io
License
Other
Install
pip install tap-forem==0.2.0

Documentation

tap-forem

Singer tap for the Forem API.

Built with the Meltano SDK for Singer Taps and Targets.

Capabilities

  • catalog
  • discover
  • about
  • stream-maps

TODO

  • state

Settings

Setting Required Default Description
api_key True None The Forem API key.
tag True None Tag for filter articles by.
api_url False https://dev.to/api/ The url for the API service.

A full list of supported settings and capabilities is available by running: tap-forem --about

Source Authentication and Authorization

Follow the official docs in https://developers.forem.com/api#section/Authentication.

Usage

You can easily run tap-forem by itself or in a pipeline using Meltano.

Executing the Tap Directly

tap-forem --version
tap-forem --help
tap-forem --config CONFIG --discover > ./catalog.json

Developer Resources

Initialize your Development Environment

pipx install poetry
poetry install

Create and Run Tests

Create tests within the tests folder and then run:

poetry run pytest

You can also test the tap-forem CLI interface directly using poetry run:

poetry run tap-forem --help

Testing with Meltano

Note: This tap will work in any Singer environment and does not require Meltano. Examples here are for convenience and to streamline end-to-end orchestration scenarios.

Your project comes with a custom meltano.yml project file already created. Open the meltano.yml and follow any "TODO" items listed in the file.

Next, install Meltano (if you haven't already) and any needed plugins:

# Install meltano
pipx install meltano
# Initialize meltano within this directory
cd tap-forem
meltano install

Now you can test and orchestrate using Meltano:

# Test invocation:
meltano invoke tap-forem --version
# OR run a test `elt` pipeline:
meltano elt tap-forem target-jsonl

SDK Dev Guide

See the dev guide for more instructions on how to use the SDK to develop your own taps and targets.