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.30.tar.gz (30.9 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.30-py3-none-any.whl (31.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for hamel-0.0.30.tar.gz
Algorithm Hash digest
SHA256 16d011161d1cdd2cf3871516e2b2503f47711837dd027bcca0e7e2d05b93fa22
MD5 a39ef96d8957b62f2b8a90a861d58c53
BLAKE2b-256 97990a68246c931df9e0e230e393bb91b4988c191f43a7fa149dc41722c4028c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hamel-0.0.30-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.13.3

File hashes

Hashes for hamel-0.0.30-py3-none-any.whl
Algorithm Hash digest
SHA256 657bc26c627612a62ba71bfe5aabe29d71156102f160ecfdf1169880c4a15944
MD5 e427193d0323901c713da62804b70046
BLAKE2b-256 86c8e537631d076f86f1ea5a2665753e0c5bd9a065402a800458539c13dbf64b

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