Skip to main content

An open-source DEV Community toolkit written in Python that lets users export information gathered from the DEV.to API

Project description

devtkit

GitHub license GitHub issues Python Version

DEV Tool Kit (devtkit) is an open-source DEV Community toolkit written in Python that lets users export information gathered from the DEV.to API.

Installation

Currently, there are 2 ways to install devtkit

Universal (Windows, Linux, and macOS)

Install pipx (if you do not have it)

  • Windows:
pip install pipx
pipx ensurepath
  • Linux (Debian/Ubuntu):
sudo apt update
sudo apt install pipx
pipx ensurepath
  • Linux (Fedora):
sudo dnf install pipx
pipx ensurepath
brew install pipx
pipx ensurepath

Installing the CLI Utility

Now that you have installed pipx, run the following command to install devtkit:

pipx install devtkit
Clone the repository and run the script

If you want to run the script, view the source code, or contribute, clone the repository locally:

git clone https://github.com/tyleruploads/devtkit.git
cd devtkit

pip install -r requirements.txt

If you are getting a PEP 668 error, ensure you have pipx installed and run: pipx install --editable .

If you installed with pipx: Run devtkit

Otherwise: Run python3 src/main.py

Usage

To use devtkit, simply follow along with the prompts the script gives you.

To get a DEV.to API Key, navigate to: DEV.to -> Settings -> Extensions, and scroll till you find "DEV Community API Keys" The API Key you generate will still be available for you to see after you close the tab, so you do not need to save it (unlike most API Keys)

An example run is:

--- Formats ---

0. Markdown
1. CSV
2. JSON 

Please enter the numbers for the following formats you would like to save to: 012
--- File Save Locations ---
Please enter save path for Markdown (Default: followers.md): ~/Documents/followers.md  
Please enter save path for Csv (Default: followers.csv): ~/Documents/followers.csv
Please enter save path for Json (Default: followers.json): ~/Documents/followers.json

To get an API Key, go to: DEV.to -> Settings -> Extensions, and scroll to the bottom.
DEV.to API Key: (securely collected with the getpass module from the Python STL)
Followers to pull in each GET request (default is 1000): 

A maximum of 1000 users will be pulled from each page.

Page count: 1. 
534 followers pulled on page 1. 534 total followers have been found so far. 

Page count: 2. 
0 followers pulled on page 2. 534 total followers found. 

Saved in the Markdown file format to /home/tyler/Documents/followers.md
Saved in the CSV file format to /home/tyler/Documents/followers.csv
Saved in the JSON file format to /home/tyler/Documents/followers.json

Features

devtkit has a large array of features that make it stand out from projects like it.

  • Multi-Format Export: Save to Markdown, CSV, and JSON files
  • Secure API Key Handling: Securely collects the user's DEV.to API Key with the Python STL Module getpass and only uses it to interact with the DEV.to API endpoint
  • Smart Rate-Limiting: Automatically handles 429 Too Many Requests responses
  • Beautiful and Detailed Output: Outputs a beautiful and detailed Markdown file, a detailed CSV or JSON file, or all 3

Contributing

Contributions are what make open-source projects important. All contributions are highly appreciated

  • Found a bug or issue: Open an Issue and show the output of the script, the steps to reproduce it, and as much information as possible
  • Have an idea: Open an Issue and explain your idea as much as possible, why you think it would be a good addition to the project, and any other important information.

License

MIT

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

devtkit-0.1.1.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devtkit-0.1.1-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file devtkit-0.1.1.tar.gz.

File metadata

  • Download URL: devtkit-0.1.1.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for devtkit-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0a35be0c2ee967d9112a13cdfc47e9adbcae79426ea698b994979291e64a1ec4
MD5 a97422640cd687d7e5cf56786ef2b597
BLAKE2b-256 8a3bfb3cc979b0fedee964ac284359fd987d28ae0df7b9f092a6d4b52b9564f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for devtkit-0.1.1.tar.gz:

Publisher: publish.yaml on tyleruploads/devtkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file devtkit-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: devtkit-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for devtkit-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2112de5bd8e50720df42109d8b30d8a76dd57e3c82787b99b686a5362c7bee21
MD5 bba80041f24677ef53ca39a0ba266d07
BLAKE2b-256 e8021b53f10169461780463d76e5e67b197ec85a79c27c4b22f580cbcea6d70e

See more details on using hashes here.

Provenance

The following attestation bundles were made for devtkit-0.1.1-py3-none-any.whl:

Publisher: publish.yaml on tyleruploads/devtkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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