A Python CLI application to manage your game and anime collections by connecting to Notion.
- Search for games on SteamGridDB
- Add games to your Notion database automatically
- Set games with proper icons and cover images
- Game Library Management:
- List all games in your collection
- Search your game library
- Edit existing games (name, release year, icons, and covers)
- Delete games from your collection
- Search for anime on MyAnimeList (via Jikan API)
- Add anime to your Notion database automatically
- Set anime with proper cover images
- Track anime with detailed information:
- Studio
- Number of episodes
- Number of seasons
- Airing status
- Plot synopsis
- Links to MyAnimeList
- Anime Library Management:
- List all anime in your collection
- Search your anime library
- Edit existing anime
- Delete anime from your collection
- Search for books on Google Books
- Add books to your Notion database automatically
- Set books with proper cover images
- Track books with detailed information:
- Authors
- Publisher
- Publication date
- Page count
- Format (physical/digital)
- Description
- Categories/genres
- ISBN
- Book Library Management:
- List all books in your collection
- Search your book library
- Edit existing books
- Delete books from your collection
- Interactive CLI interface
- Python 3.7+
- SteamGridDB API key (for games functionality)
- Notion integration token
- Three separate Notion databases (one for games, one for anime, one for books)
-
Create (free) Notion account and create three databases with the following structures:
- Name (title): Game title
- Wydano (number): Release year
- Status (multi-select): Game status (Chcę zagrać, Przestałem grać, W trakcie, Ukończone)
- Platforma (select): Game platform (PC, PS4, PS5, Switch, etc.)
- Name (title): Anime title
- Wydano (number): Release year
- Status (multi-select): Anime status (Watching, To Watch, Watched, Abandoned)
- Studio (multi-select): Animation studios
- Episodes (number): Number of episodes
- Seasons (number): Number of seasons
- Airing (multi-select): Airing status ("AIRING" or "ENDED")
- Synopsis (rich text): Plot description
- MAL (url): MyAnimeList URL
- AniDB (url): AniDB URL
- Name (title): Book title
- Authors (multi-select): Book authors
- Published (number): Publication year
- Status (multi-select): Reading status (Reading, To Read, Read, Abandoned)
- Format (select): Book format (Physical, Digital (PDF), Digital (EPUB), etc.)
- Pages (number): Number of pages
- Publisher (rich text): Book publisher
- Description (rich text): Book description
- Categories (multi-select): Book categories/genres
- ISBN (rich text): ISBN number
- Info (rich text): Link to more information
-
Clone the repository:
git clone https://github.com/yourusername/game-collection-manager.git
cd game-collection-manager
- Install dependencies:
pip install notion-client questionary rich requests
Before using the application, you need to set up your API keys:
-
SteamGridDB API Key:
- Create an account at SteamGridDB
- Go to your profile and generate an API key
-
Notion Integration:
- Go to Notion Integrations
- Create a new integration and copy the secret token
- Share your database with the integration
-
Notion Database IDs:
- Open your Games Notion database
- Copy the URL, which contains the database ID
- The app will extract the ID from the URL
- Repeat for your Anime Notion database
Run the application:
python games.py # For games collection
python anime.py # For anime collection
python books.py # For books collection
Each application provides the following options:
- Add Game: Search for a game and add it to your Notion database
- View Game Library: Manage your existing game collection
- List all games with pagination
- Search for specific games
- Edit game information and assets
- Delete games from your collection
- Settings: Configure your API keys and database ID
- Add Anime: Search for an anime and add it to your Notion database
- View Anime Library: Manage your existing anime collection
- List all anime with pagination
- Search for specific anime
- Edit anime information
- Delete anime from your collection
- Settings: Configure your API keys and database ID
- Add Book: Search for a book and add it to your Notion database
- View Book Library: Manage your existing book collection
- List all books with pagination
- Search for specific books
- Edit book information
- Delete books from your collection
- Settings: Configure your API keys and database ID
- Run the games application:
python games.py
- Select "Settings" to configure your API keys and games database ID
- Select "Add Game" and enter a game name
- Choose from the search results
- The game will be added to your Notion database with proper icon and cover image
- Run the anime application:
python anime.py
- Select "Settings" to configure your Notion integration and anime database ID
- Select "Add Anime" and enter an anime name
- Choose from the search results
- Select the anime status (Watching, To Watch, etc.)
- The anime will be added to your Notion database with all details
- Run the books application:
python books.py
- Select "Settings" to configure your Notion integration and books database ID
- Select "Add Book" and enter a book title
- Choose from the search results
- Select the book status (Reading, To Read, etc.) and format (Physical, Digital, etc.)
- The book will be added to your Notion database with all details
MIT License