{"id":19489980,"url":"https://github.com/taylantatli/kobohighlights","last_synced_at":"2025-04-25T19:30:57.087Z","repository":{"id":259488113,"uuid":"867784498","full_name":"TaylanTatli/KoboHighlights","owner":"TaylanTatli","description":"Extract and display highlights from KoboReader.sqlite file and send them to Notion.","archived":false,"fork":false,"pushed_at":"2024-10-24T16:30:51.000Z","size":855,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-25T23:16:46.617Z","etag":null,"topics":["annotations","ereader","highlights","kobo"],"latest_commit_sha":null,"homepage":"https://highlights.tatli.me","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TaylanTatli.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"buy_me_a_coffee":"taylantatli"}},"created_at":"2024-10-04T18:01:01.000Z","updated_at":"2024-10-24T16:30:55.000Z","dependencies_parsed_at":"2024-10-25T23:47:46.216Z","dependency_job_id":"432831b7-eb01-4d48-8770-3675007baa22","html_url":"https://github.com/TaylanTatli/KoboHighlights","commit_stats":null,"previous_names":["taylantatli/kobohighlights"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TaylanTatli%2FKoboHighlights","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TaylanTatli%2FKoboHighlights/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TaylanTatli%2FKoboHighlights/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TaylanTatli%2FKoboHighlights/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TaylanTatli","download_url":"https://codeload.github.com/TaylanTatli/KoboHighlights/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224014258,"owners_count":17241281,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["annotations","ereader","highlights","kobo"],"created_at":"2024-11-10T21:10:38.351Z","updated_at":"2024-11-10T21:10:39.651Z","avatar_url":"https://github.com/TaylanTatli.png","language":"TypeScript","funding_links":["https://buymeacoffee.com/taylantatli","https://www.buymeacoffee.com/taylantatli"],"categories":[],"sub_categories":[],"readme":"# ![KoboHighlights Logo](./.github/assets/logo.svg#gh-light-mode-only) ![KoboHighlights Logo](./.github/assets/logo-dark.svg#gh-dark-mode-only)\n\nKoboHighlights is a web application designed to extract and display highlights from the KoboReader.sqlite file and send them to Notion.\n\n![KoboHighlights Preview](./.github/assets/preview.png)\n\n## :books: Table of Contents\n\n- [:books: Table of Contents](#books-table-of-contents)\n- [:book: Description](#book-description)\n- [:sparkles: Features](#sparkles-features)\n- [:gear: Installation](#gear-installation)\n  - [:clipboard: Requirements](#clipboard-requirements)\n  - [:hammer\\_and\\_wrench: Steps](#hammer_and_wrench-steps)\n- [:rocket: Usage](#rocket-usage)\n- [:whale: Docker Usage](#whale-docker-usage)\n- [:cloud: Deploy on Vercel / Netlify](#cloud-deploy-on-vercel--netlify)\n- [:crystal\\_ball: Future Plans](#crystal_ball-future-plans)\n- [:handshake: Contributing](#handshake-contributing)\n- [:coffee: Supporting The Project](#coffee-supporting-the-project)\n- [:scroll: License](#scroll-license)\n\n## :book: Description\n\nThis 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.\n\n## :sparkles: Features\n\n- Extract highlights from KoboReader.sqlite file\n- Display highlights in a user-friendly interface\n- Send highlights to Notion\n- Save highlights to local storage for offline access\n- Multi-language support (English and Turkish)\n- Docker support for easy deployment\n- Responsive UI\n\n## :gear: Installation\n\nTo run the project locally, follow these steps:\n\n### :clipboard: Requirements\n\n- Node.js (\u003e=14.x)\n- pnpm package manager\n- Docker (optional)\n\n### :hammer_and_wrench: Steps\n\n1. Clone the repository:\n\n    ```sh\n    git clone https://github.com/TaylanTatli/kobohighlights.git\n    cd kobohighlights\n    ```\n\n2. Install dependencies:\n\n    ```sh\n    pnpm install\n    ```\n\n3. (Optional) Create a `.env` file in the root directory and add your environment variables:\n\n    ```sh\n    NEXT_PUBLIC_NOTION_PAGE_ID=your_notion_page_id\n    NEXT_PUBLIC_NOTION_API_KEY=your_notion_api_key\n    ```\n\n    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.\n\n4. Start the development server:\n\n    ```sh\n    pnpm run dev\n    ```\n\n## :rocket: Usage\n\n1. Open your browser and navigate to `http://localhost:3000`.\n2. Upload your `KoboReader.sqlite` file.\n3. View the list of books and their highlights.\n4. Optionally, send highlights to Notion by entering your Notion Page ID and API Key, or download them to your PC.\n\n## :whale: Docker Usage\n\nTo run the project using Docker, follow these steps:\n\n1. Build the Docker image:\n\n    ```sh\n    docker build -t kobohighlights .\n    ```\n\n2. Start the Docker container:\n\n    ```sh\n    docker run -p 3000:3000 kobohighlights\n    ```\n\n3. Open your browser and navigate to `http://localhost:3000`.\n\n## :cloud: Deploy on Vercel / Netlify\n\nYou can deploy this project to Vercel or Netlify by clicking the buttons below:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/import/project?template=https://github.com/TaylanTatli/KoboHighlights)\n[![Deploy with Netlify](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/TaylanTatli/KoboHighlights)\n\n## :crystal_ball: Future Plans\n\n- Improve the user interface and user experience\n- Add more export options (e.g., PDF)\n\n## :handshake: Contributing\n\nContributions are welcome! Please open an issue or submit a pull request.\n\n## :coffee: Supporting The Project\n\nIf you like the project and want to support me, You can \u003ca href=\"https://www.buymeacoffee.com/taylantatli\" target=\"_blank\"\u003e\u003cimg src=\"https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png\" alt=\"Buy Me A Coffee\" style=\"height: 30px;width: auto;vertical-align: middle;\" \u003e\u003c/a\u003e\n\n## :scroll: License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaylantatli%2Fkobohighlights","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftaylantatli%2Fkobohighlights","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaylantatli%2Fkobohighlights/lists"}