Skip to main content

General Utilities

Project description

hamel

A collection of personal utilities for various tasks, including: - Working with Google’s Gemini API for text generation and media analysis - Processing YouTube videos and local MP4 files for transcripts and chapter generation - Creating annotated blog posts from technical talks

Usage

Installation

Install latest from the GitHub repository:

$ pip install git+https://github.com/hamelsmu/hamel.git

or from pypi

$ pip install hamel

Note: For MP4 video transcription, you’ll also need: - FFmpeg: brew install ffmpeg (macOS) or apt-get install ffmpeg (Ubuntu) - The installation will include openai-whisper automatically

Documentation

Documentation can be found hosted on this GitHub repository’s pages.

Available Utilities

Gemini API (hamel.gem)

Simple interface for Google’s Gemini API supporting: - Text generation - PDF and image analysis

  • YouTube video analysis - Local MP4 video analysis

See the gem module documentation for details.

YouTube & Video Utilities (hamel.yt)

Tools for working with video content: - Fetch transcripts from YouTube videos - Transcribe local MP4 files using OpenAI Whisper - Generate chapter timestamps for YouTube videos or local MP4 files

See the yt module documentation for details.

Zoom Utilities (hamel.zoom)

Tools for downloading Zoom meeting transcripts: - Download transcripts by meeting ID - Search recordings by topic - Parallel downloads for multiple meetings

Setup: Requires Zoom Server-to-Server OAuth app with recording:read:admin scope activated in Zoom marketplace. Click Develop in the top-right corner, then Build App, select Server-to-Server OAuth, and fill in the app information.

Create .env with:

ZOOM_CLIENT_ID=your_client_id
ZOOM_CLIENT_SECRET=your_client_secret
ZOOM_ACCOUNT_ID=your_account_id

See the zoom module documentation for details.

Writing Utilities (hamel.writing)

Tools for content creation: - Convert PDFs to images - Generate annotated blog posts from talks (supports YouTube or MP4 videos) - Gather context from web pages

See the writing module documentation for details.

Twitter/X Utilities (hamel.twitter_cli)

Tools for fetching Twitter/X data:

  • Fetch liked tweets
  • Fetch bookmarked tweets
  • Take screenshots of tweets

Setup: Requires browser cookies for authentication. Run twitter refresh to log in via browser and automatically extract cookies, or twitter setup for manual entry.

# Fetch bookmarks
twitter bookmarks -o bookmarks.json

# Fetch likes (requires username)
twitter likes -u myusername -n 50 -o likes.json

# Screenshot a tweet
twitter screenshot https://x.com/user/status/1234567890 -o tweet.png

Environment variables:

  • TWITTER_USERNAME - Your Twitter username (for likes command)
  • TWITTER_COOKIES_FILE - Custom path to cookies file (default: ~/.twitter_cookies.json)

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

hamel-0.0.29.tar.gz (30.4 kB view details)

Uploaded Source

Built Distribution

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

hamel-0.0.29-py3-none-any.whl (31.8 kB view details)

Uploaded Python 3

File details

Details for the file hamel-0.0.29.tar.gz.

File metadata

  • Download URL: hamel-0.0.29.tar.gz
  • Upload date:
  • Size: 30.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for hamel-0.0.29.tar.gz
Algorithm Hash digest
SHA256 8f3aba60df6f35b59c0ab3f5d0e9c6fece94ca0a4ce2a4876fd15bdd118d44cc
MD5 13fb15dd3b08f4dde9efd8d77dac6e33
BLAKE2b-256 7600cbe5b8a3ba8817ff70e61d9f5ad440d667417ba571859464c66224476932

See more details on using hashes here.

File details

Details for the file hamel-0.0.29-py3-none-any.whl.

File metadata

  • Download URL: hamel-0.0.29-py3-none-any.whl
  • Upload date:
  • Size: 31.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for hamel-0.0.29-py3-none-any.whl
Algorithm Hash digest
SHA256 bccd49425802599442d7fdf1f48dcd1d25770525b313f05f5e48a9744be85a07
MD5 70076f95adb2dd350aebfd9814ac641b
BLAKE2b-256 056197f8696f2c98c68a2dc9d61e904756fa42d76f263b80ff63902585b95ed6

See more details on using hashes here.

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