VDL Tools
Project description
VDL Tools
This repository contains a set of tools which are used at Vibrant Data Labs.
Tools
- Network Tools
- LinkedIn - Set of methods to interact with LinkedIn via CoreSignal API
- Download Process Images - Helper methods to download, convert and save images to S3 bucket
- Py2Mappr - Python wrapper for generating the OpenMappr player
- Scrape Enrich
- Tag2Network
- Shared Tools
Installation
For Users
Install the package from PyPI:
pip install vdl-tools
For Developers
- Clone the repository:
git clone https://github.com/vibrant-data-labs/vdl-tools.git
cd vdl-tools
Hatch
- Install Hatch:
pip install hatch
- Create development environment:
hatch env create
- (Optional) Install pre-commit hooks:
pip install pre-commit
pre-commit install
Option B: Using PyEnv + pip
If you prefer managing Python versions with PyEnv:
- Install PyEnv (if not already installed):
# macOS
brew install pyenv
# Linux
curl https://pyenv.run | bash
- Install Python 3.12:
pyenv install 3.12.7
pyenv local 3.12.7
- Create a virtual environment:
pyenv virtualenv 3.12.7 <yourenvname>
pyenv activate <yourenvname>
- Install the package in editable mode:
pip install -e ".[test,lint]"
- (Optional) Install pre-commit hooks:
pip install pre-commit
pre-commit install
Development
This project uses Hatch for environment management, building, and publishing. However, you can also use standard Python tools if you prefer.
Quick Commands (Work with both Hatch and PyEnv)
# Run tests
make test
# Run tests with coverage
make test-cov
# Run linters
make lint
# Format code
make format
# Build package
make build
# Show all available commands
make help
Using Hatch Directly
# Enter development shell
hatch shell
# Run tests
hatch run test
# Run linters
hatch run lint:all
# Format code
hatch run lint:fmt
# Build package
hatch build
# Bump version
hatch version patch # or minor/major
# Publish to PyPI
hatch publish
Adding a New Dependency
- Add the package to
pyproject.tomlin the[project.dependencies]section - Update your environment:
hatch env prune # Remove old environment
hatch env create # Create new environment with updated dependencies
Or if using pip directly:
pip install -e .
Contributing
Please see CONTRIBUTING.md for detailed guidelines on:
- Development setup
- Code style and quality standards
- Testing requirements
- Pull request process
- Release workflow
CI/CD
This project uses GitHub Actions for continuous integration and deployment:
- CI: Runs tests, linters, and builds on every push and PR
- Dependabot: Automatically updates dependencies weekly
- Release: Automatically publishes to PyPI when a version tag is pushed
License
See LICENSE file for details.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vdl_tools-2.0.1.tar.gz.
File metadata
- Download URL: vdl_tools-2.0.1.tar.gz
- Upload date:
- Size: 23.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ca82563ce1ed5bcef4dfeedcab81fed9e2a8cb2ceb2a20445cea8c2b5feb1bc
|
|
| MD5 |
432573022245c4a1b92f1b138dbb6442
|
|
| BLAKE2b-256 |
96e629818a1e4e13b934201ae1bc5732cb3180822ac7f13b90060e413c36d877
|
File details
Details for the file vdl_tools-2.0.1-py3-none-any.whl.
File metadata
- Download URL: vdl_tools-2.0.1-py3-none-any.whl
- Upload date:
- Size: 23.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f857d1a58d78a102200b04db93225069067402d8f09c8c5674cd10081f97b02b
|
|
| MD5 |
9d5f417e5d97d10c337c136f46230855
|
|
| BLAKE2b-256 |
09216e72878408a65ba10cbad32290fb1edbe84876b593944e0a6828aa759aed
|