No description
  • JavaScript 99.7%
  • Dockerfile 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2025-03-17 11:17:30 -04:00
.gitignore first commit 2025-03-17 11:17:30 -04:00
config-example.json first commit 2025-03-17 11:17:30 -04:00
docker-compose.yml first commit 2025-03-17 11:17:30 -04:00
Dockerfile first commit 2025-03-17 11:17:30 -04:00
index.js first commit 2025-03-17 11:17:30 -04:00
package-lock.json first commit 2025-03-17 11:17:30 -04:00
package.json first commit 2025-03-17 11:17:30 -04:00
readme.md first commit 2025-03-17 11:17:30 -04:00

Discord Kavita Reader

A Discord bot that integrates with your Kavita server, allowing you to browse and read content directly within Discord.

Features

  • Search your Kavita library
  • Browse and read PDF, EPUB, and CBZ files
  • Automatically move to the next chapter
  • View library information

ToDo

  • Extract Images from epub files
  • Add progress sync
  • Improve PDF support

Prerequisites

  • Node.js or docker
  • Discord Bot Token
  • A Kavita server
  • Kavita OPDS URL

Setup

Using Docker

  1. Create a config.json file from the config-example.json file.

  2. Run the Docker container:

    docker run -d --name kavita-discord-reader -v $(pwd)/config.json:/app/config.json 0xgingi/kavita-discord-reader:latest
    

Using Docker Compose

  1. Clone this repository:

    git clone https://github.com/0xgingi/kavita-discord-reader.git
    cd kavita-discord-reader
    
  2. Create a config.json from the config-example.json file.

  3. Run with Docker Compose:

    docker-compose up -d
    

Using Node.js

  1. Clone this repository:

    git clone https://github.com/0xgingi/kavita-discord-reader.git
    cd kavita-discord-reader
    
  2. Install dependencies:

    npm install
    
  3. Create a config.json file in the project root with the following structure:

    {
      "discord": {
        "token": "YOUR_DISCORD_BOT_TOKEN",
        "clientId": "YOUR_DISCORD_CLIENT_ID"
      },
      "kavita": {
        "baseUrl": "https://your-kavita-server.com",
        "opdsUrl": "https://your-kavita-server.com/api/opds/YOUR_API_KEY"
      }
    }
    
  4. Start the bot:

    node index.js
    

Commands

The bot provides the following slash commands:

  • /kavita-libraries - Lists all available libraries
  • /kavita-search [query] - Searches for series by name
  • /kavita-read [series_id] [chapter_id] - Reads a specific chapter by ID