{"id":19165230,"url":"https://github.com/cadedupont/notion-bookshelf","last_synced_at":"2026-05-12T12:39:16.912Z","repository":{"id":219838669,"uuid":"744744445","full_name":"cadedupont/notion-bookshelf","owner":"cadedupont","description":"JavaScript application for adding books I'm currently reading to a Notion database","archived":false,"fork":false,"pushed_at":"2024-01-29T23:18:47.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-22T23:14:43.981Z","etag":null,"topics":["bookshelf","google-books-api","javascript","notion","notion-api","notion-database"],"latest_commit_sha":null,"homepage":"http://cadedupont.com/notion-bookshelf/","language":"JavaScript","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/cadedupont.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2024-01-17T23:16:22.000Z","updated_at":"2024-01-30T14:50:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"7bb3fd61-459a-4477-9b2b-a0df3c09c234","html_url":"https://github.com/cadedupont/notion-bookshelf","commit_stats":null,"previous_names":["cadedupont/notion-bookshelf"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cadedupont/notion-bookshelf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cadedupont%2Fnotion-bookshelf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cadedupont%2Fnotion-bookshelf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cadedupont%2Fnotion-bookshelf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cadedupont%2Fnotion-bookshelf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cadedupont","download_url":"https://codeload.github.com/cadedupont/notion-bookshelf/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cadedupont%2Fnotion-bookshelf/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32940101,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-12T09:19:52.626Z","status":"ssl_error","status_checked_at":"2026-05-12T09:17:33.438Z","response_time":102,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["bookshelf","google-books-api","javascript","notion","notion-api","notion-database"],"created_at":"2024-11-09T09:27:03.702Z","updated_at":"2026-05-12T12:39:16.895Z","avatar_url":"https://github.com/cadedupont.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Notion Bookshelf\n\nJavaScript application to search Google Books API by book title and save the rest of the book information to a Notion database.\n\n## Prerequisites\n\n- [Node.js](https://nodejs.org/en/)\n- [npm](https://www.npmjs.com/)\n- [Google Books API](https://developers.google.com/books/docs/v1/using) key\n- [Notion API](https://developers.notion.com/) key\n- Notion [account](https://www.notion.so/) and [database](https://www.notion.so/help/guides/creating-a-database)\n\n## Downloading the Project\n\nEither clone this repository by running the below command in your machine's terminal or download the source code as a ZIP.\n\n```bash\n$ git clone https://github.com/cadedupont/notion-bookshelf.git\n```\n\nNavigate to the root directory of the project:\n\n```bash\n$ cd /path/to/notion-bookshelf\n```\n\n## Setting Up API Keys\n\nOnce you have the source code, you will need to create a `.env` file in the root directory of the project. A `.env.example` file has been provided as a template with the following contents:\n\n```bash\nNOTION_TOKEN='your_key_here'\nNOTION_DATABASE_ID='your_key_here'\nGOOGLE_BOOKS_API_KEY='your_key_here'\n```\n\nReplace every instance of `your_key_here` with the appropriate value in your `.env` file.\n\n### Notion API Key\n\nTo get your Notion API key, go to [https://www.notion.so/my-integrations](https://www.notion.so/my-integrations) and click the `New integration` button. Give your integration a name and click `Submit`. You will then be provided with a `Internal Integration Token` that you can use as your `NOTION_TOKEN` value.\n\n### Notion Database ID\n\nTo get your Notion database ID, go to the Notion page containing the database you want to use. Click the `...` button in the top right corner of the database, click `Copy link to view` near the bottom of the dropdown menu, and paste the link into your browser's address bar. The link will look something like this:\n\n```bash\nhttps://www.notion.so/1234567890abcdef1234567890abcdef?v=9876543210fedcba9876543210fedcba\n```\n\nThe value before the `?v=` is your database ID. You can use this value as your `NOTION_DATABASE_ID` value. In this example, the database ID is `1234567890abcdef1234567890abcdef`.\n\nYou will also need to add your Notion integration to the database. To do this, click the `...` button in the top right corner of the page, click `Add connections` near the bottom of the dropdown menu, navigate to the name of your integration you chose earlier, and click it. You will be prompted for confirmation that this integration can access your page and its child pages. Click `Confirm`.\n\n### Google Books API Key\n\nTo get your Google Books API key, go [https://console.cloud.google.com/apis/credentials](https://console.cloud.google.com/apis/credentials) and click the `Create Credentials` button. Select `API Key` from the dropdown menu. You will then be provided with a string of characters that you can use as your `GOOGLE_BOOKS_API_KEY` value.\n\n## Installing Dependencies\n\nOnce you have your API keys set up, you can install the project's dependencies by running the following command in your terminal:\n\n```bash\n$ npm install\n```\n\n## Running the Application\n\nOnce you install the requried dependencies, you are set to run the application. Run the following command in your terminal:\n\n```bash\n$ node notion-bookshelf.js '\u003cbook_title\u003e'\n```\n\nReplace `\u003cbook_title\u003e` with the title of the book you want to search for. The application will then search the Google Books API for the book title and save the book information to your Notion database.\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcadedupont%2Fnotion-bookshelf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcadedupont%2Fnotion-bookshelf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcadedupont%2Fnotion-bookshelf/lists"}