Skip to content

Library that envelopes API calls for use a Notion Database as Headless CMS. Recover and process metadata for both list and consume pages

License

Notifications You must be signed in to change notification settings

CNTRS/notion-headless-cms

Repository files navigation

Notion Headles CMS

From Notion to the static website


📖 Table of Contents


📍 Overview

Notion API library focused on retrieve database pages as a Headless CMS (like Strapi, Storyblok, Sanity ...) In addition to API calls, process some Notion content blocks for an easily rendering with whatever tech stack you want


📦 Features

  • Simple methods for list pages metadata, retrieve page metadata with content, or recover all pages with its content
  • Works with both public and private Notion content
  • Example script available which shows how to export Notion content to json file

📂 Repository Structure

└── notion-headless-cms/
    ├── .eslintignore
    ├── .eslintrc.cjs
    ├── .gitignore
    ├── .vscode/
    │   ├── extensions.json
    │   └── settings.json
    ├── LICENSE
    ├── examples/
    │   └── fetch-and-store.ts
    ├── package.json
    ├── pnpm-lock.yaml
    ├── src/
    │   ├── cms.test.ts
    │   ├── cms.ts
    │   ├── helpers.mocks.ts
    │   ├── helpers.test.ts
    │   ├── helpers.ts
    │   ├── main.ts
    │   └── vite-env.d.ts
    ├── tsconfig.json
    └── vite.config.ts

⚙️ Tech Stack

  • Node.js v18
  • ESLint + Prettier
  • Typescript v5
  • Vite + Vitest, for compile and testing
  • Image Size, for process images block metadata and obtain type and measures

📄 License

This project is licensed under the ℹ️ MIT License. See the LICENSE file for additional info.

Free Software, Hell Yeah!

About

Library that envelopes API calls for use a Notion Database as Headless CMS. Recover and process metadata for both list and consume pages

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published