Transform your old booklists into a dynamic Notion database with the Booklist Import Tool. Organize, share, and rediscover your reading history with the help of cutting-edge language models.
As an avid reader, I've accumulated a substantial list of books over the years, categorizing them by what I wanted to read, what I had completed, and the type of books they are. With an intention to share my reading journey more publicly and to organize my collection with greater sophistication, I've chosen Notion as the platform for its unparalleled ability to present, store, and share information. On top of being a pleasure to look at, Notion pages are easy to share, publish, modify, and update, and has robust API support for people with more technical inclination. Not sponsored, btw.
Original booklist in PDF format prior to using the Booklist Import Tool, lacking Notion's interactive features.
Transformed into a dynamic Notion database, offering categorization, tagging, and reading status updates for a richer reading management experience.
To get started with BookBridge, follow these simple installation instructions.
- Python 3.7 or higher
- Pip (Python package installer)
-
Clone this repository to your local machine using:
git clone https://github.com/yourusername/bookbridge.git
-
Navigate to the cloned directory:
cd bookbridge
-
Create a virtual environment in the current directory by running:
# For macOS and Linux: python3 -m venv venv # For Windows: python -m venv venv
This will create a new directory named
venv
in your project directory, containing the virtual environment. It's a good practice to use a virtual environment for Python projects to manage dependencies separately for each project and avoid conflicts between project requirements. -
Activate the virtual environment:
# For macOS and Linux: source venv/bin/activate # For Windows: .\venv\Scripts\activate
Once activated, your terminal should show the name of the virtual environment (in this case,
venv
), indicating that any Python or pip commands will now use the virtual environment's Python interpreter and installed packages. -
It's a good practice to ensure that pip, setuptools, and wheel are up to date within the virtual environment:
pip install --upgrade pip setuptools wheel
-
Install the required dependencies:
pip install -r requirements.txt
This will install all the necessary packages specified in the
requirements.txt
file into the virtual environment.
By following these steps, users will set up a virtual environment for the project, ensuring that all dependencies are installed l
- Clone this repository to your local machine using:
git clone https://github.com/yourusername/bookbridge.git
- Navigate to the cloned directory:
cd bookbridge
- upgrade pip if you haven't already
- Install the required dependencies:
pip install -r requirements.txt
To use BookBridge to import your booklist into a Notion database, follow these steps:
- Obtain an integration token from Notion by creating a new integration. Make sure your Notion page has given access to the integration.
- Obtain an API key from OpenAI to use LLMs. This iteration uses
gpt-4o
. - Obtain the URL of the Notion page you want to import the booklist into. If you're new to Notion, the getting started page is a good place to begin.
- Run the tool using the command:
python bookbridge.py
- Input the required information in the interface and click "Run Script". If you entered the information correctly, you should see a new database under the page you specified in a few seconds!
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
K. Simon Chuang - keenlyschuang@gmail.com
Project Link: https://github.com/keenlychuang/bookbridge