KoboHighlights is a web application designed to extract and display highlights from the KoboReader.sqlite file and send them to Notion.
- 📚 Table of Contents
- 📖 Description
- ✨ Features
- ⚙️ Installation
- 🚀 Usage
- 🐳 Docker Usage
- ☁️ Deploy on Vercel / Netlify
- 🔮 Future Plans
- 🤝 Contributing
- ☕ Supporting The Project
- 📜 License
This project enables users to upload their KoboReader.sqlite file and view a list of books with highlights and the highlights themselves. Users can also send these highlights to Notion.
- Extract highlights from KoboReader.sqlite file
- Display highlights in a user-friendly interface
- Send highlights to Notion
- Save highlights to local storage for offline access
- Multi-language support (English and Turkish)
- Docker support for easy deployment
- Responsive UI
To run the project locally, follow these steps:
- Node.js (>=14.x)
- pnpm package manager
- Docker (optional)
-
Clone the repository:
git clone https://github.com/TaylanTatli/kobohighlights.git cd kobohighlights
-
Install dependencies:
pnpm install
-
(Optional) Create a
.env
file in the root directory and add your environment variables:NEXT_PUBLIC_NOTION_PAGE_ID=your_notion_page_id NEXT_PUBLIC_NOTION_API_KEY=your_notion_api_key
This is only necessary if you want to predefine your page ID and API key. If you don't create this file, you will need to enter your page ID and API key when you send highlights to Notion. These values will be saved to local storage for next time.
-
Start the development server:
pnpm run dev
- Open your browser and navigate to
http://localhost:3000
. - Upload your
KoboReader.sqlite
file. - View the list of books and their highlights.
- Optionally, send highlights to Notion by entering your Notion Page ID and API Key, or download them to your PC.
To run the project using Docker, follow these steps:
-
Build the Docker image:
docker build -t kobohighlights .
-
Start the Docker container:
docker run -p 3000:3000 kobohighlights
-
Open your browser and navigate to
http://localhost:3000
.
You can deploy this project to Vercel or Netlify by clicking the buttons below:
- Improve the user interface and user experience
- Add more export options (e.g., PDF)
Contributions are welcome! Please open an issue or submit a pull request.
If you like the project and want to support me, You can
This project is licensed under the MIT License. See the LICENSE file for details.