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
Install latest from the GitHub repository:
$ pip install git+https://github.com/hamelsmu/hamel.gitor from pypi
$ pip install hamelNote: 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 can be found hosted on this GitHub repository’s pages.
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.
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.
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_idSee the zoom module documentation for details.
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.
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.pngEnvironment variables:
TWITTER_USERNAME- Your Twitter username (for likes command)TWITTER_COOKIES_FILE- Custom path to cookies file (default:~/.twitter_cookies.json)