🌍 *简体中文 ∙ 繁體中文∙ Русский∙ Português∙ 한국어∙ 日本語∙ Bahasa Indonesia∙ Français∙ Deutsch
- 🌈 Import books and display the book list efficiently.
- 💅 Create collections, such as a collection of sci-fi novels or martial arts novels.
- 🚀 Multi-dimensional display, show book list by title, author, rating, collection, tags, etc.
- 🛡 Search for books using any keyword, such as title, author, or publisher.
- 📦 Download books, either through right-click context menu or by downloading all books managed by the platform.
- 🛡 Book reading, the platform supports a book reading feature.
- 📦 Backup function, the platform uses
sqlite3
for the database and stores all books in a designated directory, making it easy to backup. - 🎻 Import highlighted notes automatically when connecting the computer to
kindle
. - 📣 Import highlighted notes from the
静读天下apk
(Jing Du Tian Xia) on Android devices. - 🎺 Highlighted notes, supports
secondary highlighting
andsecondary highlighting deletion
for imported notes. - 🥁 Add comments to highlighted notes.
- 🎻 Create collections for highlighted notes and manage them categorically.
- 🚀 Kindle Vocabulary Builder, the platform supports importing books, words, and examples from the kindle vocabulary builder.
Currently only adapted for the mac
platform, there may be unknown errors when running on the windows
platform.
mobi and azw3. Other types of eBooks will be automatically ignored during import.
After downloading thousands of eBooks from the internet, how do you efficiently manage them?
The quality of various eBooks varies greatly, some written by ordinary authors and others by world-renowned writers. There are also many different genres, such as sci-fi, romance, fantasy, and more.
If you have to search for a book in a directory containing thousands of books each time, it's headache-inducing. Therefore, it's necessary to manage these eBooks in an appropriate way, allowing us to search for books within a smaller range based on specific preferences, quickly find the desired book, and avoid wasting too much time on searching.
lazykindler
is born for this purpose.
Click the Upload File
button, and the platform will recursively scan supported eBook files in directories like ~/Download
, ~/下载
, ~/Desktop
, ~/桌面
, etc. Duplicate files will not be uploaded again.
Currently, only mobi
and azw3
formats are supported for import, and the platform does not provide an eBook format conversion feature. It's easy to find eBooks in specific formats; I usually find them on this website: http://www.fast8.com. The advantage of this site is that it offers a wide selection of books, and multiple format options are available when downloading. Simply download the books in the desired format.
You can modify the book's rating, tags, collection, author, publisher, and cover. Note that these operations will not actually modify the book file itself but will add records to the database.
After importing eBooks, the platform will automatically extract data from the eBook files for information display and book management.
You can create collections of books, such as Science Fiction Collection
, Fantasy Novel Collection
, Romance Novel Collection
, and so on. Add representative covers to the collections you like, and you can rate
and add tags
to the collections. Each collection can have books selected and added from the library, and you can also rate, add tags, and add covers to the collections. Once you have multiple collections, you can search for books directly from these collections in the future.
To support displaying books from different dimensions, you can rate
and add tags
to books, as well as modify authors
and modify publishers
. Books can be displayed from various dimensions such as rating
, tags
, author
, and publisher
. Additionally, you can modify the book cover
.
Books in the platform can be downloaded by clicking the Download
button in the Operation
section of the book card. The downloaded books will be saved in the user's home directory under Download
or 下载
. Clicking Download All Books
on the homepage will download all books to the Documents
or 文稿
folder under the lazykindler
directory in the user's home directory. Clicking Download All Books
multiple times will not re-download existing books.
The platform provides basic functions for reading books. Currently, I have not found a library to implement reading mobi
and azw3
formats using reactjs
. Therefore, when clicking the Read Book
button for the first time, the platform will convert these two formats to epub
format. The tool used for conversion is /Applications/calibre.app/Contents/MacOS/ebook-convert
, so the computer needs to have calibre
installed to use the book reading function properly. The conversion is only required the first time you click Read Book
. The page may become unresponsive for a short period, which is normal. The waiting time depends on the size of the e-book, but it's usually fast. Converted books are stored in the backend/data
directory of the main platform.
The books displayed on the Books -> Library
page are officially stored books, while newly imported books are displayed on the Books -> Temporary
page. (Other than the difference in page locations, there is not much difference between official and temporary books in the backend).
After a temporary
book is added to any collection, it will be moved from Books -> Temporary
to Books -> Library
. The purpose of this is to distinguish between officially stored books and temporarily imported books. Officially stored books have been filtered, unwanted books removed, and categorized, while temporarily imported books tend to be diverse.
The database used is sqlite3
, located at backend/lazykindler.db
.
When the platform is first launched, the database file will be automatically created and initialized. This file contains all data information in the platform except for the books. Imported books are copied to the backend/data
directory. Note that for easier internal platform operation, the book names in the backend/data
directory are appended with the book's md5
value.
To back up all books and data in the platform, simply save backend/lazykindler.db
and backend/data
. To start the service in another location next time, copy backend/lazykindler.db
and backend/data
to the corresponding positions.
This feature is currently only supported on the Mac platform.
The platform will automatically detect whether the kindle
is connected. When the kindle
is connected to the computer, the platform will import the My Clippings.txt
file from the kindle
for unified management and multi-dimensional display. When the kindle
's My Clippings.txt
file changes, the platform will automatically import the newly added content in My Clippings.txt
, and the old data will not be imported repeatedly. Users can see the newly added content by refreshing the page after connecting the kindle
to the computer.
It should be noted that the kindle
processes the user-added highlight notes into a chunk of text without line breaks, even if it is the content of multiple paragraphs. lazykindler
cleverly recognizes and processes line breaks when importing the kindle
's My Clippings.txt
file, as shown below.
Highlighted notes are part of the text or related paragraphs that we highlight and record when reading a book, often because a sentence or a word in it has a certain impact on us. After importing the highlighted notes into the platform, it is necessary to highlight the sentences or words that resonated with you at that time during the subsequent sorting process, making it easier to highlight and display that small section of text that resonated with you.
Using lazykindler
, you can easily perform secondary highlighting. Just select the relevant text and click OK
in the automatically popped-up dialog box.
You can record some thoughts about the text that resonated with you.
Jingdu Tianxia apk
is a popular reader on the Android platform. I currently use this software to read books on Hisense e-reader, and the software also supports adding highlighted notes. So I added support for importing highlighted notes from this software.
The format of the highlighted notes file exported from Jingdu Tianxia apk
is .mrexpt
. Place this file in any directory such as ~/Download
, ~/下载
, ~/Desktop
, ~/桌面
, etc., and the platform can automatically complete the import operation.
Vocabulary Builder is a feature in Kindle that records words or phrases looked up while reading a book. This method can be used to read English original books and record words, which can be used for learning and reviewing these words later. The platform supports importing these vocabularies.
Based on importing these vocabularies, the platform provides a good interface for displaying this information, and you can manually create vocabulary and examples, as well as add translations to examples.
python 3.10.4
nodejs v19.6.0
Calibre
Other versions are untested
- Execute in
backend
directory
pip3 install -r requirements.txt
-
If you need to use the
chatgpt
feature, please configure thechatgpt
key inbackend/config.ini
. The address to generate the key on the OpenAi official website ishttps://platform.openai.com/account/api-keys
. -
Execute in
frontend
directory
yarn install
./start.sh
Then visit http://localhost:8000 in your browser
./stop.sh
The platform is designed for individuals and does not have features like login and registration.
Below are screenshots of my local setup after uploading books and configuring collections
The most famous tool for kindle
should be calibre
, but the functionality of this software is more focused on "editing", and the multi-dimensional display of ebooks is relatively simple. Therefore, I plan to write a tool specifically for managing ebooks that meets practical needs.
Currently, I am developing this tool in my spare time. If you also like reading ebooks and have suggestions for ebook management features, feel free to raise an issue.
If you have any issues or feature requests, please contact the author, email: wupengcn301@gmail.com, WeChat: leowucn. Thank you.