Disclaimer: BookGrab is a personal project I built for myself. Support is limited to MyAnonyMouse (MAM) and Transmission.
BookGrab is a simple, streamlined web application that allows you to search for books on MyAnonyMouse using their RSS API and send downloads directly to your Transmission client. It provides a clean, straightforward interface for finding and downloading both ebooks and audiobooks.
Most people looking for book automation probably want Readarr. However, I built BookGrab because:
- Readarr requires separate instances for audiobooks and ebooks, which is cumbersome
- Readarr's author-based interface is too complicated to share with friends and family
- I wanted a simpler, more direct search-and-download experience without the complexity of a full media management system
BookGrab focuses on doing one thing well: making it easy to search MAM and download books with a single click.
- Simple search interface for MyAnonyMouse's extensive book collection
- Display search results with book details (title, author, format, length for audiobooks)
- Download books directly to your Transmission client with a single click
- Separate download paths for audiobooks and ebooks (I send my audiobooks to the directory scanned by AudioBookshelf and the ebooks I send to the directory scanned by Calibre-Web)
- Light and dark mode support
- Minimal setup and configuration
- A MyAnonyMouse account and session token
- A running Transmission client
- Create a
docker-compose.yml
file:
version: '3'
services:
bookgrab:
image: mrorbitman/bookgrab:latest
container_name: bookgrab
ports:
- "3000:3000"
environment:
- MAM_TOKEN=your_mam_token_here
- TRANSMISSION_URL=http://your-transmission-server:9091/transmission/rpc
- AUDIOBOOK_DESTINATION_PATH=/path/to/audiobooks
- EBOOK_DESTINATION_PATH=/path/to/ebooks
restart: unless-stopped
- Update the environment variables with your own values
- Run the container:
docker-compose up -d
- Access BookGrab at http://localhost:3000
Run the container directly:
docker run -d \
--name bookgrab \
-p 3000:3000 \
-e MAM_TOKEN=your_mam_token_here \
-e TRANSMISSION_URL=http://your-transmission-server:9091/transmission/rpc \
-e AUDIOBOOK_DESTINATION_PATH=/path/to/audiobooks \
-e EBOOK_DESTINATION_PATH=/path/to/ebooks \
mrorbitman/bookgrab:latest
-
Prerequisites:
- Node.js 18+ and npm
-
Clone the repository
-
Install dependencies:
npm install
- Create a
.env.local
file in the root directory with the following variables:
MAM_TOKEN=your_mam_token_here
TRANSMISSION_URL=http://your-transmission-server:9091/transmission/rpc
AUDIOBOOK_DESTINATION_PATH=/path/to/audiobooks
EBOOK_DESTINATION_PATH=/path/to/ebooks
- Run the development server:
npm run dev
- Open http://localhost:3000 with your browser to see the application.
If you're installing manually, you can build for production:
npm run build
npm start
- Next.js
- TypeScript
- AWS Amplify UI
- MyAnonyMouse RSS API
- Transmission RPC API
- Only works with MyAnonyMouse as the content source
- Requires a Transmission client for downloads
- No library management features - just search and download
- No automatic organization of downloaded content beyond basic path separation