You've read books. They're on your bookshelf or Kindle. Maybe you've logged them in GoodReads. Unfortunately, GoodReads doesn't have an official API. But alternatives do, such as Google, Hardcover, Open Library, etc. This monorepo provides Effect-based clients for programmatic access to book metadata APIs.
| Package | Version | Description |
|---|---|---|
| @book-effect/core | Platform-agnostic types and abstractions | |
| @book-effect/hardcover | Hardcover GraphQL API client | |
| @book-effect/open-library | Open Library REST API client | |
| @book-effect/google-books | Google Books REST API client |
# Install dependencies
pnpm install
# Build all packages
nx run-many -t build
# Build a specific package
nx build coreReleases are fully automated via GitHub Actions when commits are pushed to
main. The workflow uses NX Release with conventional
commits to determine version bumps:
| Commit prefix | Version bump |
|---|---|
feat: |
Minor |
fix: |
Patch |
BREAKING CHANGE |
Major |
On each push to main, the release workflow will:
- Analyze commits since the last release
- Bump package versions accordingly
- Update
CHANGELOG.md - Create a git tag and GitHub Release
- Publish packages to npm